
libgomp/ChangeLog: * testsuite/libgomp.c-c++-common/error-1.c: Use \r\n not \n\r in dg-output. * testsuite/libgomp.fortran/error-1.f90: Likewise.
59 lines
1.8 KiB
C
59 lines
1.8 KiB
C
/* { dg-shouldfail "error directive" } */
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"
|
|
#endif
|
|
void abort ();
|
|
|
|
int
|
|
foo (int i, int x)
|
|
{
|
|
if (x)
|
|
#pragma omp error severity(warning) /* { dg-warning "'pragma omp error' encountered" } */
|
|
i++;
|
|
if (!x)
|
|
;
|
|
else
|
|
#pragma omp error severity(warning) /* { dg-warning "'pragma omp error' encountered" } */
|
|
i += 2;
|
|
switch (0)
|
|
#pragma omp error severity(warning) /* { dg-warning "'pragma omp error' encountered" } */
|
|
{
|
|
default:
|
|
break;
|
|
}
|
|
while (0)
|
|
#pragma omp error message("42 - 1") severity (warning) /* { dg-warning "'pragma omp error' encountered: 42 - 1" } */
|
|
i += 4;
|
|
lab:
|
|
#pragma omp error severity(warning) message("bar") at(compilation) /* { dg-warning "'pragma omp error' encountered: bar" } */
|
|
i += 8;
|
|
return i;
|
|
}
|
|
|
|
int
|
|
main ()
|
|
{
|
|
/* Initialize offloading early, so that any output this may produce doesn't
|
|
disturb the 'dg-output' scanning below. */
|
|
#pragma omp target
|
|
;
|
|
|
|
if (foo (5, 0) != 13 || foo (6, 1) != 17)
|
|
abort ();
|
|
#pragma omp error at (execution) severity (warning)
|
|
const char *msg = "my message" + 2;
|
|
#pragma omp error at (execution) severity (warning) message (msg + 1)
|
|
#pragma omp target
|
|
{
|
|
#pragma omp error at (execution) severity (warning) message ("hello from a distance")
|
|
}
|
|
#pragma omp error at (execution) severity (fatal) message (msg - 2)
|
|
#pragma omp error at (execution) severity (warning) message ("foobar")
|
|
return 0;
|
|
}
|
|
|
|
/* { dg-output "libgomp: error directive encountered(\n|\r|\r\n)(\n|\r|\r\n)" } */
|
|
/* { dg-output "libgomp: error directive encountered: message(\n|\r|\r\n)(\n|\r|\r\n)" } */
|
|
/* { dg-output "libgomp: error directive encountered: hello from a distance(\n|\r|\r\n)(\n|\r|\r\n)" } */
|
|
/* { dg-output "libgomp: fatal error: error directive encountered: my message" } */
|