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 5c34dc9..6a7f386 100644 --- a/gcc/fortran/decl.c +++ b/gcc/fortran/decl.c @@ -3959,7 +3959,9 @@ match_attr_spec (void) break; case DECL_PROTECTED: - if (gfc_current_ns->proc_name->attr.flavor != FL_MODULE) + if (gfc_current_state () != COMP_MODULE + || (gfc_current_ns->proc_name + && gfc_current_ns->proc_name->attr.flavor != FL_MODULE)) { gfc_error ("PROTECTED at %C only allowed in specification " "part of a module"); |