re PR fortran/80010 (diagnostics: typo $!)
authorJakub Jelinek <jakub@redhat.com>
Thu, 16 Mar 2017 16:50:27 +0000 (17:50 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 16 Mar 2017 16:50:27 +0000 (17:50 +0100)
PR fortran/80010
* parse.c (gfc_ascii_statement): Use !$ACC for ST_OACC_ATOMIC
and ST_OACC_END_ATOMIC, instead of !ACC.
* trans-decl.c (finish_oacc_declare): Use !$ACC instead of $!ACC.
* openmp.c (gfc_match_oacc_declare, gfc_match_oacc_wait,
gfc_resolve_oacc_declare): Likewise.

* gfortran.dg/goacc/asyncwait-3.f95: Adjust expected diagnostic.

From-SVN: r246204

gcc/fortran/ChangeLog
gcc/fortran/openmp.c
gcc/fortran/parse.c
gcc/fortran/trans-decl.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/goacc/asyncwait-3.f95

index b617d45ca86b775061b39150950576af9972d846..ffad6187e5efd5046de84753c70d3b3c3fcbb9f9 100644 (file)
@@ -1,5 +1,12 @@
 2017-03-16  Jakub Jelinek  <jakub@redhat.com>
 
+       PR fortran/80010
+       * parse.c (gfc_ascii_statement): Use !$ACC for ST_OACC_ATOMIC
+       and ST_OACC_END_ATOMIC, instead of !ACC.
+       * trans-decl.c (finish_oacc_declare): Use !$ACC instead of $!ACC.
+       * openmp.c (gfc_match_oacc_declare, gfc_match_oacc_wait,
+       gfc_resolve_oacc_declare): Likewise.
+
        PR fortran/79886
        * error.c (gfc_format_decoder): Rename plus argument to set_locus,
        remove ATTRIBUTE_UNUSED from all arguments, call default_tree_printer
index 753dc5ada592e321ba1ef2862ed8d08b2d2aa13e..46f8952a1794639358eb27e7c98c4460a2c44ea1 100644 (file)
@@ -2059,7 +2059,7 @@ gfc_match_oacc_declare (void)
          if (n->u.map_op != OMP_MAP_FORCE_ALLOC
              && n->u.map_op != OMP_MAP_FORCE_TO)
            {
-             gfc_error ("Invalid clause in module with $!ACC DECLARE at %L",
+             gfc_error ("Invalid clause in module with !$ACC DECLARE at %L",
                         &where);
              return MATCH_ERROR;
            }
@@ -2069,7 +2069,7 @@ gfc_match_oacc_declare (void)
 
       if (s->attr.use_assoc)
        {
-         gfc_error ("Variable is USE-associated with $!ACC DECLARE at %L",
+         gfc_error ("Variable is USE-associated with !$ACC DECLARE at %L",
                     &where);
          return MATCH_ERROR;
        }
@@ -2077,7 +2077,7 @@ gfc_match_oacc_declare (void)
       if ((s->attr.dimension || s->attr.codimension)
          && s->attr.dummy && s->as->type != AS_EXPLICIT)
        {
-         gfc_error ("Assumed-size dummy array with $!ACC DECLARE at %L",
+         gfc_error ("Assumed-size dummy array with !$ACC DECLARE at %L",
                     &where);
          return MATCH_ERROR;
        }
@@ -2172,7 +2172,7 @@ gfc_match_oacc_wait (void)
       {
        if (el->expr == NULL)
          {
-           gfc_error ("Invalid argument to $!ACC WAIT at %L",
+           gfc_error ("Invalid argument to !$ACC WAIT at %L",
                       &wait_list->expr->where);
            return MATCH_ERROR;
          }
@@ -5985,7 +5985,7 @@ gfc_resolve_oacc_declare (gfc_namespace *ns)
            if (n->expr && n->expr->ref->type == REF_ARRAY)
              {
                gfc_error ("Array sections: %qs not allowed in"
-                          " $!ACC DECLARE at %L", n->sym->name, &oc->loc);
+                          " !$ACC DECLARE at %L", n->sym->name, &oc->loc);
                continue;
              }
          }
index 28fa218b2fc17739010ea06286a38654024bba3f..305a036a71ea5df0fdaac5fae8c2bf37f1fde019 100644 (file)
@@ -2128,10 +2128,10 @@ gfc_ascii_statement (gfc_statement st)
       p = "!$ACC ROUTINE";
       break;
     case ST_OACC_ATOMIC:
-      p = "!ACC ATOMIC";
+      p = "!$ACC ATOMIC";
       break;
     case ST_OACC_END_ATOMIC:
-      p = "!ACC END ATOMIC";
+      p = "!$ACC END ATOMIC";
       break;
     case ST_OMP_ATOMIC:
       p = "!$OMP ATOMIC";
index 449ca9a84dadf55892b00cf44502773fb105ae4a..efff9a15ac34b1607323496fbca18f0e572a4011 100644 (file)
@@ -6133,7 +6133,7 @@ finish_oacc_declare (gfc_namespace *ns, gfc_symbol *sym, bool block)
        continue;
 
       if (block)
-       gfc_error ("Sorry, $!ACC DECLARE at %L is not allowed "
+       gfc_error ("Sorry, !$ACC DECLARE at %L is not allowed "
                   "in BLOCK construct", &oc->loc);
 
 
index 2fbdeb581ad122bf1746dc0ccc6cbfd9cb75511a..d32307fc4a55466500470c2935b88af37a56a58a 100644 (file)
@@ -1,5 +1,8 @@
 2017-03-16  Jakub Jelinek  <jakub@redhat.com>
 
+       PR fortran/80010
+       * gfortran.dg/goacc/asyncwait-3.f95: Adjust expected diagnostic.
+
        PR fortran/79886
        * gfortran.dg/pr79886.f90: New test.
 
index ed72a9ba28a5653e7a2c592b98a77db650d57775..5c55c36e0acc9bc9e8ba17f912fe4e3b856140f5 100644 (file)
@@ -23,7 +23,7 @@ program asyncwait
 
   !$acc wait (1 ! { dg-error "Syntax error in OpenACC expression list at" }
 
-  !$acc wait (1, *) ! { dg-error "Invalid argument to \\\$\\\!ACC WAIT" }
+  !$acc wait (1, *) ! { dg-error "Invalid argument to \\\!\\\$ACC WAIT" }
 
   !$acc wait (1, a) ! { dg-error "WAIT clause at \\\(1\\\) requires a scalar INTEGER expression" }