1// { dg-options "-std=gnu++14" } 2// { dg-do compile } 3 4#include <utility> 5#include <tuple> 6#include <memory> 7#include <functional> 8#include <type_traits> 9#include <chrono> 10#include <string> 11#include <complex> 12#include <iomanip> 13#include <shared_mutex> 14 15#ifndef __cpp_lib_integer_sequence 16# error "__cpp_lib_integer_sequence" 17#elif __cpp_lib_integer_sequence != 201304 18# error "__cpp_lib_integer_sequence != 201304" 19#endif 20 21#ifndef __cpp_lib_exchange_function 22# error "__cpp_lib_exchange_function" 23#elif __cpp_lib_exchange_function != 201304 24# error "__cpp_lib_exchange_function != 201304" 25#endif 26 27#ifndef __cpp_lib_tuples_by_type 28# error "__cpp_lib_tuples_by_type" 29#elif __cpp_lib_tuples_by_type != 201304 30# error "__cpp_lib_tuples_by_type != 201304" 31#endif 32 33#ifndef __cpp_lib_make_unique 34# error "__cpp_lib_make_unique" 35#elif __cpp_lib_make_unique != 201304 36# error "__cpp_lib_make_unique != 201304" 37#endif 38 39#ifndef __cpp_lib_transparent_operators 40# error "__cpp_lib_transparent_operators" 41#elif __cpp_lib_transparent_operators != 201210 42# error "__cpp_lib_transparent_operators != 201210" 43#endif 44 45#ifndef __cpp_lib_result_of_sfinae 46# error "__cpp_lib_result_of_sfinae" 47#elif __cpp_lib_result_of_sfinae != 201210 48# error "__cpp_lib_result_of_sfinae != 201210" 49#endif 50 51#ifndef __cpp_lib_integral_constant_callable 52# error "__cpp_lib_integral_constant_callable" 53#elif __cpp_lib_integral_constant_callable != 201304 54# error "__cpp_lib_integral_constant_callable != 201304" 55#endif 56 57#ifndef __cpp_lib_transformation_trait_aliases 58# error "__cpp_lib_transformation_trait_aliases" 59#elif __cpp_lib_transformation_trait_aliases != 201304 60# error "__cpp_lib_transformation_trait_aliases != 201304" 61#endif 62 63#ifndef __cpp_lib_chrono_udls 64# error "__cpp_lib_chrono_udls" 65#elif __cpp_lib_chrono_udls != 201304 66# error "__cpp_lib_chrono_udls != 201304" 67#endif 68 69#ifndef __cpp_lib_string_udls 70# error "__cpp_lib_string_udls" 71#elif __cpp_lib_string_udls != 201304 72# error "__cpp_lib_string_udls != 201304" 73#endif 74 75#ifndef __cpp_lib_complex_udls 76# error "__cpp_lib_complex_udls" 77#elif __cpp_lib_complex_udls != 201309 78# error "__cpp_lib_complex_udls != 201309" 79#endif 80 81//#ifndef __cpp_lib_generic_associative_lookup 82//# error "__cpp_lib_generic_associative_lookup" 83//#elif __cpp_lib_generic_associative_lookup != 201304 84//# error "__cpp_lib_generic_associative_lookup != 201304" 85//#endif 86 87//#ifndef __cpp_lib_null_iterators 88//# error "__cpp_lib_null_iterators" 89//#elif __cpp_lib_null_iterators != 201304 90//# error "__cpp_lib_null_iterators != 201304" 91//#endif 92 93#ifndef __cpp_lib_robust_nonmodifying_seq_ops 94# error "__cpp_lib_robust_nonmodifying_seq_ops" 95#elif __cpp_lib_robust_nonmodifying_seq_ops != 201304 96# error "__cpp_lib_robust_nonmodifying_seq_ops != 201304" 97#endif 98 99#ifndef __cpp_lib_quoted_string_io 100# error "__cpp_lib_quoted_string_io" 101#elif __cpp_lib_quoted_string_io != 201304 102# error "__cpp_lib_quoted_string_io != 201304" 103#endif 104 105#if !__has_include(<shared_mutex>) 106# error "<shared_mutex>" 107#endif 108 109#if defined(_GLIBCXX_HAS_GTHREADS) && defined(_GLIBCXX_USE_C99_STDINT_TR1) 110# ifndef __cpp_lib_shared_timed_mutex 111# error "__cpp_lib_shared_timed_mutex" 112# elif __cpp_lib_shared_timed_mutex != 201402 113# error "__cpp_lib_shared_timed_mutex != 201402" 114# endif 115#endif 116 117#ifndef __cpp_lib_is_final 118# error "__cpp_lib_is_final" 119#elif __cpp_lib_is_final != 201402 120# error "__cpp_lib_is_final != 201402" 121#endif 122