cpp: Traditional miscellany

1 
1 10.3 Traditional miscellany
1 ===========================
1 
1 Here are some things to be aware of when using the traditional
1 preprocessor.
1 
1    * Preprocessing directives are recognized only when their leading '#'
1      appears in the first column.  There can be no whitespace between
1      the beginning of the line and the '#', but whitespace can follow
1      the '#'.
1 
1    * A true traditional C preprocessor does not recognize '#error' or
1      '#pragma', and may not recognize '#elif'.  CPP supports all the
1      directives in traditional mode that it supports in ISO mode,
1      including extensions, with the exception that the effects of
1      '#pragma GCC poison' are undefined.
1 
1    * __STDC__ is not defined.
1 
1    * If you use digraphs the behavior is undefined.
1 
1    * If a line that looks like a directive appears within macro
1      arguments, the behavior is undefined.
1