http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55603
Tobias Burnus <burnus at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |wrong-code
Status|UNCONFIRMED |NEW
Last reconfirmed| |2012-12-05
CC| |burnus at gcc dot gnu.org
Summary|Memory leak in intrinsic |Memory leak in intrinsic
|assignment of allocatable |assignment of a scalar
|derived type function |allocatable function result
|result |
Ever Confirmed|0 |1
--- Comment #2 from Tobias Burnus <burnus at gcc dot gnu.org> 2012-12-05
10:00:09 UTC ---
The issue seems to only occur with scalars.
Generated code
a = *bar ();
Expected: One uses a temporary as in
tmp = bar ();
a = *tmp;
free (tmp);
The same issue occurs with reallocate LHS, were also a temporary should be
used.
[Check that the allocation/freeing is properly done for variables with length
type parameter (currently only deferred-length CHARACTER strings).]