https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113349
--- Comment #7 from Marek Polacek <mpolacek at gcc dot gnu.org> --- Better test: ``` // PR c++/113349 template <typename> void foo() { } template <long, typename _Tp> using tuple_element_t = _Tp; template <typename, typename = void> struct types; template <typename T> struct types<T, decltype([] {}())> { template <long N> using el = tuple_element_t<N, decltype([] {})>; }; void g () { foo<types<int>::el<1>>(); } ```