[llvm-bugs] [Bug 28431] Invalid reuse of stack slot due to returntwice function

via llvm-bugs llvm-bugs at lists.llvm.org
Tue Jul 5 19:05:10 PDT 2016


https://llvm.org/bugs/show_bug.cgi?id=28431

Hal Finkel <hfinkel at anl.gov> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |hfinkel at anl.gov
         Resolution|---                         |INVALID

--- Comment #1 from Hal Finkel <hfinkel at anl.gov> ---
This is not a bug. When you use setjmp/longjmp within a function, you need to
mark local variables that might be changed between the call to setjmp and the
corresponding call to longjmp as volatile. The C standard, 7.13.2.1p3 says:

"All accessible objects have values, and all other components of the abstract
machine) have state, as of the time the longjmp function was called, except
that the values of objects of automatic storage duration that are local to the
function containing the invocation of the corresponding setjmp macro that do
not have volatile-qualified type and have been changed between the setjmp
invocation and longjmp call are indeterminate."

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20160706/96719c44/attachment-0001.html>


More information about the llvm-bugs mailing list