https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118549
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> --- That is the way it was designed. For user code, the user can choose what to use, whether it is __builtin_unreachable () or __builtin_trap (). -funreachable-traps is about what the compiler chooses when it adds some on its own.