https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94922
--- Comment #1 from Patrick Palka <ppalka at gcc dot gnu.org> --- The above appears to be a 10/11 regression, but note that all versions of GCC >= 4.7 also incorrectly accept the following testcase: struct base {}; struct derived : base {}; template <typename = decltype(derived(base()))> void foo(); void bar() { foo(); }