1 // 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 4 #pragma omp begin declare variant match(device={kind(gpu)}) // expected-note {{to match this '#pragma omp begin declare variant'}} also_before(void)5int also_before(void) { 6 return 0; 7 } 8 9 #pragma omp begin declare variant match(device={kind(gpu)}) also_after(void)10int also_after(void) { 11 return 2; 12 } also_before(void)13int also_before(void) { 14 return 2; 15 } 16 #pragma omp end declare variant 17 18 19 #pragma omp begin declare variant match(device={kind(fpga)}) 20 21 This text is never parsed! 22 23 #pragma omp end declare variant 24 25 int also_after(void) { 26 return 0; 27 } 28 test()29int test() { 30 return also_after() + also_before(); 31 } // expected-error {{expected '#pragma omp end declare variant'}} 32