blob: d58dd000a50398d44bbc0df46ae104a858a29670 [file] [log] [blame]
Johannes Doerfert095cecb2020-02-20 19:50:47 -06001// RUN: %clang_cc1 -triple=x86_64-pc-win32 -verify -fopenmp -x c -std=c99 -fms-extensions -Wno-pragma-pack %s
2// RUN: %clang_cc1 -triple=x86_64-pc-win32 -verify -fopenmp-simd -x c -std=c99 -fms-extensions -Wno-pragma-pack %s
3
Johannes Doerfertbefb4be2020-02-25 14:04:06 -08004#pragma omp begin declare variant match(device={kind(gpu)}) // expected-note {{to match this '#pragma omp begin declare variant'}}
Johannes Doerfert095cecb2020-02-20 19:50:47 -06005int also_before(void) {
6 return 0;
7}
Johannes Doerfert095cecb2020-02-20 19:50:47 -06008
Johannes Doerfertbefb4be2020-02-25 14:04:06 -08009#pragma omp begin declare variant match(device={kind(gpu)})
Johannes Doerfert095cecb2020-02-20 19:50:47 -060010int also_after(void) {
11 return 2;
12}
13int also_before(void) {
14 return 2;
15}
Johannes Doerfertbefb4be2020-02-25 14:04:06 -080016#pragma omp end declare variant
Johannes Doerfert095cecb2020-02-20 19:50:47 -060017
18
19#pragma omp begin declare variant match(device={kind(fpga)})
20
21This text is never parsed!
22
23#pragma omp end declare variant
24
25int also_after(void) {
26 return 0;
27}
28
29int test() {
30 return also_after() + also_before();
31} // expected-error {{expected '#pragma omp end declare variant'}}