[OpenMP, gimplifier] 'inform' after 'error' diagnostic
authorThomas Schwinge <thomas@codesourcery.com>
Thu, 30 Apr 2020 07:07:06 +0000 (09:07 +0200)
committerThomas Schwinge <thomas@codesourcery.com>
Wed, 17 Jun 2020 22:15:24 +0000 (00:15 +0200)
This is not a thorough review of the code, just a few cases I noticed while
scanning 'gcc/gimplify.c' for "enclosing".

gcc/
* gimplify.c (omp_notice_threadprivate_variable)
(omp_default_clause, omp_notice_variable): 'inform' after 'error'
diagnostic.  Adjust all users.
gcc/testsuite/
* c-c++-common/gomp/default-1.c: Update.
* c-c++-common/gomp/defaultmap-3.c: Likewise.
* c-c++-common/gomp/order-4.c: Likewise.
* g++.dg/gomp/parallel-2.C: Likewise.
* g++.dg/gomp/predetermined-1.C: Likewise.
* g++.dg/gomp/sharing-1.C: Likewise.
* gcc.dg/gomp/appendix-a/a.24.1.c: Likewise.
* gcc.dg/gomp/parallel-2.c: Likewise.
* gcc.dg/gomp/pr44085.c: Likewise.
* gcc.dg/gomp/sharing-1.c: Likewise.
* gcc.dg/gomp/vla-1.c: Likewise.
* gfortran.dg/gomp/appendix-a/a.24.1.f90: Likewise.
* gfortran.dg/gomp/crayptr3.f90: Likewise.
* gfortran.dg/gomp/pr33439.f90: Likewise.
* gfortran.dg/gomp/pr44036-1.f90: Likewise.
* gfortran.dg/gomp/pr44085.f90: Likewise.
* gfortran.dg/gomp/pr44536.f90: Likewise.
* gfortran.dg/gomp/pr94672.f90: Likewise.
* gfortran.dg/gomp/sharing-1.f90: Likewise.
* gfortran.dg/gomp/sharing-2.f90: Likewise.
* gfortran.dg/gomp/sharing-3.f90: Likewise.

22 files changed:
gcc/gimplify.c
gcc/testsuite/c-c++-common/gomp/default-1.c
gcc/testsuite/c-c++-common/gomp/defaultmap-3.c
gcc/testsuite/c-c++-common/gomp/order-4.c
gcc/testsuite/g++.dg/gomp/parallel-2.C
gcc/testsuite/g++.dg/gomp/predetermined-1.C
gcc/testsuite/g++.dg/gomp/sharing-1.C
gcc/testsuite/gcc.dg/gomp/appendix-a/a.24.1.c
gcc/testsuite/gcc.dg/gomp/parallel-2.c
gcc/testsuite/gcc.dg/gomp/pr44085.c
gcc/testsuite/gcc.dg/gomp/sharing-1.c
gcc/testsuite/gcc.dg/gomp/vla-1.c
gcc/testsuite/gfortran.dg/gomp/appendix-a/a.24.1.f90
gcc/testsuite/gfortran.dg/gomp/crayptr3.f90
gcc/testsuite/gfortran.dg/gomp/pr33439.f90
gcc/testsuite/gfortran.dg/gomp/pr44036-1.f90
gcc/testsuite/gfortran.dg/gomp/pr44085.f90
gcc/testsuite/gfortran.dg/gomp/pr44536.f90
gcc/testsuite/gfortran.dg/gomp/pr94672.f90
gcc/testsuite/gfortran.dg/gomp/sharing-1.f90
gcc/testsuite/gfortran.dg/gomp/sharing-2.f90
gcc/testsuite/gfortran.dg/gomp/sharing-3.f90

index ab3408f480e623260b46eb1a2614b8cab95d14f9..968fae2f1a3cba5699f2a12875181d56b4550e05 100644 (file)
@@ -7096,13 +7096,13 @@ omp_notice_threadprivate_variable (struct gimplify_omp_ctx *ctx, tree decl,
              {
                error ("threadprivate variable %qE used in a region with"
                       " %<order(concurrent)%> clause", DECL_NAME (decl));
-               error_at (octx->location, "enclosing region");
+               inform (octx->location, "enclosing region");
              }
            else
              {
                error ("threadprivate variable %qE used in target region",
                       DECL_NAME (decl));
-               error_at (octx->location, "enclosing target region");
+               inform (octx->location, "enclosing target region");
              }
            splay_tree_insert (octx->variables, (splay_tree_key)decl, 0);
          }
@@ -7117,7 +7117,7 @@ omp_notice_threadprivate_variable (struct gimplify_omp_ctx *ctx, tree decl,
     {
       error ("threadprivate variable %qE used in untied task",
             DECL_NAME (decl));
-      error_at (ctx->location, "enclosing task");
+      inform (ctx->location, "enclosing task");
       splay_tree_insert (ctx->variables, (splay_tree_key)decl, 0);
     }
   if (decl2)
@@ -7195,7 +7195,7 @@ omp_default_clause (struct gimplify_omp_ctx *ctx, tree decl,
        
        error ("%qE not specified in enclosing %qs",
               DECL_NAME (lang_hooks.decls.omp_report_decl (decl)), rtype);
-       error_at (ctx->location, "enclosing %qs", rtype);
+       inform (ctx->location, "enclosing %qs", rtype);
       }
       /* FALLTHRU */
     case OMP_CLAUSE_DEFAULT_SHARED:
@@ -7476,7 +7476,7 @@ omp_notice_variable (struct gimplify_omp_ctx *ctx, tree decl, bool in_code)
                      tree d = lang_hooks.decls.omp_report_decl (decl);
                      error ("%qE not specified in enclosing %<target%>",
                             DECL_NAME (d));
-                     error_at (ctx->location, "enclosing %<target%>");
+                     inform (ctx->location, "enclosing %<target%>");
                    }
                  else if (ctx->defaultmap[gdmk]
                           & (GOVD_MAP_0LEN_ARRAY | GOVD_FIRSTPRIVATE))
index 6525483c44e75fd1de4e63d4f064f315c3268fc8..eab46892dada40d3d810cbabf78dc059af9f77e9 100644 (file)
@@ -2,20 +2,20 @@ void
 foo (void)
 {
   int x = 0, i;
-  #pragma omp task default(none)       /* { dg-error "enclosing 'task'" } */
+  #pragma omp task default(none)       /* { dg-message "note: enclosing 'task'" } */
   {
     x++;       /* { dg-error "'x' not specified in enclosing 'task'" } */
   }
-  #pragma omp taskloop default(none)   /* { dg-error "enclosing 'taskloop'" } */
+  #pragma omp taskloop default(none)   /* { dg-message "note: enclosing 'taskloop'" } */
   for (i = 0; i < 64; i++)
     {
       x++;     /* { dg-error "'x' not specified in enclosing 'taskloop'" } */
     }
-  #pragma omp teams default(none)      /* { dg-error "enclosing 'teams'" } */
+  #pragma omp teams default(none)      /* { dg-message "note: enclosing 'teams'" } */
   {
     x++;       /* { dg-error "'x' not specified in enclosing 'teams'" } */
   }
-  #pragma omp parallel default(none)   /* { dg-error "enclosing 'parallel'" } */
+  #pragma omp parallel default(none)   /* { dg-message "note: enclosing 'parallel'" } */
   {
     x++;       /* { dg-error "'x' not specified in enclosing 'parallel'" } */
   }
index 2f5b303958f4483f93e272ec1dbefc0a2461d010..8be23fd1473581f71c1291c4d440664456dc9ee7 100644 (file)
@@ -11,7 +11,7 @@ f1 (int sc1, struct S ag1, int *pt1)
 {
   char ar1[N];
   foo (ar1);
-  #pragma omp target defaultmap(default:scalar) defaultmap(to:aggregate) defaultmap(none:pointer)      /* { dg-error "enclosing 'target'" } */
+  #pragma omp target defaultmap(default:scalar) defaultmap(to:aggregate) defaultmap(none:pointer)      /* { dg-message "note: enclosing 'target'" } */
   bar (sc1, ar1, ag1, pt1);    /* { dg-error "'pt1' not specified in enclosing 'target'" } */
 }
 
@@ -20,7 +20,7 @@ f2 (int sc2, struct S ag2, int *pt2)
 {
   char ar2[N];
   foo (ar2);
-  #pragma omp target defaultmap(none:scalar) defaultmap(from:aggregate) defaultmap(default:pointer)    /* { dg-error "enclosing 'target'" } */
+  #pragma omp target defaultmap(none:scalar) defaultmap(from:aggregate) defaultmap(default:pointer)    /* { dg-message "note: enclosing 'target'" } */
   bar (sc2, ar2, ag2, pt2);    /* { dg-error "'sc2' not specified in enclosing 'target'" } */
 }
 
@@ -29,6 +29,6 @@ f3 (int sc3, struct S ag3, int *pt3)
 {
   char ar3[N];
   foo (ar3);
-  #pragma omp target defaultmap(firstprivate:scalar) defaultmap(none:aggregate) defaultmap(to:pointer) /* { dg-error "enclosing 'target'" } */
+  #pragma omp target defaultmap(firstprivate:scalar) defaultmap(none:aggregate) defaultmap(to:pointer) /* { dg-message "note: enclosing 'target'" } */
   bar (sc3, ar3, ag3, pt3);    /* { dg-error "'ar3' not specified in enclosing 'target'" } */
 }                              /* { dg-error "'ag3' not specified in enclosing 'target'" "" { target *-*-* } .-1 } */
index f916772ceea7f6043f0835815dd785e69360faf8..d1109bb13b3b7bac88df9f835ed0add9b556e198 100644 (file)
@@ -5,7 +5,7 @@ void
 f1 (void)
 {
   int i;
-  #pragma omp simd order(concurrent)   /* { dg-error "enclosing region" } */
+  #pragma omp simd order(concurrent)   /* { dg-message "note: enclosing region" } */
   for (i = 0; i < 64; i++)
     t++;       /* { dg-error "threadprivate variable 't' used in a region with 'order\\(concurrent\\)' clause" } */
 }
@@ -14,8 +14,8 @@ void
 f2 (void)
 {
   int i;
-  #pragma omp for simd order(concurrent)       /* { dg-error "enclosing region" } */
-  for (i = 0; i < 64; i++)                     /* { dg-error "enclosing region" "" { target c++ } } */
+  #pragma omp for simd order(concurrent)       /* { dg-message "note: enclosing region" } */
+  for (i = 0; i < 64; i++)                     /* { dg-message "note: enclosing region" "" { target c++ } } */
     t++;       /* { dg-error "threadprivate variable 't' used in a region with 'order\\(concurrent\\)' clause" } */
 }
 
@@ -23,7 +23,7 @@ void
 f3 (void)
 {
   int i;
-  #pragma omp for order(concurrent)    /* { dg-error "enclosing region" } */
+  #pragma omp for order(concurrent)    /* { dg-message "note: enclosing region" } */
   for (i = 0; i < 64; i++)
     t++;       /* { dg-error "threadprivate variable 't' used in a region with 'order\\(concurrent\\)' clause" } */
 }
index 68e577766b1f481a39f1bb1c117d5faab4cca3c8..38875ad94ed6a674f0a609a18de821dac03a8dae 100644 (file)
@@ -4,11 +4,11 @@ void foo()
 {
   int i;
 
-  #pragma omp parallel default(none)           // { dg-error "enclosing" }
+  #pragma omp parallel default(none)           // { dg-message "note: enclosing 'parallel'" }
     {
     #pragma omp parallel
       {
-      #pragma omp parallel default(none)       // { dg-error "enclosing" }
+      #pragma omp parallel default(none)       // { dg-message "note: enclosing 'parallel'" }
         {
          i++;                                  // { dg-error "not specified" }
        }
index 084f04ec90f253cf9980cb5963c6c8459de90c02..74cd74febdfb28e0e6dc5035e632d5fd95d7173f 100644 (file)
@@ -15,19 +15,19 @@ const A foo (const A d, const C e)
   const A f;
   const B b = { 4 };
   A g;
-  #pragma omp parallel default (none)  // { dg-error "enclosing 'parallel'" }
+  #pragma omp parallel default (none)  // { dg-message "note: enclosing 'parallel'" }
     bar (&a);                          // { dg-error "not specified" }
-  #pragma omp parallel default (none)  // { dg-error "enclosing 'parallel'" }
+  #pragma omp parallel default (none)  // { dg-message "note: enclosing 'parallel'" }
     bar (&b);                          // { dg-error "not specified" }
-  #pragma omp parallel default (none)  // { dg-error "enclosing 'parallel'" }
+  #pragma omp parallel default (none)  // { dg-message "note: enclosing 'parallel'" }
     bar (&c);                          // { dg-error "not specified" }
-  #pragma omp parallel default (none)  // { dg-error "enclosing 'parallel'" }
+  #pragma omp parallel default (none)  // { dg-message "note: enclosing 'parallel'" }
     bar (&d);                          // { dg-error "not specified" }
-  #pragma omp parallel default (none)  // { dg-error "enclosing 'parallel'" }
+  #pragma omp parallel default (none)  // { dg-message "note: enclosing 'parallel'" }
     bar (&e);                          // { dg-error "not specified" }
-  #pragma omp parallel default (none)  // { dg-error "enclosing 'parallel'" }
+  #pragma omp parallel default (none)  // { dg-message "note: enclosing 'parallel'" }
     bar (&f);                          // { dg-error "not specified" }
-  #pragma omp parallel default (none)  // { dg-error "enclosing 'parallel'" }
+  #pragma omp parallel default (none)  // { dg-message "note: enclosing 'parallel'" }
     bar (&g);                          // { dg-error "not specified" }
   return f;
 }
index ac6908b68ac5d58ca2b09dd476c242df119e943d..4506170c2471df9e0037becee4c532f84017c5e5 100644 (file)
@@ -52,7 +52,7 @@ main (void)
   *p = 7;
   s = 6;
   l = 0;
-#pragma omp parallel for /* { dg-error "enclosing 'parallel'" } */ \
+#pragma omp parallel for /* { dg-message "note: enclosing 'parallel'" } */ \
   default (none) private (p) shared (s) 
   for (i = 0; i < 64; i++)
     {
index 099f03fe89d3ec4a296aec8324fa4c275b4296bc..47b2511508e495b12a9d3f4fbc7d9d1ea5b68d7b 100644 (file)
@@ -21,7 +21,7 @@ a24 (int a)
                                              is listed in shared clause */
     z[i] = y;
     /* { dg-error "'i' not specified" "" { target *-*-* } .-1 } */
-    /* { dg-error "enclosing 'parallel'" "" { target *-*-* } omp_parallel } */
+    /* { dg-message "note: enclosing 'parallel'" "" { target *-*-* } omp_parallel } */
     /* { dg-error "'y' not specified" "" { target *-*-* } .-3 }  */
 #pragma omp for firstprivate(y)
     for (i = 0; i < 10; i++)
index 68e577766b1f481a39f1bb1c117d5faab4cca3c8..b2d653db9e2a88f5c508e598273522ce53327bbd 100644 (file)
@@ -4,11 +4,11 @@ void foo()
 {
   int i;
 
-  #pragma omp parallel default(none)           // { dg-error "enclosing" }
+  #pragma omp parallel default(none)           // { dg-message "note: enclosing 'parallel'" }
     {
     #pragma omp parallel
       {
-      #pragma omp parallel default(none)       // { dg-error "enclosing" }
+      #pragma omp parallel default(none)       // { dg-message: "note: enclosing 'parallel'" }
         {
          i++;                                  // { dg-error "not specified" }
        }
index 55462abe504eb241a885a6ad3f95e5647d1b9efb..3f3441bde88c12d5f073653bd6c19314808c1039 100644 (file)
@@ -9,7 +9,7 @@ int thr1, thr2;
 void
 foo (void)
 {
-#pragma omp task untied        /* { dg-error "enclosing task" } */
+#pragma omp task untied        /* { dg-message "note: enclosing task" } */
   {
     thr1++;            /* { dg-error "used in untied task" } */
     thr2 |= 4;         /* { dg-error "used in untied task" } */
index 79abb64cdd7fd6d0c3c66f22f43dcd6f574f8868..2c6b01779d189a934c9f201b605201ece486ba15 100644 (file)
@@ -35,7 +35,7 @@ main (void)
   *p = 7;
   s = 6;
   l = 0;
-#pragma omp parallel for /* { dg-error "enclosing 'parallel'" } */ \
+#pragma omp parallel for /* { dg-message "note: enclosing 'parallel'" } */ \
   default (none) private (p) shared (s) 
   for (i = 0; i < 64; i++)
     {
index bb37f33e60f747d6a20e1d1bf654632b81abfd5e..dd42b9a07521713df6cea5d63936c1382ce69833 100644 (file)
@@ -4,7 +4,7 @@ void foo(int n)
 {
   int A[n];
 
-  #pragma omp parallel default(none)   // { dg-error "enclosing" }
+  #pragma omp parallel default(none)   // { dg-message "note: enclosing 'parallel'" }
     {
       A[0] = 0;                                // { dg-error "'A' not specified" }
     }
index 52a2cbb82da919c5d55e7c1762185b7aeb9682dc..3837aab6cca750eb496c9140e7eaba945bb56e60 100644 (file)
@@ -19,7 +19,7 @@
       X=1      ! O.K. - X is THREADPRIVATE
       Z(I) = Y ! Error - cannot reference I or Y here
 ! { dg-error "'i' not specified" "" { target *-*-* } .-1 } */
-! { dg-error "enclosing 'parallel'" "" { target *-*-* } omp_parallel } */
+! { dg-message "note: enclosing 'parallel'" "" { target *-*-* } omp_parallel } */
 ! { dg-error "'y' not specified" "" { target *-*-* } .-3 }  */
 !$OMP DO firstprivate(y)
       DO I = 1,10
index 15bf864997f431a262ece33abc2cb6da6c31ec2f..9a28bbc3cf23aa63452cb9375bd279b2ff1cbf22 100644 (file)
@@ -16,7 +16,7 @@
   a = 1
 !$omp end parallel
 
-!$omp parallel default (none)  ! { dg-error "enclosing 'parallel'" }
+!$omp parallel default (none)  ! { dg-message "note: enclosing 'parallel'" }
   a = 1                ! { dg-error "'ip' not specified in enclosing 'parallel'" }
 !$omp end parallel
 end
index 42fa22184b34c2a8804678001564fe180e5fb620..12a73d22d1af3535d7ddb9792a6832f1fe16e53c 100644 (file)
@@ -5,7 +5,7 @@
 subroutine pr33439_1
   integer :: s, i
   s = 4
-!$omp parallel default(none)   ! { dg-error "enclosing 'parallel'" }
+!$omp parallel default(none)   ! { dg-message "note: enclosing 'parallel'" }
   call somethingelse
 !$omp do schedule(static, s)   ! { dg-error "not specified in enclosing 'parallel'" }
   do i = 1, 8
@@ -18,7 +18,7 @@ end subroutine pr33439_1
 subroutine pr33439_2
   integer :: s, i
   s = 4
-!$omp parallel default(none)   ! { dg-error "enclosing 'parallel'" }
+!$omp parallel default(none)   ! { dg-message "note: enclosing 'parallel'" }
 !$omp do schedule(static, s)   ! { dg-error "not specified in enclosing 'parallel'" }
   do i = 1, 8
     call something
@@ -30,7 +30,8 @@ end subroutine pr33439_2
 subroutine pr33439_3
   integer :: s, i
   s = 4
-!$omp parallel do default(none) schedule(static, s) ! { dg-error "enclosing 'parallel'" }
+!$omp parallel do default(none) schedule(static, s)    ! { dg-message "note: enclosing 'parallel'" }
+!                                                      ! { dg-error "'s' not specified in enclosing 'parallel'" "" { target *-*-* } .-1 }
   do i = 1, 8
     call something
   end do
index 1caa93df8c3d10463f0dd32e2d26dc241b25e964..ef90d132653629ee09639f6a8a68f63237628420 100644 (file)
@@ -11,14 +11,14 @@ subroutine foo(a, b)
 !$omp parallel default(none) private (x)
   x = a(4)
 !$omp end parallel
-!$omp parallel default(none) private (x)       ! { dg-error "enclosing 'parallel'" }
+!$omp parallel default(none) private (x)       ! { dg-message "note: enclosing 'parallel'" }
   x = b(5)                                     ! { dg-error "not specified in" }
 !$omp end parallel
 !$omp parallel default(none) private (x)
   x = c(6)
 !$omp end parallel
   d => a
-!$omp parallel default(none) private (x)       ! { dg-error "enclosing 'parallel'" }
+!$omp parallel default(none) private (x)       ! { dg-message "note: enclosing 'parallel'" }
   x = d(7)                                     ! { dg-error "not specified in" }
 !$omp end parallel
 end
index db8fbbc9544f0d0a628a8a1406adccb3b39e2f5e..90094d6ef47edf07b6ad7fcab7752366bd195746 100644 (file)
@@ -8,7 +8,7 @@
   common /thrs/ thr3, thr4
 !$omp threadprivate (thr1, thr2, /thrs/)
 
-!$omp task untied              ! { dg-error "enclosing task" }
+!$omp task untied              ! { dg-message "note: enclosing task" }
   thr1 = thr1 + 1              ! { dg-error "used in untied task" }
   thr2 = thr2 + 2              ! { dg-error "used in untied task" }
   thr3 = thr3 + 3              ! { dg-error "used in untied task" }
index 4fcf5d1102b6bd48c664c344d720ca31ec8220d4..c1d83cdeae517899946499fe39b01e0e126c66f8 100644 (file)
@@ -4,7 +4,7 @@
       subroutine foo (a, i, j)
         integer, dimension(:) :: a
         integer :: i, j
-!$omp parallel default(none) shared(i, j)      ! { dg-error "enclosing 'parallel'" }
+!$omp parallel default(none) shared(i, j)      ! { dg-message "note: enclosing 'parallel'" }
         j=a(i)                                 ! { dg-error "not specified in" }
 !$omp end parallel
       end subroutine
index 7b89c5df2499e13a20fef54dfc3e7b614468c947..d1b066ca1efdf1e524d9df274fbe0df3d1215f33 100644 (file)
@@ -93,35 +93,35 @@ end subroutine
 
 subroutine w1 (array)
   real, optional :: array(:)
-  !$omp parallel default(none)     ! { dg-error "enclosing 'parallel'" }
+  !$omp parallel default(none)     ! { dg-message "note: enclosing 'parallel'" }
   if (.not.present (array)) stop 1 ! { dg-error "'array' not specified in enclosing 'parallel'" }
   !$omp end parallel
 end subroutine
 
 subroutine w2 (array2)
   real, optional :: array2(*)
-  !$omp parallel default(none)      ! { dg-error "enclosing 'parallel'" "TODO" { xfail *-*-* } }
+  !$omp parallel default(none)      ! { dg-message "note: enclosing 'parallel'" "TODO" { xfail *-*-* } }
   if (.not.present (array2)) stop 2 ! { dg-error "'array2' not specified in enclosing 'parallel'" "TODO" { xfail *-*-* } }
   !$omp end parallel
 end subroutine
 
 subroutine w3 (arg)
   real, optional :: arg
-  !$omp parallel default(none)    ! { dg-error "enclosing 'parallel'" }
+  !$omp parallel default(none)    ! { dg-message "note: enclosing 'parallel'" }
   if (.not.present (arg)) stop 3  ! { dg-error "'arg' not specified in enclosing 'parallel'" }
   !$omp end parallel
 end subroutine
 
 subroutine w4 (arg2)
   real, value, optional :: arg2
-  !$omp parallel default(none)     ! { dg-error "enclosing 'parallel" "TODO" { xfail *-*-* } }
+  !$omp parallel default(none)     ! { dg-message "note: enclosing 'parallel" "TODO" { xfail *-*-* } }
   if (.not.present (arg2)) stop 4  ! { dg-error "'arg2' not specified in enclosing 'parallel'" "TODO" { xfail *-*-*} }
   !$omp end parallel
 end subroutine
 
 subroutine w5 (array3)
   real, optional :: array3(..)
-  !$omp parallel default(none)      ! { dg-error "enclosing 'parallel'" }
+  !$omp parallel default(none)      ! { dg-message "note: enclosing 'parallel'" }
   if (.not.present (array3)) stop 5 ! { dg-error "'array3' not specified in enclosing 'parallel'" }
   !$omp end parallel
 end subroutine
index ad9149ebe39d26cbc9cd138a7814d4a69b78b376..f4958b81d6ce265a29a6dc7d3f948cdbbed1c50f 100644 (file)
@@ -9,7 +9,7 @@
 !$omp threadprivate (/thrblk/, thrpriv)
   s = 1
 !$omp parallel do default (none) &
-!$omp & private (p) shared (s) ! { dg-error "enclosing 'parallel'" }
+!$omp & private (p) shared (s) ! { dg-message "note: enclosing 'parallel'" }
   do i = 1, 64
     call foo (thrpriv) ! Predetermined - threadprivate
     call foo (thr)     ! Predetermined - threadprivate
index bf5519070d44d51a83ff4d5e9d9e41995fc3038d..acc8d37771c72b5e8103ea1d869eba5da50eaa35 100644 (file)
@@ -9,7 +9,7 @@
     j = 8
   end do
 !$omp end parallel do
-!$omp parallel default (none) shared (a) ! { dg-error "enclosing 'parallel'" }
+!$omp parallel default (none) shared (a) ! { dg-message "note: enclosing 'parallel'" }
   i = 1
   j = 1
   k = 1
@@ -28,7 +28,7 @@
   end do
 !$omp end single
 !$omp end parallel
-!$omp parallel default (none) shared (a) ! { dg-error "enclosing 'parallel'" }
+!$omp parallel default (none) shared (a) ! { dg-message "note: enclosing 'parallel'" }
   i = 1                ! { dg-error "not specified in" }
   j = 1                ! { dg-error "not specified in" }
   k = 1                ! { dg-error "not specified in" }
   j = 1
   k = 1
 !$omp end parallel
-!$omp parallel default (none) shared (a) ! { dg-error "enclosing 'parallel'" }
+!$omp parallel default (none) shared (a) ! { dg-message "note: enclosing 'parallel'" }
   i = 1                ! { dg-error "not specified in" }
 !$omp do
   do i = 1, 10
     a(i, 1) = i + 1
   end do
 !$omp end parallel
-!$omp parallel default (none) shared (a) ! { dg-error "enclosing 'parallel'" }
+!$omp parallel default (none) shared (a) ! { dg-message "note: enclosing 'parallel'" }
   i = 1                ! { dg-error "not specified in" }
 !$omp parallel do default (none) shared (a)
   do i = 1, 10
     a(i, 1) = i + 1
   end do
 !$omp end parallel
-!$omp parallel default (none) shared (a) ! { dg-error "enclosing 'parallel'" }
+!$omp parallel default (none) shared (a) ! { dg-message "note: enclosing 'parallel'" }
   i = 1                ! { dg-error "not specified in" }
 !$omp parallel default (none) shared (a, i)
   i = 2
index 221ec002371230df2355c6ea5b90eccf8ee9c633..a9abc7b5a333071920d6223d604b4312f23eb5e1 100644 (file)
@@ -25,7 +25,7 @@ subroutine foo (vara, varb, varc, vard, n)
     vard(1) = 1
     vare(1) = 1
   !$omp end parallel
-  !$omp parallel default(none) ! { dg-error "enclosing 'parallel'" }
+  !$omp parallel default(none) ! { dg-message "note: enclosing 'parallel'" }
     !$omp master
       vara(1) = 1              ! { dg-error "not specified" }
       varb(1) = 1              ! Assumed-size is predetermined