C2x, 6.10.2 Source file inclusion, Semantics, 2 (emphasis added):
A preprocessing directive of the form
# include " q-char-sequence " new-line
causes the replacement of that directive by the entire contents of the source file identified by the specified sequence between the " delimiters.
C2x, 6.4.7 Header names, Syntax, 1:
header-name: < h-char-sequence > " q-char-sequence "
If q-char-sequence
is about source file, then why the grammar doesn't have source-file-name
?
Meaning that per grammar "x.c"
, "x.h"
, <x.c>
, and <x.h>
are all header-name
. A bit confused.