1  /* { dg-do compile } */
       2  /* { dg-options "-fno-openmp -fopenmp-simd" } */
       3  
       4  #if __has_attribute(omp::directive)
       5  #ifndef __cplusplus
       6  #error omp::directive supported in C
       7  #endif
       8  #else
       9  #ifdef __cplusplus
      10  #error omp::directive not supported in C++
      11  #endif
      12  #endif
      13  
      14  #if __has_attribute(omp::sequence)
      15  #ifndef __cplusplus
      16  #error omp::sequence supported in C
      17  #endif
      18  #else
      19  #ifdef __cplusplus
      20  #error omp::sequence not supported in C++
      21  #endif
      22  #endif
      23  
      24  #if __has_attribute(omp::unknown)
      25  #error omp::unknown supported
      26  #endif
      27  
      28  #if __has_cpp_attribute(omp::directive)
      29  #ifndef __cplusplus
      30  #error omp::directive supported in C
      31  #endif
      32  #else
      33  #ifdef __cplusplus
      34  #error omp::directive not supported in C++
      35  #endif
      36  #endif
      37  
      38  #if __has_cpp_attribute(omp::sequence)
      39  #ifndef __cplusplus
      40  #error omp::sequence supported in C
      41  #endif
      42  #else
      43  #ifdef __cplusplus
      44  #error omp::sequence not supported in C++
      45  #endif
      46  #endif
      47  
      48  #if __has_cpp_attribute(omp::unknown)
      49  #error omp::unknown supported
      50  #endif
      51  
      52  #if __has_attribute(__omp__::__directive__)
      53  #ifndef __cplusplus
      54  #error __omp__::__directive__ supported in C
      55  #endif
      56  #else
      57  #ifdef __cplusplus
      58  #error __omp__::__directive__ not supported in C++
      59  #endif
      60  #endif
      61  
      62  #if __has_attribute(__omp__::__sequence__)
      63  #ifndef __cplusplus
      64  #error __omp__::__sequence__ supported in C
      65  #endif
      66  #else
      67  #ifdef __cplusplus
      68  #error __omp__::__sequence__ not supported in C++
      69  #endif
      70  #endif
      71  
      72  #if __has_attribute(__omp__::__unknown__)
      73  #error __omp__::__unknown__ supported
      74  #endif
      75  
      76  #if __has_cpp_attribute(__omp__::__directive__)
      77  #ifndef __cplusplus
      78  #error __omp__::__directive__ supported in C
      79  #endif
      80  #else
      81  #ifdef __cplusplus
      82  #error __omp__::__directive__ not supported in C++
      83  #endif
      84  #endif
      85  
      86  #if __has_cpp_attribute(__omp__::__sequence__)
      87  #ifndef __cplusplus
      88  #error __omp__::__sequence__ supported in C
      89  #endif
      90  #else
      91  #ifdef __cplusplus
      92  #error __omp__::__sequence__ not supported in C++
      93  #endif
      94  #endif
      95  
      96  #if __has_cpp_attribute(__omp__::__unknown__)
      97  #error __omp__::__unknown__ supported
      98  #endif
      99  
     100  #if __has_attribute(omp::__directive__)
     101  #ifndef __cplusplus
     102  #error omp::__directive__ supported in C
     103  #endif
     104  #else
     105  #ifdef __cplusplus
     106  #error omp::__directive__ not supported in C++
     107  #endif
     108  #endif
     109  
     110  #if __has_attribute(__omp__::sequence)
     111  #ifndef __cplusplus
     112  #error __omp__::sequence supported in C
     113  #endif
     114  #else
     115  #ifdef __cplusplus
     116  #error __omp__::sequence not supported in C++
     117  #endif
     118  #endif
     119  
     120  #if __has_attribute(omp::__unknown__)
     121  #error omp::__unknown__ supported
     122  #endif
     123  
     124  #if __has_cpp_attribute(__omp__::directive)
     125  #ifndef __cplusplus
     126  #error __omp__::directive supported in C
     127  #endif
     128  #else
     129  #ifdef __cplusplus
     130  #error __omp__::directive not supported in C++
     131  #endif
     132  #endif
     133  
     134  #if __has_cpp_attribute(omp::__sequence__)
     135  #ifndef __cplusplus
     136  #error omp::__sequence__ supported in C
     137  #endif
     138  #else
     139  #ifdef __cplusplus
     140  #error omp::__sequence__ not supported in C++
     141  #endif
     142  #endif
     143  
     144  #if __has_cpp_attribute(__omp__::unknown)
     145  #error __omp__::unknown supported
     146  #endif