https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109528
--- Comment #4 from Stavros Avramidis <stavros9899 at gmail dot com> --- The warning makes a bit more sense now, I was thinking gcc was getting confused about function ending after calling the internal exits(). Anyways, I can confirm that it works with `[[gnu::noreturn]]`