[PATCH] D131683: Diagnosing the Future Keywords
Aaron Ballman via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Aug 23 06:59:05 PDT 2022
aaron.ballman added inline comments.
================
Comment at: clang/include/clang/Basic/DiagnosticLexKinds.td:85
+ InGroup<C99Compat>, DefaultIgnore;
+def warn_c23_keyword : Warning<"'%0' is a keyword in C23">,
+ InGroup<C2xCompat>, DefaultIgnore;
----------------
================
Comment at: clang/include/clang/Basic/TokenKinds.def:259
// KEYC11 - This is a keyword introduced to C in C11
+// KEYC2X - This is a keyword introduced to C in C23
// KEYCXX - This is a C++ keyword, or a C++-specific keyword in the
----------------
================
Comment at: clang/include/clang/Basic/TokenKinds.def:384
+C2X_KEYWORD(true , BOOLSUPPORT)
+C2X_KEYWORD(remove_quals , KEYC2X)
+
----------------
This is technically correct, but I think we should remove it until we go to implement that paper instead of introducing the keyword out of thin air here.
Btw, I think that should be `, 0` instead of `, KEYC2X` given the use of `C2X_KEYWORD`, right?
================
Comment at: clang/lib/Lex/Preprocessor.cpp:789-791
- // char8_t is not modeled as a CXX20_KEYWORD because it's not
- // unconditionally enabled in C++20 mode. (It can be disabled
- // by -fno-char8_t.)
----------------
You should be sure to add this comment to the new code so we don't lose the useful information.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D131683/new/
https://reviews.llvm.org/D131683
More information about the cfe-commits
mailing list