From eb4373abe829f8731b3e6d4da97ad88a9a93aa28 Mon Sep 17 00:00:00 2001 From: Erich Keane Date: Mon, 21 Nov 2022 06:30:47 -0800 Subject: [PATCH] Remove -cc1 -fconcepts-ts flag The -fconcepts-ts flag has been deprecated for 5 releases now, so just remove it, concepts is supported in C++20 mode. --- clang/docs/ReleaseNotes.rst | 2 ++ clang/include/clang/Basic/DiagnosticFrontendKinds.td | 3 --- clang/include/clang/Driver/Options.td | 2 -- clang/lib/Frontend/CompilerInvocation.cpp | 3 --- 4 files changed, 2 insertions(+), 8 deletions(-) diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst index dcb5f13..b2b0854 100644 --- a/clang/docs/ReleaseNotes.rst +++ b/clang/docs/ReleaseNotes.rst @@ -485,6 +485,8 @@ Modified Compiler Flags Removed Compiler Flags ------------------------- +- Clang now no longer supports ``-cc1 -fconcepts-ts``. This flag has been deprecated + and encouraged use of ``-std=c++20`` since Clang 10, so we're now removing it. New Pragmas in Clang -------------------- diff --git a/clang/include/clang/Basic/DiagnosticFrontendKinds.td b/clang/include/clang/Basic/DiagnosticFrontendKinds.td index 26083e3..d0f672a 100644 --- a/clang/include/clang/Basic/DiagnosticFrontendKinds.td +++ b/clang/include/clang/Basic/DiagnosticFrontendKinds.td @@ -132,9 +132,6 @@ def err_fe_invalid_alignment : Error< "invalid value '%1' in '%0'; alignment must be a power of 2">; def err_fe_invalid_exception_model : Error<"invalid exception model '%select{none|sjlj|seh|dwarf|wasm}0' for target '%1'">; -def warn_fe_concepts_ts_flag : Warning< - "-fconcepts-ts is deprecated - use '-std=c++20' for Concepts support">, - InGroup; def err_fe_invalid_source_date_epoch : Error< "environment variable 'SOURCE_DATE_EPOCH' ('%0') must be a non-negative decimal integer <= %1">; diff --git a/clang/include/clang/Driver/Options.td b/clang/include/clang/Driver/Options.td index d67dd6f..8da5e25 100644 --- a/clang/include/clang/Driver/Options.td +++ b/clang/include/clang/Driver/Options.td @@ -5881,8 +5881,6 @@ def ftest_module_file_extension_EQ : Joined<["-"], "ftest-module-file-extension=">, HelpText<"introduce a module file extension for testing purposes. " "The argument is parsed as blockname:major:minor:hashed:user info">; -def fconcepts_ts : Flag<["-"], "fconcepts-ts">, - HelpText<"Enable C++ Extensions for Concepts. (deprecated - use -std=c++2a)">; defm recovery_ast : BoolOption<"f", "recovery-ast", LangOpts<"RecoveryAST">, DefaultTrue, diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp index f09d5e1..a13da5a 100644 --- a/clang/lib/Frontend/CompilerInvocation.cpp +++ b/clang/lib/Frontend/CompilerInvocation.cpp @@ -491,9 +491,6 @@ static bool FixupInvocation(CompilerInvocation &Invocation, if (LangOpts.AppleKext && !LangOpts.CPlusPlus) Diags.Report(diag::warn_c_kext); - if (Args.hasArg(OPT_fconcepts_ts)) - Diags.Report(diag::warn_fe_concepts_ts_flag); - if (LangOpts.NewAlignOverride && !llvm::isPowerOf2_32(LangOpts.NewAlignOverride)) { Arg *A = Args.getLastArg(OPT_fnew_alignment_EQ); -- 2.7.4