// PR c++/91673 - ICE with noexcept in alias-declaration. // { dg-do compile { target c++17 } } template<typename T, bool B> using U1 = T() noexcept(B); template<bool B> struct S { int I; static constexpr bool b = true; template<typename T> using U2 = T() noexcept(B); template<typename T> using U8 = T() noexcept(b); template<typename T> using U10 = T(int p) noexcept(noexcept(p)); template<typename T, bool B2> using U11 = T() noexcept(B2); using U3 = void() noexcept(B); using U9 = void() noexcept(b); using U4 = void() noexcept(noexcept (I)); using U5 = void(int p) noexcept(noexcept(p)); typedef void(*T1)() noexcept(B); typedef void(*T2)(int p) noexcept(noexcept(p)); }; S<true> s;