From 20df6038ee76f110640fc7c5fa9b96b84e373932 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 28 Apr 2020 23:41:11 -0700 Subject: 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. --- clang/lib/Basic/IdentifierTable.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'clang/lib/Basic/IdentifierTable.cpp') 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; } -- cgit v1.1