This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 118c. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.
2025-10-11
(From submission #766.)
Macro definitions for keywords are prohibited by 15.7.1 [cpp.replace.general] paragraph 9. More limited restrictions in 15.5 [cpp.module] paragraph 1 and 15.6 [cpp.import] paragraph 1 are redundant.
Proposed resolution (approved by CWG 2025-09-26):
Remove 15.5 [cpp.module] paragraph 1:
A pp-module shall not appear in a context where module or (if it is the first preprocessing token of the pp-module) export is an identifier defined as an object-like macro.
Remove 15.6 [cpp.import] paragraph 1:
A pp-import shall not appear in a context where import or (if it is the first preprocessing token of the pp-import) export is an identifier defined as an object-like macro.