diff options
author | Thomas Koenig <tkoenig@gcc.gnu.org> | 2019-12-08 13:42:42 +0000 |
---|---|---|
committer | Thomas Koenig <tkoenig@gcc.gnu.org> | 2019-12-08 13:42:42 +0000 |
commit | c212316b4a774f8283f097d46e56fb8256502304 (patch) | |
tree | 33a6ab7b520dc8378c1100b080dd6947d56ec8c0 /gcc/fortran/resolve.c | |
parent | f477062c2ee3410545d9ff4c68bb080ae5c4f8ae (diff) |
Error on Associate with a program.
2018-12-08 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/92780
* resolve.c (resolve_assoc_var): Issue error if the associating
entity is a program.
2018-12-08 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/92780
* gfortran.dg/associate_50.f90: New test.
From-SVN: r279088
Diffstat (limited to 'gcc/fortran/resolve.c')
-rw-r--r-- | gcc/fortran/resolve.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c index 278dad363fd..b437c595500 100644 --- a/gcc/fortran/resolve.c +++ b/gcc/fortran/resolve.c @@ -8842,6 +8842,12 @@ resolve_assoc_var (gfc_symbol* sym, bool resolve_target) gcc_assert (target->symtree); tsym = target->symtree->n.sym; + if (tsym->attr.flavor == FL_PROGRAM) + { + gfc_error ("Associating entity %qs at %L is a PROGRAM", + tsym->name, &target->where); + return; + } sym->attr.asynchronous = tsym->attr.asynchronous; sym->attr.volatile_ = tsym->attr.volatile_; |