https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84023
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2018-01-24 Component|middle-end |testsuite Ever confirmed|0 |1 --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- I think that's probably spurious: void set () { a=nan(""); } ... float a = move (1); if (!__builtin_constant_p (a)) __builtin_abort (); given set doesn't bind locally with -fpic we don't inline it and thus the result cannot be constant. -> testsuite issue A fix is probably to make set static. That change is pre-approved.