http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58471
--- Comment #2 from janus at gcc dot gnu.org --- Can be fixed with this patch: Index: gcc/fortran/primary.c =================================================================== --- gcc/fortran/primary.c (revision 202765) +++ gcc/fortran/primary.c (working copy) @@ -2258,7 +2258,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;