https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64459
Reini Urban <rur...@x-ray.at> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|WAITING |RESOLVED Resolution|--- |INVALID --- Comment #3 from Reini Urban <rur...@x-ray.at> --- This ticket can be closed, not a bug. My test script finished after some hours of grinding, which tested all of the 992 returns_nonnull annotated functions in parrot. Disabling returns_nonnull on one function made it work. I've checked the assembly. It was Parrot_cx_check_scheduler(), which had a wrong if (Parrot_cx_check_scheduler(...) == 0) check, and consequently this branch was removed by gcc. So it's really a missed clang and msvc dead-code removal opportunity.