Each of GHC's command line options is classified as either static or dynamic or mode:
There may be only a single mode flag on the command line. The
available modes are listed in Section 4.4, “Modes of operation”.
Most non-mode flags fall into this category. A dynamic flag
may be used on the command line, in a
GHC_OPTIONS pragma in a source file, or set
:set in GHCi.
A few flags are "static", which means they can only be used on the command-line, and remain in force over the entire GHC/GHCi run.
The flag reference tables (Section 4.17, “Flag reference”) lists the status of each flag.