diff options
author | Richard Smith <richard@metafoo.co.uk> | 2020-04-28 23:41:11 -0700 |
---|---|---|
committer | Richard Smith <richard@metafoo.co.uk> | 2020-04-28 23:49:35 -0700 |
commit | 20df6038ee76f110640fc7c5fa9b96b84e373932 (patch) | |
tree | 3bbbc4bd71df2a3f8a914c60eec987216e2bf7e8 /clang/lib/Basic/IdentifierTable.cpp | |
parent | c35f3f8679050df77a32512a73a94ba856190089 (diff) | |
download | llvm-20df6038ee76f110640fc7c5fa9b96b84e373932.zip llvm-20df6038ee76f110640fc7c5fa9b96b84e373932.tar.gz llvm-20df6038ee76f110640fc7c5fa9b96b84e373932.tar.bz2 |
Make -fno-char8_t disable the char8_t keyword, even in C++20.
This fixes a regression introduced in r354736, and makes our behavior
compatible with that of Clang 8 and GCC.
Diffstat (limited to 'clang/lib/Basic/IdentifierTable.cpp')
-rw-r--r-- | clang/lib/Basic/IdentifierTable.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/clang/lib/Basic/IdentifierTable.cpp b/clang/lib/Basic/IdentifierTable.cpp index e88d939..d7ef159 100644 --- a/clang/lib/Basic/IdentifierTable.cpp +++ b/clang/lib/Basic/IdentifierTable.cpp @@ -146,6 +146,8 @@ static KeywordStatus getKeywordStatus(const LangOptions &LangOpts, if (LangOpts.Coroutines && (Flags & KEYCOROUTINES)) return KS_Enabled; if (LangOpts.ModulesTS && (Flags & KEYMODULES)) return KS_Enabled; if (LangOpts.CPlusPlus && (Flags & KEYALLCXX)) return KS_Future; + if (LangOpts.CPlusPlus && !LangOpts.CPlusPlus20 && (Flags & CHAR8SUPPORT)) + return KS_Future; return KS_Disabled; } |