From 1309f1d25bc90fb607679fab4e4af9386f641951 Mon Sep 17 00:00:00 2001
From: James Norris <jnorris@codesourcery.com>
Date: Thu, 30 Apr 2015 12:44:39 +0000
Subject: [PATCH] [PR testsuite/65205] Fix dg-shouldfail usage in OpenACC
 libgomp tests

	PR testsuite/65205
	libgomp/
	* testsuite/lib/libgomp.exp
	(check_effective_target_openacc_host_selected)
	(check_effective_target_openacc_host_nonshm_selected): New
	procedures.
	* testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Fix misuse of
	dg-shouldfail.
	* testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
	* testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.

From-SVN: r222620
---
 libgomp/ChangeLog                             | 53 +++++++++++++++++++
 libgomp/testsuite/lib/libgomp.exp             | 20 +++++++
 .../libgomp.oacc-c-c++-common/clauses-2.c     |  3 +-
 .../libgomp.oacc-c-c++-common/lib-1.c         |  3 +-
 .../libgomp.oacc-c-c++-common/lib-11.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-16.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-17.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-18.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-2.c         |  3 +-
 .../libgomp.oacc-c-c++-common/lib-20.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-21.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-22.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-23.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-25.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-26.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-27.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-28.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-29.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-3.c         |  3 +-
 .../libgomp.oacc-c-c++-common/lib-30.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-34.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-35.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-36.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-39.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-4.c         |  3 +-
 .../libgomp.oacc-c-c++-common/lib-40.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-42.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-43.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-44.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-47.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-48.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-52.c        |  4 +-
 .../libgomp.oacc-c-c++-common/lib-53.c        |  4 +-
 .../libgomp.oacc-c-c++-common/lib-54.c        |  4 +-
 .../libgomp.oacc-c-c++-common/lib-57.c        |  4 +-
 .../libgomp.oacc-c-c++-common/lib-58.c        |  4 +-
 .../libgomp.oacc-c-c++-common/lib-62.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-63.c        |  5 +-
 .../libgomp.oacc-c-c++-common/lib-64.c        |  5 +-
 .../libgomp.oacc-c-c++-common/lib-65.c        |  5 +-
 .../libgomp.oacc-c-c++-common/lib-67.c        |  5 +-
 .../libgomp.oacc-c-c++-common/lib-68.c        |  5 +-
 .../libgomp.oacc-c-c++-common/lib-71.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-77.c        |  3 +-
 .../libgomp.oacc-c-c++-common/lib-80.c        |  3 +-
 .../libgomp.oacc-c-c++-common/present-1.c     |  3 +-
 46 files changed, 171 insertions(+), 49 deletions(-)

diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index 4b0a1c91be67..1621b90be709 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,56 @@
+2015-04-30  James Norris  <jnorris@codesourcery.com>
+
+	PR testsuite/65205
+	* testsuite/lib/libgomp.exp
+	(check_effective_target_openacc_host_selected)
+	(check_effective_target_openacc_host_nonshm_selected): New
+	procedures.
+	* testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Fix misuse of
+	dg-shouldfail.
+	* testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
+	* testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
+
 2015-04-08  Julian Brown  <julian@codesourcery.com>
 
 	* libgomp.h (target_mem_desc: Remove mem_map field.
diff --git a/libgomp/testsuite/lib/libgomp.exp b/libgomp/testsuite/lib/libgomp.exp
index 5a6eec12352d..438777f1fc4b 100644
--- a/libgomp/testsuite/lib/libgomp.exp
+++ b/libgomp/testsuite/lib/libgomp.exp
@@ -345,3 +345,23 @@ proc check_effective_target_openacc_nvidia_accel_selected { } {
     }
     return 0;
 }
+
+# Return 1 if the host target is selected for offloaded
+
+proc check_effective_target_openacc_host_selected { } {
+    global offload_target_openacc
+    if { $offload_target_openacc == "host" } {
+        return 1;
+    }
+    return 0;
+}
+
+# Return 1 if the host_nonshm target is selected for offloaded
+
+proc check_effective_target_openacc_host_nonshm_selected { } {
+    global offload_target_openacc
+    if { $offload_target_openacc == "host_nonshm" } {
+        return 1;
+    }
+    return 0;
+}
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/clauses-2.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/clauses-2.c
index 8dc45cb6287e..fec2214207b5 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/clauses-2.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/clauses-2.c
@@ -64,4 +64,5 @@ main (int argc, char **argv)
 
     return 0;
 }
-/* { dg-shouldfail "libgomp: \[\h+,\d+\] is not mapped" } */
+/* { dg-output "Trying to map into device \\\[0x\[0-9a-f\]+..0x\[0-9a-f\]+\\\) object when \\\[0x\[0-9a-f\]+..0x\[0-9a-f\]+\\\) is already mapped" }
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-1.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-1.c
index 17129d8bebdc..5ff23b24190f 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-1.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-1.c
@@ -21,4 +21,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: device already active" } */
+/* { dg-output "device already active" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-11.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-11.c
index eccdb8cbacf0..e34a876e0d0d 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-11.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-11.c
@@ -20,4 +20,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: mem free failed 1" } */
+/* { dg-output "invalid device address" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-16.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-16.c
index 9d277ac39f7b..ad73bd76452f 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-16.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-16.c
@@ -26,4 +26,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,\+256\] already mapped to \[\h+,\+256\]" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,\\\+256\\\] already mapped to \\\[0x\[0-9a-f\]+,\\\+256\\\]" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-17.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-17.c
index 5ff894cb33ab..b568775e52a5 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-17.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-17.c
@@ -28,4 +28,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,256\] is not mapped" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,256\\\] is not mapped" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-18.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-18.c
index 2bc32637d36b..33ebce9b9720 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-18.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-18.c
@@ -31,4 +31,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,256\] is not mapped" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,256\\\] is not mapped" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-2.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-2.c
index 9a4501f0e009..b16e9e6bdbce 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-2.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-2.c
@@ -23,4 +23,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: no device initialized" } */
+/* { dg-output "no device initialized" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-20.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-20.c
index b379a8f7add9..aaab2ecb1440 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-20.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-20.c
@@ -26,4 +26,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,256\] surounds2 \[\h+,\+257\]" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,256\\\] surrounds2 \\\[0x\[0-9a-f\]+,\\\+257\\\]" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-21.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-21.c
index 3a67400a6201..5bd90784b38d 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-21.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-21.c
@@ -26,4 +26,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,0\] is not mapped" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,0\\\] is not mapped" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-22.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-22.c
index 2b86da805800..638180e64277 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-22.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-22.c
@@ -26,4 +26,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,256\] surrounds2 \[\h+,\+255\]" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,256\\\] surrounds2 \\\[0x\[0-9a-f\]+,\\\+255\\\]" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-23.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-23.c
index 38f236dcea90..54dd0f33e9b1 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-23.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-23.c
@@ -36,4 +36,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,256\] surrounds2 \[\h+,\+512\]" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,256\\\] surrounds2 \\\[0x\[0-9a-f\]+,\\\+512\\\]" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-25.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-25.c
index 11458283b2cf..76f191165b7a 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-25.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-25.c
@@ -27,4 +27,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,256\] already mapped to \[\h+,256\]" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,\\\+256\\\] already mapped to \\\[0x\[0-9a-f\]+,\\\+256\\\]" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-26.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-26.c
index a23f56e753fb..cdbc38ed9776 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-26.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-26.c
@@ -23,4 +23,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,\+0\] is a bad range" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,\\\+0\\\] is a bad range" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-27.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-27.c
index 074fddb2ab70..0edec6f848e7 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-27.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-27.c
@@ -23,4 +23,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\(nil\)\] is a bad range" } */
+/* { dg-output "\\\[\\\(nil\\\),\\\+256\\\] is a bad range" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-28.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-28.c
index 027f7cc6460d..453763d865e3 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-28.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-28.c
@@ -23,4 +23,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\(nil\),256\] is not mapped" } */
+/* { dg-output "\\\[\\\(nil\\\),256\\\] is not mapped" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-29.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-29.c
index a66de0f538de..b3326ea0f492 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-29.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-29.c
@@ -23,4 +23,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,0\] is not mapped" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,0\\\] is not mapped" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-3.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-3.c
index e823a4153fa5..bb76c826fb69 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-3.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-3.c
@@ -12,4 +12,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: device 4(4) is initialized" } */
+/* { dg-output "device \[0-9\]+\\\(\[0-9\]+\\\) is initialized" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-30.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-30.c
index ce2bdb447396..3176e24a3851 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-30.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-30.c
@@ -23,4 +23,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,256\] surrounds2 \[\h+,\+254\]" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,256\\\] surrounds2 \\\[0x\[0-9a-f\]+,\\\+254\\\]" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-34.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-34.c
index 32d5d5117e61..cbe938f9c312 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-34.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-34.c
@@ -30,4 +30,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,\+256\] not mapped" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,\\\+256\\\] not mapped" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-35.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-35.c
index ca8edab52a2c..4fe15daf3e02 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-35.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-35.c
@@ -23,4 +23,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\(nil\),+256\] is a bad range" } */
+/* { dg-output "\\\[\\\(nil\\\),\\\+256\\\] is a bad range" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-36.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-36.c
index cb29397e14e8..0fd296a284f1 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-36.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-36.c
@@ -23,4 +23,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,\+0\] is a bad range" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,\\\+0\\\] is a bad range" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-39.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-39.c
index db1e0b3ffd5b..e8caa38248e9 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-39.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-39.c
@@ -38,4 +38,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\(nil\),+256\] is a bad range" } */
+/* { dg-output "\\\[\\\(nil\\\),\\\+256\\\] is a bad range" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-4.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-4.c
index 060275b999bd..35f94403735b 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-4.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-4.c
@@ -10,4 +10,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: device 99 is out of range" } */
+/* { dg-output "device \[0-9\]+ out of range" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-40.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-40.c
index cb6c422872ed..0a6607beb88c 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-40.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-40.c
@@ -39,4 +39,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,\+0\] is a bad range" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,\\\+0\\\] is a bad range" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-42.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-42.c
index d577fe37e53d..cb5a7b24770f 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-42.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-42.c
@@ -32,4 +32,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,256\] is not mapped" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,256\\\] is not mapped" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-43.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-43.c
index ceeb155fe448..2c2220d2a79b 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-43.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-43.c
@@ -42,4 +42,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\(nil\),256\] is not mapped" } */
+/* { dg-output "\\\[\\\(nil\\\),256\\\] is not mapped" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-44.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-44.c
index 0cabb0d31d97..05d30525e71f 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-44.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-44.c
@@ -42,4 +42,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,0\] is not mapped" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,0\\\] is not mapped" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-47.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-47.c
index a7ff904c97c5..c217bc094ef9 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-47.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-47.c
@@ -40,4 +40,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\(nil\),256\] is not mapped" } */
+/* { dg-output "\\\[\\\(nil\\\),256\\\] is not mapped" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-48.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-48.c
index 01d3c6c82803..1dce1975b961 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-48.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-48.c
@@ -40,4 +40,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,0\] is not mapped" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,0\\\] is not mapped" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-52.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-52.c
index 780db310fa1a..782e26779d0b 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-52.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-52.c
@@ -25,4 +25,6 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[(nil),+256\]->\[\h+,\+256\] is a bad map" } */
+/* { dg-output "\\\[\\\(nil\\\),\\\+256\]->\[0x\[0-9a-f\]+,\\\+256\\\] is a bad map" { target openacc_nvidia_accel_selected } } */
+/* { dg-output "cannot map data on shared-memory system" { target openacc_host_selected } } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-53.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-53.c
index 657adde3b025..7e0a288194b7 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-53.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-53.c
@@ -25,4 +25,6 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,\+256\]->\[(nil),\+256\] is a bad map" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,\\\+256\]->\\\[\\\(nil\\\),\\\+256\\\] is a bad map" { target openacc_nvidia_accel_selected } } */
+/* { dg-output "cannot map data on shared-memory system" { target openacc_host_selected } } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-54.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-54.c
index 1f3df80bd418..fa35a05356a1 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-54.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-54.c
@@ -25,4 +25,6 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \[\h+,\+0\]->\[\h+,\+0\] is a bad map" } */
+/* { dg-output "\\\[0x\[0-9a-f\]+,\\\+0\\\]->\\\[0x\[0-9a-f\]+,\\\+0\\\] is a bad map" { target openacc_nvidia_accel_selected } } */
+/* { dg-output "cannot map data on shared-memory system" { target openacc_host_selected } } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-57.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-57.c
index f9043a445dfe..7e41c4a18f98 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-57.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-57.c
@@ -25,4 +25,6 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \h+ is not a mapped block" } */
+/* { dg-output "0x\[0-9a-f\]+ is not a mapped block" { target openacc_nvidia_accel_selected } } */
+/* { dg-output "cannot map data on shared-memory system" { target openacc_host_selected } } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-58.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-58.c
index 9d6e27d89e95..44353d2deddb 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-58.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-58.c
@@ -25,4 +25,6 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: \(nil\) is not a mapped block" } */
+/* { dg-output "\\\(nil\\\) is not a mapped block" { target openacc_nvidia_accel_selected } } */
+/* { dg-output "cannot map data on shared-memory system" { target openacc_host_selected } } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-62.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-62.c
index e6178e233ed6..47dc953c69c7 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-62.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-62.c
@@ -46,4 +46,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: invalid size" } */
+/* { dg-output "invalid size" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-63.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-63.c
index ca237ec1b60c..69c061e3a907 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-63.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-63.c
@@ -1,4 +1,4 @@
-/* { dg-do run } */
+/* { dg-do run { target openacc_nvidia_accel_selected } } */
 
 #include <string.h>
 #include <stdlib.h>
@@ -40,4 +40,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: invalid device address" } */
+/* { dg-output "invalid device address" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-64.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-64.c
index 850fd2e3f91e..6a785b039471 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-64.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-64.c
@@ -1,4 +1,4 @@
-/* { dg-do run } */
+/* { dg-do run { target openacc_nvidia_accel_selected } } */
 
 #include <string.h>
 #include <stdlib.h>
@@ -40,4 +40,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: invalid host address" } */
+/* { dg-output "invalid host address" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-65.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-65.c
index 26c8cefdc428..0f2f9ebe4fdb 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-65.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-65.c
@@ -1,4 +1,4 @@
-/* { dg-do run } */
+/* { dg-do run { target openacc_nvidia_accel_selected } } */
 
 #include <string.h>
 #include <stdlib.h>
@@ -40,4 +40,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: invalid host or device address" } */
+/* { dg-output "invalid host or device address" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-67.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-67.c
index 01b8b2d89ae9..31b8c1fe5e65 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-67.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-67.c
@@ -1,4 +1,4 @@
-/* { dg-do run } */
+/* { dg-do run { target openacc_nvidia_accel_selected } } */
 
 #include <string.h>
 #include <stdlib.h>
@@ -40,4 +40,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: invalid host address" } */
+/* { dg-output "invalid host address" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-68.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-68.c
index 3ff5bd7bcf7a..dc39770aeceb 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-68.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-68.c
@@ -1,4 +1,4 @@
-/* { dg-do run } */
+/* { dg-do run { target openacc_nvidia_accel_selected } } */
 
 #include <string.h>
 #include <stdlib.h>
@@ -40,4 +40,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: invalid device address" } */
+/* { dg-output "invalid device address" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-71.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-71.c
index a04537916f6d..e8584db27cf5 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-71.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-71.c
@@ -116,4 +116,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: unknown async \d" } */
+/* { dg-output "unknown async \[0-9\]+" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-77.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-77.c
index e47212b2139d..35a09801cbe9 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-77.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-77.c
@@ -132,4 +132,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: unknown async \d" } */
+/* { dg-output "unknown async \[0-9\]+" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-80.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-80.c
index 0b5ec24b28e4..d521331210d7 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-80.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/lib-80.c
@@ -129,4 +129,5 @@ main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-shouldfail "libgomp: identical parameters" } */
+/* { dg-output "identical parameters" } */
+/* { dg-shouldfail "" } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/present-1.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/present-1.c
index f331f1f63701..d8fcb716b9ba 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/present-1.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/present-1.c
@@ -45,4 +45,5 @@ main (int argc, char **argv)
 
     return 0;
 }
-/* { dg-shouldfail "libgomp: present clause: !acc_is_present" } */
+/* { dg-output "present clause: !acc_is_present" } */
+/* { dg-shouldfail "" } */