Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.dg/cpp0x/constexpr-ex3.C @ 158:494b0b89df80 default tip
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 25 May 2020 18:13:55 +0900 |
parents | 1830386684a0 |
children |
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" "" { target c++17_down } } }; 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);