https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84374
--- Comment #1 from Stephen M. Webb <smw at gcc dot gnu.org> --- Hrm, evidently the problem is not limited to trailing-return-type declarations, since the following code also results in no diagnostic. decltype(auto)* f(); class C { decltype(auto)* g(); }; Note though, the problem exists only for function declarations. An appropriate diagnostic is issued for other declarations using the placeholder decltype(auto).