diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/cpp0x/constexpr-default-ctor.C')
-rw-r--r-- | gcc/testsuite/g++.dg/cpp0x/constexpr-default-ctor.C | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-default-ctor.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-default-ctor.C new file mode 100644 index 00000000000..d3868b599ac --- /dev/null +++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-default-ctor.C @@ -0,0 +1,12 @@ +// { dg-options -std=c++0x } + +struct A { + int i; + constexpr A():i(42) { }; +}; +struct B: A { }; +constexpr int f(B b) { return b.i; } + +struct C { C(); }; // { dg-message "calls non-constexpr" } +struct D: C { }; // { dg-message "no constexpr constructor" } +constexpr int g(D d) { return 42; } // { dg-error "invalid type" } |