Displaying 2 results from an estimated 2 matches for "atmp1".
Did you mean:
tmp1
2012 Jun 19
0
[LLVMdev] [LLVMDev] Object in a try-catch block not being destroyed even after an exception
...>
> if (bs != 0)
> abort ();
> }
> /******************************************************************Source
> Code
> End*******************************************************************/
>
What clang is generating can be approximated by the following pseudocode:
atmp1, atmp2, btmp = alloca space for temporaries
call a::a on atmp1
try {
call a::a on atmp2
try {
call f(atmp1, atmp2)
call b::b on btmp
} catch {
} finally {
call a::~a on atmp2
}
} catch {
} finally {
call a::~a on atmp1
}
// NOW b is "constructed"
Looking...
2012 Jun 19
2
[LLVMdev] [LLVMDev] Object in a try-catch block not being destroyed even after an exception
Dear LLVM Members,
The below source code from gcc test suite replicates the problem
which i am facing. When it is built with clang, it throws an abort
(highlighted).
The following are my observations -
1. The object(tmp) is not getting destroyed immediately after the exception
is thrown. In case of Clang, the object is getting destroyed at a later
point of time.
2. In case of gcc, the