rt_gccstream/gcc/testsuite/g++.dg/gomp/block-2.C

36 lines
786 B
C

// { dg-do compile }
void foo()
{
int i, j;
#pragma omp for
for (i = 0; i < 10; ++i)
break; // { dg-error "break" }
bad1: // { dg-error "jump to label" }
#pragma omp for
for (i = 0; i < 10; ++i)
goto bad1; // { dg-error "from here|exits OpenMP" }
goto bad2; // { dg-error "from here" }
#pragma omp for
for (i = 0; i < 10; ++i)
{
bad2: ; // { dg-error "jump|enters OpenMP" }
}
#pragma omp for
for (i = 0; i < 10; ++i)
for (j = 0; j < 10; ++j)
if (i == j)
break;
#pragma omp for
for (i = 0; i < 10; ++i)
continue;
}
// { dg-message "error: invalid branch to/from an OpenMP structured block" "" { target *-*-* } 14 }
// { dg-message "error: invalid entry to OpenMP structured block" "" { target *-*-* } 16 }