Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.dg/cpp0x/constexpr-ex3.C @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children | 1830386684a0 |
line wrap: on
line source
// { dg-do compile { target c++11 } } // { dg-options "-ftrack-macro-expansion=0" } #define SA(X) static_assert (X, #X) struct A { int i; constexpr A(int _i) { i = _i; } // { dg-error "empty body|A::i" } }; template <class T> struct B { T t; constexpr B(T _t): t(_t) { } }; B<int> b(1); // { dg-message "not declared .constexpr" } SA(b.t==1); // { dg-error "non-constant condition|'b'" } constexpr B<int> b2(1); SA(b2.t==1); template <class T> constexpr T f(T a, T b) { typedef T myT; return a + b; } SA(f(1,2)==3);