gribozavr created this revision.
gribozavr added a reviewer: hlopko.
Herald added subscribers: cfe-commits, usaxena95, kadircet, arphaman, jkorous, 
kbarton, nemanjai.
Herald added a project: clang.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D81087

Files:
  clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
  clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
  clang-tools-extra/clangd/unittests/FindTargetTests.cpp
  clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
  clang-tools-extra/docs/clang-tidy/checks/portability-simd-intrinsics.rst
  clang-tools-extra/test/clang-tidy/check_clang_tidy.py
  clang-tools-extra/test/clang-tidy/checkers/cert-mem57-cpp-cpp17.cpp
  
clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines-pro-type-member-init-cxx20.cpp
  
clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines-pro-type-member-init-cxx2a.cpp
  
clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines-pro-type-member-init.cpp
  
clang-tools-extra/test/clang-tidy/checkers/modernize-make-unique-inaccessible-ctors.cpp
  clang-tools-extra/test/clang-tidy/checkers/modernize-raw-string-literal.cpp
  
clang-tools-extra/test/clang-tidy/checkers/modernize-use-default-member-init-bitfield.cpp
  
clang-tools-extra/test/clang-tidy/checkers/modernize-use-default-member-init.cpp
  
clang-tools-extra/test/clang-tidy/checkers/modernize-use-trailing-return-type.cpp
  clang-tools-extra/test/clang-tidy/checkers/performance-no-automatic-move.cpp
  clang-tools-extra/test/clang-tidy/checkers/portability-simd-intrinsics-ppc.cpp
  clang-tools-extra/test/clang-tidy/checkers/portability-simd-intrinsics-x86.cpp
  
clang-tools-extra/test/clang-tidy/checkers/readability-use-anyofallof-cpp20.cpp

Index: clang-tools-extra/test/clang-tidy/checkers/readability-use-anyofallof-cpp20.cpp
===================================================================
--- clang-tools-extra/test/clang-tidy/checkers/readability-use-anyofallof-cpp20.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/readability-use-anyofallof-cpp20.cpp
@@ -1,4 +1,4 @@
-// RUN: %check_clang_tidy -std=c++2a-or-later %s readability-use-anyofallof %t
+// RUN: %check_clang_tidy -std=c++20-or-later %s readability-use-anyofallof %t
 
 bool good_any_of() {
   int v[] = {1, 2, 3};
Index: clang-tools-extra/test/clang-tidy/checkers/portability-simd-intrinsics-x86.cpp
===================================================================
--- clang-tools-extra/test/clang-tidy/checkers/portability-simd-intrinsics-x86.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/portability-simd-intrinsics-x86.cpp
@@ -2,7 +2,7 @@
 // RUN:  -config='{CheckOptions: [ \
 // RUN:    {key: portability-simd-intrinsics.Suggest, value: 1} \
 // RUN:  ]}' -- -target x86_64
-// FIXME: Fix the checker to work in C++2a mode.
+// FIXME: Fix the checker to work in C++20 mode.
 
 typedef long long __m128i __attribute__((vector_size(16)));
 typedef double __m256 __attribute__((vector_size(32)));
Index: clang-tools-extra/test/clang-tidy/checkers/portability-simd-intrinsics-ppc.cpp
===================================================================
--- clang-tools-extra/test/clang-tidy/checkers/portability-simd-intrinsics-ppc.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/portability-simd-intrinsics-ppc.cpp
@@ -2,7 +2,7 @@
 // RUN:  -config='{CheckOptions: [ \
 // RUN:    {key: portability-simd-intrinsics.Suggest, value: 1} \
 // RUN:  ]}' -- -target ppc64le -maltivec
-// FIXME: Fix the checker to work in C++2a mode.
+// FIXME: Fix the checker to work in C++20 mode.
 
 vector int vec_add(vector int, vector int);
 
Index: clang-tools-extra/test/clang-tidy/checkers/performance-no-automatic-move.cpp
===================================================================
--- clang-tools-extra/test/clang-tidy/checkers/performance-no-automatic-move.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/performance-no-automatic-move.cpp
@@ -1,4 +1,4 @@
-// RUN: %check_clang_tidy -std=c++11,c++14,c++17,c++2a %s performance-no-automatic-move %t
+// RUN: %check_clang_tidy -std=c++11-or-later %s performance-no-automatic-move %t
 
 struct Obj {
   Obj();
Index: clang-tools-extra/test/clang-tidy/checkers/modernize-use-trailing-return-type.cpp
===================================================================
--- clang-tools-extra/test/clang-tidy/checkers/modernize-use-trailing-return-type.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/modernize-use-trailing-return-type.cpp
@@ -1,5 +1,5 @@
 // RUN: %check_clang_tidy -std=c++14,c++17 %s modernize-use-trailing-return-type %t -- -- -fdeclspec -fexceptions
-// FIXME: Fix the checker to work in C++2a mode, it is performing a
+// FIXME: Fix the checker to work in C++20 mode, it is performing a
 // use-of-uninitialized-value.
 
 namespace std {
Index: clang-tools-extra/test/clang-tidy/checkers/modernize-use-default-member-init.cpp
===================================================================
--- clang-tools-extra/test/clang-tidy/checkers/modernize-use-default-member-init.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/modernize-use-default-member-init.cpp
@@ -1,5 +1,5 @@
 // RUN: %check_clang_tidy -std=c++11,c++14,c++17 %s modernize-use-default-member-init %t -- -- -fexceptions
-// FIXME: Fix the checker to work in C++2a mode.
+// FIXME: Fix the checker to work in C++20 mode.
 
 struct S {
 };
Index: clang-tools-extra/test/clang-tidy/checkers/modernize-use-default-member-init-bitfield.cpp
===================================================================
--- clang-tools-extra/test/clang-tidy/checkers/modernize-use-default-member-init-bitfield.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/modernize-use-default-member-init-bitfield.cpp
@@ -1,4 +1,4 @@
-// RUN: %check_clang_tidy -std=c++2a-or-later %s modernize-use-default-member-init %t
+// RUN: %check_clang_tidy -std=c++20-or-later %s modernize-use-default-member-init %t
 
 struct PositiveBitField
 {
Index: clang-tools-extra/test/clang-tidy/checkers/modernize-raw-string-literal.cpp
===================================================================
--- clang-tools-extra/test/clang-tidy/checkers/modernize-raw-string-literal.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/modernize-raw-string-literal.cpp
@@ -1,5 +1,5 @@
 // RUN: %check_clang_tidy -std=c++11,c++14,c++17 %s modernize-raw-string-literal %t -- -config="{CheckOptions: [{key: modernize-raw-string-literal.ReplaceShorterLiterals, value: 1}]}"
-// FIXME: Fix the checker to work in C++2a mode.
+// FIXME: Fix the checker to work in C++20 mode.
 
 char const *const BackSlash("goink\\frob");
 // CHECK-MESSAGES: :[[@LINE-1]]:29: warning: escaped string literal can be written as a raw string literal [modernize-raw-string-literal]
Index: clang-tools-extra/test/clang-tidy/checkers/modernize-make-unique-inaccessible-ctors.cpp
===================================================================
--- clang-tools-extra/test/clang-tidy/checkers/modernize-make-unique-inaccessible-ctors.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/modernize-make-unique-inaccessible-ctors.cpp
@@ -1,12 +1,12 @@
 // RUN: %check_clang_tidy -std=c++14,c++17 -check-suffix=CXX-14-17 %s modernize-make-unique %t -- -- -I %S/Inputs/modernize-smart-ptr -D CXX_14_17=1
-// RUN: %check_clang_tidy -std=c++2a -check-suffix=CXX-2A %s modernize-make-unique %t -- -- -I %S/Inputs/modernize-smart-ptr -D CXX_2A=1
+// RUN: %check_clang_tidy -std=c++20 -check-suffix=CXX-20 %s modernize-make-unique %t -- -- -I %S/Inputs/modernize-smart-ptr -D CXX_20=1
 
 #include "unique_ptr.h"
 // CHECK-FIXES: #include <memory>
 
 struct NoCopyMoveCtor {
-#ifdef CXX_2A
-  // C++2a requires to see the default constructor, otherwise it is illgal.
+#ifdef CXX_20
+  // C++20 requires to see the default constructor, otherwise it is illgal.
   NoCopyMoveCtor() = default;
 #endif
 #ifdef CXX_14_17
@@ -16,7 +16,7 @@
 };
 
 struct NoCopyMoveCtorVisible {
-#ifdef CXX_2A
+#ifdef CXX_20
   NoCopyMoveCtorVisible() = default;
 #endif
 private:
@@ -31,7 +31,7 @@
 };
 
 struct OnlyCopyCtor {
-#ifdef CXX_2A
+#ifdef CXX_20
   OnlyCopyCtor() = default;
 #endif
   OnlyCopyCtor(const OnlyCopyCtor&) = default;
@@ -39,7 +39,7 @@
 };
 
 struct OnlyCopyCtorVisible {
-#ifdef CXX_2A
+#ifdef CXX_20
   OnlyCopyCtorVisible() = default;
 #endif
   OnlyCopyCtorVisible(const OnlyCopyCtorVisible &) = default;
@@ -56,51 +56,51 @@
   auto my_ptr = std::unique_ptr<int>(new int(1));
   // CHECK-MESSAGES-CXX-14-17: :[[@LINE-1]]:17: warning: use std::make_unique instead
   // CHECK-FIXES-CXX-14-17: auto my_ptr = std::make_unique<int>(1);
-  // CHECK-MESSAGES-CXX-2A: :[[@LINE-3]]:17: warning: use std::make_unique instead
-  // CHECK-FIXES-CXX-2A: auto my_ptr = std::make_unique<int>(1);
+  // CHECK-MESSAGES-CXX-20: :[[@LINE-3]]:17: warning: use std::make_unique instead
+  // CHECK-FIXES-CXX-20: auto my_ptr = std::make_unique<int>(1);
 
-  // "new NoCopyMoveCtor{}" is processed differently in C++14/17 and C++2a:
+  // "new NoCopyMoveCtor{}" is processed differently in C++14/17 and C++20:
   //   * In C++14/17, it is recognized as aggregate initialization,
   //     no fixes will be generated although the generated fix is compilable.
-  //   * In C++2a, it is is recognized as default constructor initialization (
-  //     similar to "new NoCopyMoveCtor()"), the check will emit the fix and the
-  //     fix is correct.
+  //   * In C++20, it is is recognized as default constructor initialization
+  //     (similar to "new NoCopyMoveCtor()"), the check will emit the fix and
+  //     the fix is correct.
   auto PNoCopyMoveCtor = std::unique_ptr<NoCopyMoveCtor>(new NoCopyMoveCtor{});
   // CHECK-MESSAGES-CXX-14-17: :[[@LINE-1]]:26: warning: use std::make_unique instead
   // CHECK-FIXES-CXX-14-17: auto PNoCopyMoveCtor = std::unique_ptr<NoCopyMoveCtor>(new NoCopyMoveCtor{});
-  // CHECK-MESSAGES-CXX-2A: :[[@LINE-3]]:26: warning: use std::make_unique instead
-  // CHECK-FIXES-CXX-2A: auto PNoCopyMoveCtor = std::make_unique<NoCopyMoveCtor>();
+  // CHECK-MESSAGES-CXX-20: :[[@LINE-3]]:26: warning: use std::make_unique instead
+  // CHECK-FIXES-CXX-20: auto PNoCopyMoveCtor = std::make_unique<NoCopyMoveCtor>();
 
   auto PNoCopyMoveCtorVisible = std::unique_ptr<NoCopyMoveCtorVisible>(new NoCopyMoveCtorVisible{});
   // CHECK-MESSAGES-CXX-14-17: :[[@LINE-1]]:33: warning: use std::make_unique instead
   // CHECK-FIXES-CXX-14-17: auto PNoCopyMoveCtorVisible = std::unique_ptr<NoCopyMoveCtorVisible>(new NoCopyMoveCtorVisible{});
-  // CHECK-MESSAGES-CXX-2A: :[[@LINE-3]]:33: warning: use std::make_unique instead
-  // CHECK-FIXES-CXX-2A: auto PNoCopyMoveCtorVisible = std::make_unique<NoCopyMoveCtorVisible>();
+  // CHECK-MESSAGES-CXX-20: :[[@LINE-3]]:33: warning: use std::make_unique instead
+  // CHECK-FIXES-CXX-20: auto PNoCopyMoveCtorVisible = std::make_unique<NoCopyMoveCtorVisible>();
 
   auto POnlyMoveCtor = std::unique_ptr<OnlyMoveCtor>(new OnlyMoveCtor{});
   // CHECK-MESSAGES-CXX-14-17: :[[@LINE-1]]:24: warning: use std::make_unique instead
   // CHECK-FIXES-CXX-14-17: auto POnlyMoveCtor = std::unique_ptr<OnlyMoveCtor>(new OnlyMoveCtor{});
-  // CHECK-MESSAGES-CXX-2A: :[[@LINE-3]]:24: warning: use std::make_unique instead
-  // CHECK-FIXES-CXX-2A: auto POnlyMoveCtor = std::make_unique<OnlyMoveCtor>();
+  // CHECK-MESSAGES-CXX-20: :[[@LINE-3]]:24: warning: use std::make_unique instead
+  // CHECK-FIXES-CXX-20: auto POnlyMoveCtor = std::make_unique<OnlyMoveCtor>();
 
   auto POnlyCopyCtor = std::unique_ptr<OnlyCopyCtor>(new OnlyCopyCtor{});
   // CHECK-MESSAGES-CXX-14-17: :[[@LINE-1]]:24: warning: use std::make_unique instead
   // CHECK-FIXES-CXX-14-17: auto POnlyCopyCtor = std::unique_ptr<OnlyCopyCtor>(new OnlyCopyCtor{});
-  // CHECK-MESSAGES-CXX-2A: :[[@LINE-3]]:24: warning: use std::make_unique instead
-  // CHECK-FIXES-CXX-2A: auto POnlyCopyCtor = std::make_unique<OnlyCopyCtor>();
+  // CHECK-MESSAGES-CXX-20: :[[@LINE-3]]:24: warning: use std::make_unique instead
+  // CHECK-FIXES-CXX-20: auto POnlyCopyCtor = std::make_unique<OnlyCopyCtor>();
 
   auto POnlyCopyCtorVisible = std::unique_ptr<OnlyCopyCtorVisible>(new OnlyCopyCtorVisible{});
   // CHECK-MESSAGES-CXX-14-17: :[[@LINE-1]]:31: warning: use std::make_unique instead
   // CHECK-FIXES-CXX-14-17: auto POnlyCopyCtorVisible = std::unique_ptr<OnlyCopyCtorVisible>(new OnlyCopyCtorVisible{});
-  // CHECK-MESSAGES-CXX-2A: :[[@LINE-3]]:31: warning: use std::make_unique instead
-  // CHECK-FIXES-CXX-2A: auto POnlyCopyCtorVisible = std::make_unique<OnlyCopyCtorVisible>();
+  // CHECK-MESSAGES-CXX-20: :[[@LINE-3]]:31: warning: use std::make_unique instead
+  // CHECK-FIXES-CXX-20: auto POnlyCopyCtorVisible = std::make_unique<OnlyCopyCtorVisible>();
 
-  // This is aggregate initialization in C++2a, no fix will be generated.
+  // This is aggregate initialization in C++20, no fix will be generated.
   auto PImplicitDeletedCopyCtor = std::unique_ptr<ImplicitDeletedCopyCtor>(new ImplicitDeletedCopyCtor{});
   // CHECK-MESSAGES-CXX-14-17: :[[@LINE-1]]:35: warning: use std::make_unique instead
   // CHECK-FIXES-CXX-14-17: auto PImplicitDeletedCopyCtor = std::unique_ptr<ImplicitDeletedCopyCtor>(new ImplicitDeletedCopyCtor{});
-  // CHECK-MESSAGES-CXX-2A: :[[@LINE-3]]:35: warning: use std::make_unique instead
-  // CHECK-FIXES-CXX-2A: auto PImplicitDeletedCopyCtor = std::unique_ptr<ImplicitDeletedCopyCtor>(new ImplicitDeletedCopyCtor{});
+  // CHECK-MESSAGES-CXX-20: :[[@LINE-3]]:35: warning: use std::make_unique instead
+  // CHECK-FIXES-CXX-20: auto PImplicitDeletedCopyCtor = std::unique_ptr<ImplicitDeletedCopyCtor>(new ImplicitDeletedCopyCtor{});
 
 
 #ifdef CXX_14_17
Index: clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines-pro-type-member-init.cpp
===================================================================
--- clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines-pro-type-member-init.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines-pro-type-member-init.cpp
@@ -1,5 +1,5 @@
 // RUN: %check_clang_tidy -std=c++11,c++14,c++17 %s cppcoreguidelines-pro-type-member-init %t -- -- -fno-delayed-template-parsing
-// FIXME: Fix the checker to work in C++2a mode.
+// FIXME: Fix the checker to work in C++20 mode.
 
 struct PositiveFieldBeforeConstructor {
   int F;
Index: clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines-pro-type-member-init-cxx20.cpp
===================================================================
--- clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines-pro-type-member-init-cxx20.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines-pro-type-member-init-cxx20.cpp
@@ -1,4 +1,4 @@
-// RUN: %check_clang_tidy -std=c++2a %s cppcoreguidelines-pro-type-member-init %t -- -- -fno-delayed-template-parsing
+// RUN: %check_clang_tidy -std=c++20 %s cppcoreguidelines-pro-type-member-init %t -- -- -fno-delayed-template-parsing
 
 struct PositiveBitfieldMember {
   PositiveBitfieldMember() {}
Index: clang-tools-extra/test/clang-tidy/checkers/cert-mem57-cpp-cpp17.cpp
===================================================================
--- clang-tools-extra/test/clang-tidy/checkers/cert-mem57-cpp-cpp17.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/cert-mem57-cpp-cpp17.cpp
@@ -1,6 +1,6 @@
 // RUN: %check_clang_tidy %s -std=c++14 cert-mem57-cpp %t
 // RUN: clang-tidy --extra-arg='-std=c++17' --extra-arg='-faligned-allocation' -checks='-*,cert-mem57-cpp' --extra-arg=-Wno-unused-variable --warnings-as-errors='*' %s
-// RUN: clang-tidy --extra-arg='-std=c++2a' --extra-arg='-faligned-allocation' -checks='-*,cert-mem57-cpp' --extra-arg=-Wno-unused-variable --warnings-as-errors='*' %s
+// RUN: clang-tidy --extra-arg='-std=c++20' --extra-arg='-faligned-allocation' -checks='-*,cert-mem57-cpp' --extra-arg=-Wno-unused-variable --warnings-as-errors='*' %s
 
 struct alignas(128) Vector {
   char Elems[128];
Index: clang-tools-extra/test/clang-tidy/check_clang_tidy.py
===================================================================
--- clang-tools-extra/test/clang-tidy/check_clang_tidy.py
+++ clang-tools-extra/test/clang-tidy/check_clang_tidy.py
@@ -204,15 +204,15 @@
 
 def expand_std(std):
   if std == 'c++98-or-later':
-    return ['c++98', 'c++11', 'c++14', 'c++17', 'c++2a']
+    return ['c++98', 'c++11', 'c++14', 'c++17', 'c++20']
   if std == 'c++11-or-later':
-    return ['c++11', 'c++14', 'c++17', 'c++2a']
+    return ['c++11', 'c++14', 'c++17', 'c++20']
   if std == 'c++14-or-later':
-    return ['c++14', 'c++17', 'c++2a']
+    return ['c++14', 'c++17', 'c++20']
   if std == 'c++17-or-later':
-    return ['c++17', 'c++2a']
-  if std == 'c++2a-or-later':
-    return ['c++2a']
+    return ['c++17', 'c++20']
+  if std == 'c++20-or-later':
+    return ['c++20']
   return [std]
 
 
Index: clang-tools-extra/docs/clang-tidy/checks/portability-simd-intrinsics.rst
===================================================================
--- clang-tools-extra/docs/clang-tidy/checks/portability-simd-intrinsics.rst
+++ clang-tools-extra/docs/clang-tidy/checks/portability-simd-intrinsics.rst
@@ -44,6 +44,6 @@
 .. option:: Std
 
    The namespace used to suggest `P0214`_ alternatives. If not specified, `std::`
-   for `-std=c++2a` and `std::experimental::` for `-std=c++11`.
+   for `-std=c++20` and `std::experimental::` for `-std=c++11`.
 
 .. _P0214: https://wg21.link/p0214
Index: clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
===================================================================
--- clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
+++ clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
@@ -115,7 +115,7 @@
   // FIXME: Auto-completion in a template requires disabling delayed template
   // parsing.
   TU.ExtraArgs.push_back("-fno-delayed-template-parsing");
-  TU.ExtraArgs.push_back("-std=c++2a");
+  TU.ExtraArgs.push_back("-std=c++20");
 
   for (auto File : AdditionalFiles)
     TU.AdditionalFiles.insert({File.first, std::string(File.second)});
Index: clang-tools-extra/clangd/unittests/FindTargetTests.cpp
===================================================================
--- clang-tools-extra/clangd/unittests/FindTargetTests.cpp
+++ clang-tools-extra/clangd/unittests/FindTargetTests.cpp
@@ -401,7 +401,7 @@
       t.foo();
     }
   )cpp";
-  Flags.push_back("-std=c++2a");
+  Flags.push_back("-std=c++20");
   EXPECT_DECLS(
       "ConceptSpecializationExpr",
       // FIXME: Should we truncate the pretty-printed form of a concept decl
@@ -642,7 +642,7 @@
     // FIXME: Auto-completion in a template requires disabling delayed template
     // parsing.
     TU.ExtraArgs.push_back("-fno-delayed-template-parsing");
-    TU.ExtraArgs.push_back("-std=c++2a");
+    TU.ExtraArgs.push_back("-std=c++20");
     TU.ExtraArgs.push_back("-xobjective-c++");
 
     auto AST = TU.build();
Index: clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
===================================================================
--- clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
+++ clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
@@ -441,7 +441,7 @@
 }
 
 TEST_F(DocumentSymbolsTest, Concepts) {
-  CDB.ExtraClangFlags = {"-std=c++2a"};
+  CDB.ExtraClangFlags = {"-std=c++20"};
   std::string FilePath = testPath("foo.cpp");
   addFile(FilePath,
           "template <typename T> concept C = requires(T t) { t.foo(); };");
Index: clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
===================================================================
--- clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
+++ clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
@@ -454,7 +454,7 @@
       return;
     // Don't suggest fixes for enums because we don't know a good default.
     // Don't suggest fixes for bitfields because in-class initialization is not
-    // possible until C++2a.
+    // possible until C++20.
     if (F->getType()->isEnumeralType() ||
         (!getLangOpts().CPlusPlus20 && F->isBitField()))
       return;
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to