PR fortran/54384
* resolve.c (gfc_resolve_character_operator): Free temporary
variables.
* trans-expr.c (gfc_conv_statement_function): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190731
138bc75d-0d04-0410-961f-
82ee72b054a4
2012-08-27 Tobias Burnus <burnus@net-b.de>
PR fortran/54384
+ * resolve.c (gfc_resolve_character_operator): Free temporary
+ variables.
+ * trans-expr.c (gfc_conv_statement_function): Ditto.
+
+2012-08-27 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/54384
* dependency.c (check_section_vs_section): Use gfc_free_expr
instead of free.
* trans-intrinsic.c (conv_generic_with_optional_char_arg): Use
e->ts.u.cl = gfc_new_charlen (gfc_current_ns, NULL);
if (!e1 || !e2)
- return;
+ {
+ gfc_free_expr (e1);
+ gfc_free_expr (e2);
+
+ return;
+ }
e->ts.u.cl->length = gfc_add (e1, e2);
e->ts.u.cl->length->ts.type = BT_INTEGER;
/* Restore the original variables. */
for (fargs = sym->formal, n = 0; fargs; fargs = fargs->next, n++)
gfc_restore_sym (fargs->sym, &saved_vars[n]);
+ free (temp_vars);
free (saved_vars);
}