1 // { dg-additional-options "-fmodules-ts -fopenmp" }
2 
3 export module foo;
4 // { dg-module-cmi foo }
5 
6 // The OpenMPness doesn't escape to the interface.
frob(unsigned (& ary)[64])7 export void frob (unsigned (&ary)[64])
8 {
9   int sum = 0;
10 
11 #pragma omp for
12   for (unsigned ix = 0; ix < 64; ix++)
13     sum += ary[ix];
14 
15 #pragma omp simd safelen(16) aligned (ary : 16)
16   for (unsigned ix = 0; ix < 64; ix++)
17     ary[ix] *= 2;
18 }
19