This reverts commit c5dc60b664fcbba2642346c4b80fc407264337b7.
This change breaks when compiling using gcc-14. It is also not correct:
on_exit() takes two arguments and passes the exit status to the callback
as expected by trace_on_exit() here. In contrast, atexit() expects a
callback which does not take any arguments and thus the logic for when
to print a trace breaks when using it.
Signed-off-by: Phil Sutter <phil@nwl.cc>