1 // PR c++/90832 - endless recursion when evaluating sizeof. 2 // { dg-do compile { target c++11 } } 3 4 class B 5 { 6 template <typename T> friend struct A; B()7 B() {} 8 }; 9 10 template <typename T> 11 struct A 12 { noexceptA13 A() noexcept(sizeof(B{})) { } 14 }; 15 16 struct C 17 { CC18 C() 19 { 20 static_assert( sizeof(A<int>{}), "" ); 21 } 22 }; 23