1 // PR c++/98899 2 // { dg-do compile { target c++11 } } 3 4 template <int __v> struct integral_constant { 5 static constexpr int value = __v; 6 }; 7 8 struct S { 9 template<class> struct B { 10 B() noexcept(noexcept(x)); 11 int x; 12 }; 13 struct A : B<int> { AS::A14 A() : B() {} 15 }; 16 }; 17 18 struct S2 { 19 template<class> struct B { 20 B() noexcept(integral_constant<false>::value); 21 }; 22 struct A : B<int> { AS2::A23 A() : B() {} 24 }; 25 }; 26 27 struct S3 { 28 template<class> struct B { 29 B() noexcept(b); 30 }; 31 struct A : B<int> { AS3::A32 A() : B() {} 33 }; 34 static constexpr bool b = false; 35 }; 36