https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121159
--- Comment #9 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Andi Kleen from comment #8) > ><source>:3:30: error: cannot tail-call: volatile function type > > I wonder how that happened. It looks like a bug. volatile functions should > be rejected elsewhere and there is no volatile in the test case. > > Maybe some tree bit encoding gets confused? > > Should reopen the bug just for this. With the C front-end, volatile on the function type means noreturn; it is the old (documented) pre-attributes way of declaring a function type as being noreturn.