================
@@ -671,10 +671,8 @@ static void InitializeCPlusPlusFeatureTestMacros(const
LangOptions &LangOpts,
LangOpts.CPlusPlus23 ? "202211L"
: LangOpts.CPlusPlus17 ? "201603L"
: "200907");
- Builder.defineMacro("__cpp_static_assert", LangOpts.CPlusPlus26 ? "202306L"
- : LangOpts.CPlusPlus17
- ? "201411L"
- : "200410");
+ // C++17 / C++26 static_assert backported
+ Builder.defineMacro("__cpp_static_assert", "202306L");
----------------
AaronBallman wrote:
I'm not certain I agree that this is non-conforming, but the standard could be
made more clear. The *name* of the feature test macro has to be predefined, but
the standard says nothing about the value beyond what the value is for that
particular release of the standard. The whole point to feature test macros is
to be able to use the resulting date to tell you which feature you're working
with, so not being able to specify an updated value for backported
functionality... kind of defeats the purpose.
https://github.com/llvm/llvm-project/pull/102044
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits