aboutsummaryrefslogtreecommitdiff
path: root/clang/test/OpenMP/openmp_attribute.cpp
blob: 5a9a5795f010ce70d5aac749bddda5b957d17796 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
// RUN: %clang_cc1 -fopenmp -fsyntax-only -verify -DSUPPORTED=1 %s
// RUN: %clang_cc1 -fopenmp -fsyntax-only -verify -DSUPPORTED=1 -x c -std=c2x %s
// RUN: %clang_cc1 -fsyntax-only -verify -DSUPPORTED=0 %s
// RUN: %clang_cc1 -fsyntax-only -verify -DSUPPORTED=0 -x c -std=c2x %s
// RUN: %clang_cc1 -fopenmp -fsyntax-only -verify -DSUPPORTED=1 %s
// RUN: %clang_cc1 -fopenmp -fsyntax-only -verify -DSUPPORTED=1 -x c -std=c2x %s
// expected-no-diagnostics

#ifndef SUPPORTED
#error "Someone messed up a RUN line"
#endif

#ifdef __cplusplus
#if __has_cpp_attribute(omp::sequence) != SUPPORTED
#error "No idea what you're talking about"
#endif

#if __has_cpp_attribute(omp::directive) != SUPPORTED
#error "No idea what you're talking about"
#endif

#if __has_cpp_attribute(omp::totally_bogus)
#error "No idea what you're talking about"
#endif

#else // __cplusplus

#if __has_c_attribute(omp::sequence) != SUPPORTED
#error "No idea what you're talking about"
#endif

#if __has_c_attribute(omp::directive) != SUPPORTED
#error "No idea what you're talking about"
#endif

#if __has_c_attribute(omp::totally_bogus)
#error "No idea what you're talking about"
#endif

#endif