5.7.2.2 E: Preprocess Only

The -E option is used to generate preprocessed C/C++ source files (also called modules or translation units).

The preprocessed output is printed to stdout, but you can use the -o option to redirect this to a file.

You might check the preprocessed source files to ensure that preprocessor macros have expanded to what you think they should. The option can also be used to create C/C++ source files that do not require any separate header files. This is useful when sending files to a colleague or to obtain technical support without sending all the header files, which can reside in many directories.