Everything
2.6.4 Dependence between options

The behavior of the following options varies depending on what other options are specified.

-preprocess

This option will be invalid if the -P option is not specified at the same time.

At this time, a warning will not be output.

-o

If the -P, -S, or -c option is specified at the same time, then the generated file types will be a preprocessed file, assembly source file, or object file.

-g

If the -O option is specified at the same time, debug information may not be output in source line units due to optimization effects.

-Oinline_level

If this option is specified at the same time with the -merge_files option, inline expansion may be performed between files.