From: Richard Smith Date: Mon, 2 Sep 2019 23:27:54 +0000 (+0000) Subject: Rename -Wc++20-designator to -Wc++2a-designator for consistency and add X-Git-Tag: llvmorg-11-init~10228 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ea366122d28f7756008543e495f1899b64f4060a;p=platform%2Fupstream%2Fllvm.git Rename -Wc++20-designator to -Wc++2a-designator for consistency and add some test coverage for the flag. llvm-svn: 370689 --- diff --git a/clang/include/clang/Basic/DiagnosticGroups.td b/clang/include/clang/Basic/DiagnosticGroups.td index aa17734..ee6ecb9 100644 --- a/clang/include/clang/Basic/DiagnosticGroups.td +++ b/clang/include/clang/Basic/DiagnosticGroups.td @@ -146,9 +146,9 @@ def Deprecated : DiagGroup<"deprecated", [DeprecatedAttributes, DeprecatedWritableStr]>, DiagCategory<"Deprecations">; -def CXX2aDesignator : DiagGroup<"c++20-designator">; +def CXX2aDesignator : DiagGroup<"c++2a-designator">; // Allow -Wno-c99-designator to be used to turn off all warnings on valid C99 -// designators (including the warning controlled by -Wc++20-designator). +// designators (including the warning controlled by -Wc++2a-designator). def C99Designator : DiagGroup<"c99-designator", [CXX2aDesignator]>; def GNUDesignator : DiagGroup<"gnu-designator">; diff --git a/clang/test/SemaCXX/cxx2a-initializer-aggregates.cpp b/clang/test/SemaCXX/cxx2a-initializer-aggregates.cpp index c24c53e..7dc2500 100644 --- a/clang/test/SemaCXX/cxx2a-initializer-aggregates.cpp +++ b/clang/test/SemaCXX/cxx2a-initializer-aggregates.cpp @@ -1,17 +1,18 @@ -// RUN: %clang_cc1 -std=c++2a %s -verify=expected,pedantic,override,reorder -pedantic-errors -// RUN: %clang_cc1 -std=c++2a %s -verify=expected,pedantic -Werror=c99-designator -Wno-reorder-init-list -Wno-initializer-overrides -// RUN: %clang_cc1 -std=c++2a %s -verify=expected,reorder -Wno-c99-designator -Werror=reorder-init-list -Wno-initializer-overrides -// RUN: %clang_cc1 -std=c++2a %s -verify=expected,override -Wno-c99-designator -Wno-reorder-init-list -Werror=initializer-overrides -// RUN: %clang_cc1 -std=c++2a %s -verify -Wno-c99-designator -Wno-reorder-init-list -Wno-initializer-overrides +// RUN: %clang_cc1 -std=c++2a %s -verify=cxx20,expected,pedantic,override,reorder -pedantic-errors +// RUN: %clang_cc1 -std=c++17 %s -verify=expected,pedantic,override,reorder -Wno-c++2a-designator -pedantic-errors +// RUN: %clang_cc1 -std=c++2a %s -verify=cxx20,expected,pedantic -Werror=c99-designator -Wno-reorder-init-list -Wno-initializer-overrides +// RUN: %clang_cc1 -std=c++2a %s -verify=cxx20,expected,reorder -Wno-c99-designator -Werror=reorder-init-list -Wno-initializer-overrides +// RUN: %clang_cc1 -std=c++2a %s -verify=cxx20,expected,override -Wno-c99-designator -Wno-reorder-init-list -Werror=initializer-overrides +// RUN: %clang_cc1 -std=c++2a %s -verify=cxx20,expected -Wno-c99-designator -Wno-reorder-init-list -Wno-initializer-overrides namespace class_with_ctor { - struct A { // expected-note 6{{candidate}} - A() = default; // expected-note 3{{candidate}} + struct A { // cxx20-note 6{{candidate}} + A() = default; // cxx20-note 3{{candidate}} int x; int y; }; - A a = {1, 2}; // expected-error {{no matching constructor}} + A a = {1, 2}; // cxx20-error {{no matching constructor}} struct B { int x; @@ -24,7 +25,7 @@ namespace class_with_ctor { A a; }; C c1 = {{}, {}}; // ok, call default ctor twice - C c2 = {{1, 2}, {3, 4}}; // expected-error 2{{no matching constructor}} + C c2 = {{1, 2}, {3, 4}}; // cxx20-error 2{{no matching constructor}} } namespace designator {