-include<file>
Include the contents of <file> before other files.
-imacros<file>
Accept definition of macros in <file>.
-iprefix<path>
Specify <path> as a prefix for next two options.
-iwithprefix<dir>
Add <dir> to the end of the system include path.
-iwithprefixbefore<dir>
Add <dir> to the end of the main include path.
-isystem<dir>
Add <dir> to the start of the system include path.
-idirafter<dir>
Add <dir> to the end of the system include path.
-I<dir>
Add <dir> to the end of the main include path.
-I- Fine-grained include path control; see info docs.
-nostdinc
Do not search system include directories (dirs specified with -isystem will still be used).
-nostdinc++
Do not search system include directories for C++.
-o<file>
Put output into <file>.
-pedantic
Issue all warnings demanded by strict ISO C.
-pedantic-errors
Issue -pedantic warnings as errors instead.
-trigraphs
Support ISO C trigraphs.
-lang-c
Assume that the input sources are in C.
-lang-c89
Assume that the input sources are in C89.
-lang-c++
Assume that the input sources are in C++.
-lang-objc
Assume that the input sources are in ObjectiveC.
-lang-objc++
Assume that the input sources are in ObjectiveC++.
-lang-asm
Assume that the input sources are in assembler.
-std=<stdname>
Specify the conformance standard; one of: gnu89, gnu99, c89, c99, iso9899:1990, iso9899:199409,
iso9899:1999
-+ Allow parsing of C++ style features.
-w Inhibit warning messages.
-Wtrigraphs
Warn if trigraphs are encountered.
-Wno-trigraphs
Do not warn about trigraphs.
-Wcomment{s}
Warn if one comment starts inside another.
-Wno-comment{s}
Do not warn about comments.
-Wtraditional
Warn about features not present in traditional C;
-Wno-traditional
Do not warn about traditional C;
-Wundef
Warn if an undefined macro is used by #if.
-Wno-undef
Do not warn about testing undefined macros.
-Wimport
Warn about the use of the #import directive.
-Wno-import
Do not warn about the use of #import.
-Werror
Treat all warnings as errors.
-Wno-error
Do not treat warnings as errors.
-Wsystem-headers
Do not suppress warnings from system headers.
-Wno-system-headers
Suppress warnings from system headers.
-Wall Enable all preprocessor warnings.
-M Generate make dependencies.
-MM As -M , but ignore system header files.
-MF<file>
Write dependency output to the given file.
-MG Treat missing header file as generated files.
-MP Generate phony targets for all headers.
-MQ<target>
Add a MAKE-quoted target.
-MT<target>
Add an unquoted target.
-D<macro>
Define a <macro> with string '1' as its value.
-D<macro>=<val>
Define a <macro> with <val> as its value.
-A<question>(<answer>)
Assert the <answer> to <question>.
-A-<question>(<answer>)
Disable <answer> to <question>.
-U<macro>
Undefine <macro>.
-H Print the name of header files as they are used.
-C Do not discard comments.
-dM Display a list of macro definitions active at end.
-dD Preserve macro definitions in output.
-dN As -dD except that only the names are preserved.
-dI Include #include directives in the output.
-fpreprocessed
Treat the input file as already preprocessed.
-ftabstop=<number>
Distance between tab stops for column reporting.
-P Do not generate #line directives.
-$ Do not allow '$' in identifiers.
-remap Remap file names when including files.
-vor--version
Display the version number.
-hor--help
Show summary of options.