This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/45384] [OOP] double free with SELECT TYPE
- From: "sfilippone at uniroma2 dot it" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 24 Aug 2010 10:24:09 -0000
- Subject: [Bug fortran/45384] [OOP] double free with SELECT TYPE
- References: <bug-45384-9410@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- 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