diff options
Diffstat (limited to 'gcc/fortran/openmp.c')
-rw-r--r-- | gcc/fortran/openmp.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/fortran/openmp.c b/gcc/fortran/openmp.c index 983b83d..9fc2367 100644 --- a/gcc/fortran/openmp.c +++ b/gcc/fortran/openmp.c @@ -2391,6 +2391,8 @@ gfc_match_oacc_routine (void) if (add) { + sym->attr.oacc_routine_lop = lop; + n = gfc_get_oacc_routine_name (); n->sym = sym; n->clauses = c; @@ -6085,6 +6087,12 @@ gfc_resolve_oacc_routines (gfc_namespace *ns) " in !$ACC ROUTINE ( NAME ) at %L", sym->name, &orn->loc); continue; } + if (!gfc_add_omp_declare_target (&sym->attr, sym->name, &orn->loc)) + { + gfc_error ("NAME %qs invalid" + " in !$ACC ROUTINE ( NAME ) at %L", sym->name, &orn->loc); + continue; + } } } |