https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91395
--- Comment #4 from Adam <ali at pivotal dot io> --- (In reply to Andrew Pinski from comment #3) > In theory other can cause a call to longjmp but gcc does not know it cannot. Thanks for the quick reply. I got the longjmp() part, it could be called anytime. The part I don't get is why it reports since gcc could tell that no one changes the save_exception_stack (it has a certain short life). The POSIX's statement as I know has two facts: "a local not-volatile variable" and "it's been changed between setjmp() and longjmp()". Have I missed anything?