N2479 C17..C2x working draft — February 5, 2020 ISO/IEC 9899:202x (E):
6.10.2 Source file inclusion
The implementation shall provide unique mappings for sequences consisting of one or more nondigits or digits (6.4.2.1) followed by a period (.) and a single nondigit. The first character shall not be a digit.
Question: what is the rationale behind not allowing argument (char-sequence) of the #include directive to begin with a digit?
Extra question: compilers seem to not generate any diagnostic message when the shall requirement above is violated (ex. use of #include "1.h"). Why?
UPD. Later my colleague answered: the The first character shall not be a digit is related only to unique mappings. So, the standard was misinterpreted.