------- Comment #4 from sfilippone at uniroma2 dot it 2010-08-24 10:24 ------- (In reply to comment #3) With dump-tree-original I see this code snippet:
finally { if (aa.$data != 0B) { __builtin_free ((void *) aa.$data); } } I believe this is wrong, because aa.$data is always an alias to an independently allocated data area, hence the double free. Of course I have no idea why this happens or how to fix it, but you already guessed that :-) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45384