// { dg-do compile { target c++17 } } // { dg-add-options no_pch } #include #ifndef __cpp_lib_variant #error "Feature test macro for variant is missing in " #elif __cplusplus == 201703L && __cpp_lib_variant != 202102L # error "Feature test macro for variant has wrong value for C++17 in " #elif __cplusplus >= 202002L && __cpp_lib_variant < 202106L # error "Feature test macro for variant has wrong value for C++20 in " #endif #if __cplusplus >= 202302L #ifndef __cpp_lib_freestanding_variant # error "Feature test macro for freestanding std::variant is missing in " #elif __cpp_lib_freestanding_variant < 202311L # error "Feature test macro for freestanding std::variant has wrong value in " #endif #endif #undef __cpp_lib_variant #undef __cpp_lib_freestanding_variant #include #if __cplusplus >= 202302L #ifndef __cpp_lib_freestanding_variant # error "Feature test macro for freestanding std::variant is missing in " #elif __cpp_lib_freestanding_variant < 202311L # error "Feature test macro for freestanding std::variant has wrong value in " #endif #endif