cpp.info: Output

Go forward to Invocation
Go backward to Other Directives
Go up to Top
Go to the top op cpp

C Preprocessor Output

   The output from the C preprocessor looks much like the input, except
that all preprocessing directive lines have been replaced with blank
lines and all comments with spaces.  Whitespace within a line is not
altered; however, unless `-traditional' is used, spaces may be inserted
into the expansions of macro calls to prevent tokens from being
concatenated.
   Source file name and line number information is conveyed by lines of
the form
     # LINENUM FILENAME FLAGS
which are inserted as needed into the middle of the input (but never
within a string or character constant).  Such a line means that the
following line originated in file FILENAME at line LINENUM.
   After the file name comes zero or more flags, which are `1', `2',
`3', or `4'.  If there are multiple flags, spaces separate them.  Here
is what the flags mean:
`1'
     This indicates the start of a new file.
`2'
     This indicates returning to a file (after having included another
     file).
`3'
     This indicates that the following text comes from a system header
     file, so certain warnings should be suppressed.
`4'
     This indicates that the following text should be treated as C.