diff options
Diffstat (limited to 'test/SemaCXX/warn-static-const-float.cpp')
-rw-r--r-- | test/SemaCXX/warn-static-const-float.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/test/SemaCXX/warn-static-const-float.cpp b/test/SemaCXX/warn-static-const-float.cpp new file mode 100644 index 0000000..481a410 --- /dev/null +++ b/test/SemaCXX/warn-static-const-float.cpp @@ -0,0 +1,21 @@ +// RUN: %clang_cc1 -verify %s -std=c++98 -DEXT +// RUN: %clang_cc1 -verify %s -std=c++98 -Wno-gnu -DNONE +// RUN: %clang_cc1 -verify %s -std=c++98 -Wno-static-float-init -DNONE +// RUN: %clang_cc1 -verify %s -std=c++98 -Wno-gnu-static-float-init -DNONE +// RUN: %clang_cc1 -verify %s -std=c++11 -DERR +// RUN: %clang_cc1 -verify %s -std=c++11 -Wno-gnu -DERR +// RUN: %clang_cc1 -verify %s -std=c++11 -Wno-static-float-init -DNONE +// RUN: %clang_cc1 -verify %s -std=c++11 -Wno-gnu-static-float-init -DERR + +#if NONE +// expected-no-diagnostics +#elif ERR +// expected-error@20 {{in-class initializer for static data member of type 'const double' requires 'constexpr' specifier}} +// expected-note@20 {{add 'constexpr'}} +#elif EXT +// expected-warning@20 {{in-class initializer for static data member of type 'const double' is a GNU extension}} +#endif + +struct X { + static const double x = 0.0; +}; |