[clang] [Clang] Implement P3034R1 Module Declarations Shouldn’t be Macros (PR #90574)

via cfe-commits cfe-commits at lists.llvm.org
Fri May 3 07:58:09 PDT 2024


yronglin wrote:

> My reading is that
> 
> ```c++
> #define SOME_MACRO
> module foo SOME_MACRO;
> ```
> 
> SOME_MACRO is expanded

If this is the case,  the current processing in the `Preprocessor::LexAfterModuleDecl` function is incorrect. The implementation in this PR treats the tokens between `module` and `;` as normal text(use `LexUnexpandedToken`). So I'm a bit confused about the wording of [cpp.module]/p3 and the note.

https://github.com/llvm/llvm-project/pull/90574


More information about the cfe-commits mailing list