https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98555
--- Comment #5 from Rich Felker <bugdal at aerifal dot cx> --- Ping. Could this be solved without the need for target-specific logic by, in some earlier layer, transforming entirely empty function bodies to __builtin_trap()? (And thereby relying on the target's implementation thereof, which defaults to a call to abort() if the target doesn't provide one.)