aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.8/gcc/fortran/primary.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.8/gcc/fortran/primary.c')
-rw-r--r--gcc-4.8/gcc/fortran/primary.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc-4.8/gcc/fortran/primary.c b/gcc-4.8/gcc/fortran/primary.c
index d14922416..f44bf575e 100644
--- a/gcc-4.8/gcc/fortran/primary.c
+++ b/gcc-4.8/gcc/fortran/primary.c
@@ -2252,7 +2252,7 @@ gfc_expr_attr (gfc_expr *e)
case EXPR_FUNCTION:
gfc_clear_attr (&attr);
- if (e->value.function.esym != NULL)
+ if (e->value.function.esym && e->value.function.esym->result)
{
gfc_symbol *sym = e->value.function.esym->result;
attr = sym->attr;
@@ -2540,6 +2540,7 @@ gfc_convert_to_structure_constructor (gfc_expr *e, gfc_symbol *sym, gfc_expr **c
if (parent && !comp)
break;
+ if (actual)
actual = actual->next;
}