Node:Preprocessing directives implementation, Next:Library functions implementation, Previous:Qualifiers implementation, Up:C Implementation

### Preprocessing directives

- How sequences in both forms of header names are mapped to headers or external source file names (6.4.7).
- Whether the value of a character constant in a constant expression that controls conditional inclusion matches the value of the same character constant in the execution character set (6.10.1).
- Whether the value of a single-character character constant in a constant expression that controls conditional inclusion may have a negative value (6.10.1).
- The places that are searched for an included `<>` delimited header, and how the places are specified or the header is identified (6.10.2).
- How the named source file is searched for in an included `""` delimited header (6.10.2).
- The method by which preprocessing tokens (possibly resulting from macro expansion) in a `#include` directive are combined into a header name (6.10.2).
- The nesting limit for `#include` processing (6.10.2).

  GCC imposes a limit of 200 nested `#include`s.

- Whether the `#` operator inserts a `\` character before the `\` character that begins a universal character name in a character constant or string literal (6.10.3.2).
- The behavior on each recognized non-`STDC #pragma` directive (6.10.6).
- The definitions for `__DATE__` and `__TIME__` when respectively, the date and time of translation are not available (6.10.8).

  If the date and time are not available, `__DATE__` expands to `"??? ?? ????"` and `__TIME__` expands to `"??:??:??"`.