An additional item: Does longjmp run destructors? I believe that the C ABI makes this optional. I would like to propose that it does run destructors.