https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114461

--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Perhaps given http://eel.is/c++draft/cpp.pre#7 makes the default for
preprocessing directives not macro expanded unless otherwise specified, change
http://eel.is/c++draft/cpp.module#3
"Any preprocessing tokens after the module preprocessing token in the module
directive are processed just as in normal text."
to
"If pp-module-partition appears in pp-tokens, any preprocessing tokens after
the last pp-module-partition token are processed just as in normal text;
otherwise if pp-module-name appears in pp-tokens, any preprocessing tokens
after the last pp-module-name token are processed just as in normal text."
That would make
#define EMPTY
export module EMPTY ;
and
#define SEMI
export module SEMI
;
and
#define DOT .
export module foo DOT bar ;
etc. invalid.

Reply via email to