5.7.8.2 d: Preprocessor Debugging Dumps Option

The -dletters option has the preprocessor produce debugging dumps during compilation as specified by letters. This option should be used in conjunction with the -E option.

The -dM option generates a list of #define directives for all the macros defined during the execution of the preprocessor, including predefined macros. These will indicate the replacement string if one was defined. For example, the output might include:
#define _CP0_BCS_TAGLO(c,s) _bcsc0(_CP0_TAGLO, _CP0_TAGLO_SELECT, c, s)
#define PORTE PORTE
#define _LATE_LATE1_LENGTH 0x00000001
#define _IPC22_w_POSITION 0x00000000
You can use this option to show those macros which are predefined by the compiler or header files.

The acceptable letter arguments to -d are tabulated below.

Table 5-15. Preprocessor Debugging Information
Letter Produces
D Similar output to -dM but lacking predefined macros. The normal preprocessor output is also included in this output.
M Full macro output, as described in the main text before this table.
N Similar output to -dD but only the macro names are output with each definition.