diff options
Diffstat (limited to 'gcc/fortran/decl.c')
-rw-r--r-- | gcc/fortran/decl.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/fortran/decl.c b/gcc/fortran/decl.c index a476c64..ec3ce2e 100644 --- a/gcc/fortran/decl.c +++ b/gcc/fortran/decl.c @@ -1218,6 +1218,7 @@ variable_decl (int elem) that the interface may specify a procedure that is not pure if the procedure is defined to be pure(12.3.2). */ if (current_ts.type == BT_DERIVED + && gfc_current_ns->proc_name && gfc_current_ns->proc_name->attr.if_source == IFSRC_IFBODY && current_ts.derived->ns != gfc_current_ns) { @@ -2397,7 +2398,8 @@ ok: break; } - gfc_error ("Syntax error in data declaration at %C"); + if (gfc_error_flag_test () == 0) + gfc_error ("Syntax error in data declaration at %C"); m = MATCH_ERROR; gfc_free_data_all (gfc_current_ns); |