From 76f6cdc45393d15d7d28d108c86e24556e4aa368 Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Sun, 7 Aug 2016 18:22:29 +0100 Subject: [PATCH] Merge branch 'develop' # Please enter a commit message to explain why this merge is necessary, # especially if it merges an updated upstream into a topic branch. # # Lines starting with '#' will be ignored, and an empty message aborts # the commit. --- checks/Jamfile.v2 | 794 +++++------------- checks/test_case.cpp | 6 +- .../boost_config/boost_macro_reference.html | 15 +- doc/html/index.html | 2 +- doc/macro_reference.qbk | 4 +- include/boost/config/compiler/borland.hpp | 1 + include/boost/config/compiler/clang.hpp | 20 +- include/boost/config/compiler/codegear.hpp | 1 + include/boost/config/compiler/comeau.hpp | 2 +- include/boost/config/compiler/common_edg.hpp | 1 + include/boost/config/compiler/compaq_cxx.hpp | 2 +- include/boost/config/compiler/cray.hpp | 3 +- include/boost/config/compiler/digitalmars.hpp | 1 + include/boost/config/compiler/gcc.hpp | 1 + include/boost/config/compiler/gcc_xml.hpp | 3 +- include/boost/config/compiler/greenhills.hpp | 2 +- include/boost/config/compiler/hp_acc.hpp | 3 +- include/boost/config/compiler/intel.hpp | 2 +- include/boost/config/compiler/kai.hpp | 2 +- include/boost/config/compiler/metrowerks.hpp | 1 + include/boost/config/compiler/mpw.hpp | 1 + include/boost/config/compiler/pathscale.hpp | 1 + include/boost/config/compiler/pgi.hpp | 1 + include/boost/config/compiler/sgi_mipspro.hpp | 2 +- include/boost/config/compiler/sunpro_cc.hpp | 1 + include/boost/config/compiler/vacpp.hpp | 1 + include/boost/config/compiler/visualc.hpp | 26 +- include/boost/config/compiler/xlcpp.hpp | 4 + .../boost/config/select_compiler_config.hpp | 42 +- include/boost/config/stdlib/libstdcpp3.hpp | 12 + include/boost/version.hpp | 4 +- test/all/Jamfile.v2 | 5 +- test/boost_no_cxx11_thread_local.ipp | 24 + test/boost_no_ret_det.ipp | 4 +- test/config_info.cpp | 7 + test/config_test.cpp | 12 +- test/no_cxx11_thread_local_fail.cpp | 37 + test/no_cxx11_thread_local_pass.cpp | 37 + tools/generate.cpp | 19 +- 39 files changed, 446 insertions(+), 660 deletions(-) create mode 100644 test/boost_no_cxx11_thread_local.ipp create mode 100644 test/no_cxx11_thread_local_fail.cpp create mode 100644 test/no_cxx11_thread_local_pass.cpp diff --git a/checks/Jamfile.v2 b/checks/Jamfile.v2 index 3ae69ce9..f178bb74 100644 --- a/checks/Jamfile.v2 +++ b/checks/Jamfile.v2 @@ -1,6 +1,6 @@ # # *** DO NOT EDIT THIS FILE BY HAND *** -# This file was automatically generated on Thu Aug 13 16:32:12 2015 +# This file was automatically generated on Fri Jul 1 18:47:25 2016 # by libs/config/tools/generate.cpp # Copyright John Maddock. # Use, modification and distribution are subject to the @@ -10,602 +10,208 @@ import modules ; import path ; -actions simple_run_action -{ - $(>) > $(<) -} -rule run-simple ( sources + : args * : input-files * : requirements * : target-name ) +rule run-simple ( requirements * : target-name ) { - obj $(target-name)_obj : $(sources) : $(requirements) ; + obj $(target-name)_obj : test_case.cpp : $(requirements) ; explicit $(target-name)_obj ; - exe $(target-name)_exe : $(target-name)_obj : $(requirements) ; - explicit $(target-name)_exe ; - #testing.capture-output $(target-name)_output : $(target-name) : $(requirements) $(target-name) ; - make $(target-name).output : $(target-name)_exe : @simple_run_action ; - explicit $(target-name).output ; + unit-test $(target-name) : $(target-name)_obj : $(requirements) ; + explicit $(target-name) ; } -run-simple test_case.cpp : : : TEST_BOOST_HAS_TWO_ARG_USE_FACET : two_arg_use_facet ; -alias two_arg_use_facet : two_arg_use_facet.output ; -explicit two_arg_use_facet ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_BETHREADS : bethreads ; -alias bethreads : bethreads.output ; -explicit bethreads ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_CLOCK_GETTIME : clock_gettime ; -alias clock_gettime : clock_gettime.output ; -explicit clock_gettime ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_DIRENT_H : dirent_h ; -alias dirent_h : dirent_h.output ; -explicit dirent_h ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_EXPM1 : expm1 ; -alias expm1 : expm1.output ; -explicit expm1 ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_FLOAT128 : float128 ; -alias float128 : float128.output ; -explicit float128 ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_FTIME : ftime ; -alias ftime : ftime.output ; -explicit ftime ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_GETSYSTEMTIMEASFILETIME : getsystemtimeasfiletime ; -alias getsystemtimeasfiletime : getsystemtimeasfiletime.output ; -explicit getsystemtimeasfiletime ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_GETTIMEOFDAY : gettimeofday ; -alias gettimeofday : gettimeofday.output ; -explicit gettimeofday ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_HASH : hash ; -alias hash : hash.output ; -explicit hash ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_INT128 : int128 ; -alias int128 : int128.output ; -explicit int128 ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_LOG1P : log1p ; -alias log1p : log1p.output ; -explicit log1p ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_LONG_LONG : long_long ; -alias long_long : long_long.output ; -explicit long_long ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_MACRO_USE_FACET : macro_use_facet ; -alias macro_use_facet : macro_use_facet.output ; -explicit macro_use_facet ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_MS_INT64 : ms_int64 ; -alias ms_int64 : ms_int64.output ; -explicit ms_int64 ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_NANOSLEEP : nanosleep ; -alias nanosleep : nanosleep.output ; -explicit nanosleep ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_NL_TYPES_H : nl_types_h ; -alias nl_types_h : nl_types_h.output ; -explicit nl_types_h ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_NRVO : nrvo ; -alias nrvo : nrvo.output ; -explicit nrvo ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_PARTIAL_STD_ALLOCATOR : partial_std_allocator ; -alias partial_std_allocator : partial_std_allocator.output ; -explicit partial_std_allocator ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_PTHREAD_DELAY_NP : pthread_delay_np ; -alias pthread_delay_np : pthread_delay_np.output ; -explicit pthread_delay_np ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE : pthread_mutexattr_settype ; -alias pthread_mutexattr_settype : pthread_mutexattr_settype.output ; -explicit pthread_mutexattr_settype ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_PTHREAD_YIELD : pthread_yield ; -alias pthread_yield : pthread_yield.output ; -explicit pthread_yield ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_PTHREADS : pthreads ; -alias pthreads : pthreads.output ; -explicit pthreads ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_RVALUE_REFS : rvalue_refs ; -alias rvalue_refs : rvalue_refs.output ; -explicit rvalue_refs ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_SCHED_YIELD : sched_yield ; -alias sched_yield : sched_yield.output ; -explicit sched_yield ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_SGI_TYPE_TRAITS : sgi_type_traits ; -alias sgi_type_traits : sgi_type_traits.output ; -explicit sgi_type_traits ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_SIGACTION : sigaction ; -alias sigaction : sigaction.output ; -explicit sigaction ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_SLIST : slist ; -alias slist : slist.output ; -explicit slist ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_STATIC_ASSERT : static_assert ; -alias static_assert : static_assert.output ; -explicit static_assert ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_STDINT_H : stdint_h ; -alias stdint_h : stdint_h.output ; -explicit stdint_h ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_STLP_USE_FACET : stlp_use_facet ; -alias stlp_use_facet : stlp_use_facet.output ; -explicit stlp_use_facet ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_ARRAY : tr1_array ; -alias tr1_array : tr1_array.output ; -explicit tr1_array ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_BIND : tr1_bind ; -alias tr1_bind : tr1_bind.output ; -explicit tr1_bind ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_COMPLEX_OVERLOADS : tr1_complex_overloads ; -alias tr1_complex_overloads : tr1_complex_overloads.output ; -explicit tr1_complex_overloads ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG : tr1_complex_inverse_trig ; -alias tr1_complex_inverse_trig : tr1_complex_inverse_trig.output ; -explicit tr1_complex_inverse_trig ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_FUNCTION : tr1_function ; -alias tr1_function : tr1_function.output ; -explicit tr1_function ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_HASH : tr1_hash ; -alias tr1_hash : tr1_hash.output ; -explicit tr1_hash ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_MEM_FN : tr1_mem_fn ; -alias tr1_mem_fn : tr1_mem_fn.output ; -explicit tr1_mem_fn ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_RANDOM : tr1_random ; -alias tr1_random : tr1_random.output ; -explicit tr1_random ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_REFERENCE_WRAPPER : tr1_reference_wrapper ; -alias tr1_reference_wrapper : tr1_reference_wrapper.output ; -explicit tr1_reference_wrapper ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_REGEX : tr1_regex ; -alias tr1_regex : tr1_regex.output ; -explicit tr1_regex ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_RESULT_OF : tr1_result_of ; -alias tr1_result_of : tr1_result_of.output ; -explicit tr1_result_of ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_SHARED_PTR : tr1_shared_ptr ; -alias tr1_shared_ptr : tr1_shared_ptr.output ; -explicit tr1_shared_ptr ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_TUPLE : tr1_tuple ; -alias tr1_tuple : tr1_tuple.output ; -explicit tr1_tuple ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_TYPE_TRAITS : tr1_type_traits ; -alias tr1_type_traits : tr1_type_traits.output ; -explicit tr1_type_traits ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_UNORDERED_MAP : tr1_unordered_map ; -alias tr1_unordered_map : tr1_unordered_map.output ; -explicit tr1_unordered_map ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_UNORDERED_SET : tr1_unordered_set ; -alias tr1_unordered_set : tr1_unordered_set.output ; -explicit tr1_unordered_set ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_TR1_UTILITY : tr1_utility ; -alias tr1_utility : tr1_utility.output ; -explicit tr1_utility ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_UNISTD_H : unistd_h ; -alias unistd_h : unistd_h.output ; -explicit unistd_h ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_VARIADIC_TMPL : variadic_tmpl ; -alias variadic_tmpl : variadic_tmpl.output ; -explicit variadic_tmpl ; -run-simple test_case.cpp : : : TEST_BOOST_MSVC6_MEMBER_TEMPLATES : boost_msvc6_member_templates ; -alias boost_msvc6_member_templates : boost_msvc6_member_templates.output ; -explicit boost_msvc6_member_templates ; -run-simple test_case.cpp : : : TEST_BOOST_MSVC_STD_ITERATOR : boost_msvc_std_iterator ; -alias boost_msvc_std_iterator : boost_msvc_std_iterator.output ; -explicit boost_msvc_std_iterator ; -run-simple test_case.cpp : : : TEST_BOOST_HAS_WINTHREADS : winthreads ; -alias winthreads : winthreads.output ; -explicit winthreads ; -run-simple test_case.cpp : : : TEST_BOOST_NO_ADL_BARRIER : adl_barrier ; -alias adl_barrier : adl_barrier.output ; -explicit adl_barrier ; -run-simple test_case.cpp : : : TEST_BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP : argument_dependent_lookup ; -alias argument_dependent_lookup : argument_dependent_lookup.output ; -explicit argument_dependent_lookup ; -run-simple test_case.cpp : : : TEST_BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS : array_type_specializations ; -alias array_type_specializations : array_type_specializations.output ; -explicit array_type_specializations ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_AUTO_DECLARATIONS : cxx11_auto_declarations ; -alias cxx11_auto_declarations : cxx11_auto_declarations.output ; -explicit cxx11_auto_declarations ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS : cxx11_auto_multideclarations ; -alias cxx11_auto_multideclarations : cxx11_auto_multideclarations.output ; -explicit cxx11_auto_multideclarations ; -run-simple test_case.cpp : : : TEST_BOOST_NO_AUTO_PTR : auto_ptr ; -alias auto_ptr : auto_ptr.output ; -explicit auto_ptr ; -run-simple test_case.cpp : : : TEST_BOOST_BCB_PARTIAL_SPECIALIZATION_BUG : boost_bcb_partial_specialization_bug ; -alias boost_bcb_partial_specialization_bug : boost_bcb_partial_specialization_bug.output ; -explicit boost_bcb_partial_specialization_bug ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_CHAR16_T : cxx11_char16_t ; -alias cxx11_char16_t : cxx11_char16_t.output ; -explicit cxx11_char16_t ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_CHAR32_T : cxx11_char32_t ; -alias cxx11_char32_t : cxx11_char32_t.output ; -explicit cxx11_char32_t ; -run-simple test_case.cpp : : : TEST_BOOST_NO_COMPLETE_VALUE_INITIALIZATION : complete_value_initialization ; -alias complete_value_initialization : complete_value_initialization.output ; -explicit complete_value_initialization ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_CONSTEXPR : cxx11_constexpr ; -alias cxx11_constexpr : cxx11_constexpr.output ; -explicit cxx11_constexpr ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CTYPE_FUNCTIONS : ctype_functions ; -alias ctype_functions : ctype_functions.output ; -explicit ctype_functions ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CV_SPECIALIZATIONS : cv_specializations ; -alias cv_specializations : cv_specializations.output ; -explicit cv_specializations ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CV_VOID_SPECIALIZATIONS : cv_void_specializations ; -alias cv_void_specializations : cv_void_specializations.output ; -explicit cv_void_specializations ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CWCHAR : cwchar ; -alias cwchar : cwchar.output ; -explicit cwchar ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CWCTYPE : cwctype ; -alias cwctype : cwctype.output ; -explicit cwctype ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_ADDRESSOF : cxx11_addressof ; -alias cxx11_addressof : cxx11_addressof.output ; -explicit cxx11_addressof ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_ALIGNAS : cxx11_alignas ; -alias cxx11_alignas : cxx11_alignas.output ; -explicit cxx11_alignas ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_ALLOCATOR : cxx11_allocator ; -alias cxx11_allocator : cxx11_allocator.output ; -explicit cxx11_allocator ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_ATOMIC_SMART_PTR : cxx11_atomic_smart_ptr ; -alias cxx11_atomic_smart_ptr : cxx11_atomic_smart_ptr.output ; -explicit cxx11_atomic_smart_ptr ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_FINAL : cxx11_final ; -alias cxx11_final : cxx11_final.output ; -explicit cxx11_final ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_ARRAY : cxx11_hdr_array ; -alias cxx11_hdr_array : cxx11_hdr_array.output ; -explicit cxx11_hdr_array ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_ATOMIC : cxx11_hdr_atomic ; -alias cxx11_hdr_atomic : cxx11_hdr_atomic.output ; -explicit cxx11_hdr_atomic ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_CHRONO : cxx11_hdr_chrono ; -alias cxx11_hdr_chrono : cxx11_hdr_chrono.output ; -explicit cxx11_hdr_chrono ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_CODECVT : cxx11_hdr_codecvt ; -alias cxx11_hdr_codecvt : cxx11_hdr_codecvt.output ; -explicit cxx11_hdr_codecvt ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_CONDITION_VARIABLE : cxx11_hdr_condition_variable ; -alias cxx11_hdr_condition_variable : cxx11_hdr_condition_variable.output ; -explicit cxx11_hdr_condition_variable ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_FORWARD_LIST : cxx11_hdr_forward_list ; -alias cxx11_hdr_forward_list : cxx11_hdr_forward_list.output ; -explicit cxx11_hdr_forward_list ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_FUTURE : cxx11_hdr_future ; -alias cxx11_hdr_future : cxx11_hdr_future.output ; -explicit cxx11_hdr_future ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_INITIALIZER_LIST : cxx11_hdr_initializer_list ; -alias cxx11_hdr_initializer_list : cxx11_hdr_initializer_list.output ; -explicit cxx11_hdr_initializer_list ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_MUTEX : cxx11_hdr_mutex ; -alias cxx11_hdr_mutex : cxx11_hdr_mutex.output ; -explicit cxx11_hdr_mutex ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_RANDOM : cxx11_hdr_random ; -alias cxx11_hdr_random : cxx11_hdr_random.output ; -explicit cxx11_hdr_random ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_RATIO : cxx11_hdr_ratio ; -alias cxx11_hdr_ratio : cxx11_hdr_ratio.output ; -explicit cxx11_hdr_ratio ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_REGEX : cxx11_hdr_regex ; -alias cxx11_hdr_regex : cxx11_hdr_regex.output ; -explicit cxx11_hdr_regex ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_SYSTEM_ERROR : cxx11_hdr_system_error ; -alias cxx11_hdr_system_error : cxx11_hdr_system_error.output ; -explicit cxx11_hdr_system_error ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_THREAD : cxx11_hdr_thread ; -alias cxx11_hdr_thread : cxx11_hdr_thread.output ; -explicit cxx11_hdr_thread ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_TUPLE : cxx11_hdr_tuple ; -alias cxx11_hdr_tuple : cxx11_hdr_tuple.output ; -explicit cxx11_hdr_tuple ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_TYPE_TRAITS : cxx11_hdr_type_traits ; -alias cxx11_hdr_type_traits : cxx11_hdr_type_traits.output ; -explicit cxx11_hdr_type_traits ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_TYPEINDEX : cxx11_hdr_typeindex ; -alias cxx11_hdr_typeindex : cxx11_hdr_typeindex.output ; -explicit cxx11_hdr_typeindex ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_UNORDERED_MAP : cxx11_hdr_unordered_map ; -alias cxx11_hdr_unordered_map : cxx11_hdr_unordered_map.output ; -explicit cxx11_hdr_unordered_map ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_UNORDERED_SET : cxx11_hdr_unordered_set ; -alias cxx11_hdr_unordered_set : cxx11_hdr_unordered_set.output ; -explicit cxx11_hdr_unordered_set ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_INLINE_NAMESPACES : cxx11_inline_namespaces ; -alias cxx11_inline_namespaces : cxx11_inline_namespaces.output ; -explicit cxx11_inline_namespaces ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS : cxx11_non_public_defaulted_functions ; -alias cxx11_non_public_defaulted_functions : cxx11_non_public_defaulted_functions.output ; -explicit cxx11_non_public_defaulted_functions ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_NUMERIC_LIMITS : cxx11_numeric_limits ; -alias cxx11_numeric_limits : cxx11_numeric_limits.output ; -explicit cxx11_numeric_limits ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_REF_QUALIFIERS : cxx11_ref_qualifiers ; -alias cxx11_ref_qualifiers : cxx11_ref_qualifiers.output ; -explicit cxx11_ref_qualifiers ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_SMART_PTR : cxx11_smart_ptr ; -alias cxx11_smart_ptr : cxx11_smart_ptr.output ; -explicit cxx11_smart_ptr ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_STD_ALIGN : cxx11_std_align ; -alias cxx11_std_align : cxx11_std_align.output ; -explicit cxx11_std_align ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_TRAILING_RESULT_TYPES : cxx11_trailing_result_types ; -alias cxx11_trailing_result_types : cxx11_trailing_result_types.output ; -explicit cxx11_trailing_result_types ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_USER_DEFINED_LITERALS : cxx11_user_defined_literals ; -alias cxx11_user_defined_literals : cxx11_user_defined_literals.output ; -explicit cxx11_user_defined_literals ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX14_BINARY_LITERALS : cxx14_binary_literals ; -alias cxx14_binary_literals : cxx14_binary_literals.output ; -explicit cxx14_binary_literals ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX14_CONSTEXPR : cxx14_constexpr ; -alias cxx14_constexpr : cxx14_constexpr.output ; -explicit cxx14_constexpr ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX14_DECLTYPE_AUTO : cxx14_decltype_auto ; -alias cxx14_decltype_auto : cxx14_decltype_auto.output ; -explicit cxx14_decltype_auto ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX14_DIGIT_SEPARATORS : cxx14_digit_separators ; -alias cxx14_digit_separators : cxx14_digit_separators.output ; -explicit cxx14_digit_separators ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX14_GENERIC_LAMBDAS : cxx14_generic_lambdas ; -alias cxx14_generic_lambdas : cxx14_generic_lambdas.output ; -explicit cxx14_generic_lambdas ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX14_HDR_SHARED_MUTEX : cxx14_hdr_shared_mutex ; -alias cxx14_hdr_shared_mutex : cxx14_hdr_shared_mutex.output ; -explicit cxx14_hdr_shared_mutex ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES : cxx14_initialized_lambda_captures ; -alias cxx14_initialized_lambda_captures : cxx14_initialized_lambda_captures.output ; -explicit cxx14_initialized_lambda_captures ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX14_AGGREGATE_NSDMI : cxx14_aggregate_nsdmi ; -alias cxx14_aggregate_nsdmi : cxx14_aggregate_nsdmi.output ; -explicit cxx14_aggregate_nsdmi ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION : cxx14_return_type_deduction ; -alias cxx14_return_type_deduction : cxx14_return_type_deduction.output ; -explicit cxx14_return_type_deduction ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX14_VARIABLE_TEMPLATES : cxx14_variable_templates ; -alias cxx14_variable_templates : cxx14_variable_templates.output ; -explicit cxx14_variable_templates ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_HDR_FUNCTIONAL : cxx11_hdr_functional ; -alias cxx11_hdr_functional : cxx11_hdr_functional.output ; -explicit cxx11_hdr_functional ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_DECLTYPE : cxx11_decltype ; -alias cxx11_decltype : cxx11_decltype.output ; -explicit cxx11_decltype ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_DECLTYPE_N3276 : cxx11_decltype_n3276 ; -alias cxx11_decltype_n3276 : cxx11_decltype_n3276.output ; -explicit cxx11_decltype_n3276 ; -run-simple test_case.cpp : : : TEST_BOOST_DEDUCED_TYPENAME : boost_deduced_typename ; -alias boost_deduced_typename : boost_deduced_typename.output ; -explicit boost_deduced_typename ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_DEFAULTED_FUNCTIONS : cxx11_defaulted_functions ; -alias cxx11_defaulted_functions : cxx11_defaulted_functions.output ; -explicit cxx11_defaulted_functions ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_DELETED_FUNCTIONS : cxx11_deleted_functions ; -alias cxx11_deleted_functions : cxx11_deleted_functions.output ; -explicit cxx11_deleted_functions ; -run-simple test_case.cpp : : : TEST_BOOST_NO_DEPENDENT_NESTED_DERIVATIONS : dependent_nested_derivations ; -alias dependent_nested_derivations : dependent_nested_derivations.output ; -explicit dependent_nested_derivations ; -run-simple test_case.cpp : : : TEST_BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS : dependent_types_in_template_value_parameters ; -alias dependent_types_in_template_value_parameters : dependent_types_in_template_value_parameters.output ; -explicit dependent_types_in_template_value_parameters ; -run-simple test_case.cpp : : : TEST_BOOST_NO_EXCEPTION_STD_NAMESPACE : exception_std_namespace ; -alias exception_std_namespace : exception_std_namespace.output ; -explicit exception_std_namespace ; -run-simple test_case.cpp : : : TEST_BOOST_NO_EXCEPTIONS : exceptions ; -alias exceptions : exceptions.output ; -explicit exceptions ; -run-simple test_case.cpp : : : TEST_BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS : explicit_function_template_arguments ; -alias explicit_function_template_arguments : explicit_function_template_arguments.output ; -explicit explicit_function_template_arguments ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS : cxx11_explicit_conversion_operators ; -alias cxx11_explicit_conversion_operators : cxx11_explicit_conversion_operators.output ; -explicit cxx11_explicit_conversion_operators ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_EXTERN_TEMPLATE : cxx11_extern_template ; -alias cxx11_extern_template : cxx11_extern_template.output ; -explicit cxx11_extern_template ; -run-simple test_case.cpp : : : TEST_BOOST_NO_FENV_H : fenv_h ; -alias fenv_h : fenv_h.output ; -explicit fenv_h ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS : cxx11_fixed_length_variadic_template_expansion_packs ; -alias cxx11_fixed_length_variadic_template_expansion_packs : cxx11_fixed_length_variadic_template_expansion_packs.output ; -explicit cxx11_fixed_length_variadic_template_expansion_packs ; -run-simple test_case.cpp : : : TEST_BOOST_NO_FUNCTION_TEMPLATE_ORDERING : function_template_ordering ; -alias function_template_ordering : function_template_ordering.output ; -explicit function_template_ordering ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS : cxx11_function_template_default_args ; -alias cxx11_function_template_default_args : cxx11_function_template_default_args.output ; -explicit cxx11_function_template_default_args ; -run-simple test_case.cpp : : : TEST_BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS : function_type_specializations ; -alias function_type_specializations : function_type_specializations.output ; -explicit function_type_specializations ; -run-simple test_case.cpp : : : TEST_BOOST_NO_MS_INT64_NUMERIC_LIMITS : ms_int64_numeric_limits ; -alias ms_int64_numeric_limits : ms_int64_numeric_limits.output ; -explicit ms_int64_numeric_limits ; -run-simple test_case.cpp : : : TEST_BOOST_NO_INCLASS_MEMBER_INITIALIZATION : inclass_member_initialization ; -alias inclass_member_initialization : inclass_member_initialization.output ; -explicit inclass_member_initialization ; -run-simple test_case.cpp : : : TEST_BOOST_NO_INTEGRAL_INT64_T : integral_int64_t ; -alias integral_int64_t : integral_int64_t.output ; -explicit integral_int64_t ; -run-simple test_case.cpp : : : TEST_BOOST_NO_IOSFWD : iosfwd ; -alias iosfwd : iosfwd.output ; -explicit iosfwd ; -run-simple test_case.cpp : : : TEST_BOOST_NO_IOSTREAM : iostream ; -alias iostream : iostream.output ; -explicit iostream ; -run-simple test_case.cpp : : : TEST_BOOST_NO_IS_ABSTRACT : is_abstract ; -alias is_abstract : is_abstract.output ; -explicit is_abstract ; -run-simple test_case.cpp : : : TEST_BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS : templated_iterator_constructors ; -alias templated_iterator_constructors : templated_iterator_constructors.output ; -explicit templated_iterator_constructors ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_LAMBDAS : cxx11_lambdas ; -alias cxx11_lambdas : cxx11_lambdas.output ; -explicit cxx11_lambdas ; -run-simple test_case.cpp : : : TEST_BOOST_NO_LIMITS : limits ; -alias limits : limits.output ; -explicit limits ; -run-simple test_case.cpp : : : TEST_BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS : limits_compile_time_constants ; -alias limits_compile_time_constants : limits_compile_time_constants.output ; -explicit limits_compile_time_constants ; -run-simple test_case.cpp : : : TEST_BOOST_NO_LONG_LONG_NUMERIC_LIMITS : long_long_numeric_limits ; -alias long_long_numeric_limits : long_long_numeric_limits.output ; -explicit long_long_numeric_limits ; -run-simple test_case.cpp : : : TEST_BOOST_NO_LONG_LONG : long_long ; -alias long_long : long_long.output ; -explicit long_long ; -run-simple test_case.cpp : : : TEST_BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS : member_function_specializations ; -alias member_function_specializations : member_function_specializations.output ; -explicit member_function_specializations ; -run-simple test_case.cpp : : : TEST_BOOST_NO_MEMBER_TEMPLATE_KEYWORD : member_template_keyword ; -alias member_template_keyword : member_template_keyword.output ; -explicit member_template_keyword ; -run-simple test_case.cpp : : : TEST_BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS : pointer_to_member_template_parameters ; -alias pointer_to_member_template_parameters : pointer_to_member_template_parameters.output ; -explicit pointer_to_member_template_parameters ; -run-simple test_case.cpp : : : TEST_BOOST_NO_MEMBER_TEMPLATE_FRIENDS : member_template_friends ; -alias member_template_friends : member_template_friends.output ; -explicit member_template_friends ; -run-simple test_case.cpp : : : TEST_BOOST_NO_MEMBER_TEMPLATES : member_templates ; -alias member_templates : member_templates.output ; -explicit member_templates ; -run-simple test_case.cpp : : : TEST_BOOST_NO_NESTED_FRIENDSHIP : nested_friendship ; -alias nested_friendship : nested_friendship.output ; -explicit nested_friendship ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_NOEXCEPT : cxx11_noexcept ; -alias cxx11_noexcept : cxx11_noexcept.output ; -explicit cxx11_noexcept ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_NULLPTR : cxx11_nullptr ; -alias cxx11_nullptr : cxx11_nullptr.output ; -explicit cxx11_nullptr ; -run-simple test_case.cpp : : : TEST_BOOST_NO_OPERATORS_IN_NAMESPACE : operators_in_namespace ; -alias operators_in_namespace : operators_in_namespace.output ; -explicit operators_in_namespace ; -run-simple test_case.cpp : : : TEST_BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS : partial_specialization_implicit_default_args ; -alias partial_specialization_implicit_default_args : partial_specialization_implicit_default_args.output ; -explicit partial_specialization_implicit_default_args ; -run-simple test_case.cpp : : : TEST_BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION : template_partial_specialization ; -alias template_partial_specialization : template_partial_specialization.output ; -explicit template_partial_specialization ; -run-simple test_case.cpp : : : TEST_BOOST_NO_PRIVATE_IN_AGGREGATE : private_in_aggregate ; -alias private_in_aggregate : private_in_aggregate.output ; -explicit private_in_aggregate ; -run-simple test_case.cpp : : : TEST_BOOST_NO_POINTER_TO_MEMBER_CONST : pointer_to_member_const ; -alias pointer_to_member_const : pointer_to_member_const.output ; -explicit pointer_to_member_const ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_RANGE_BASED_FOR : cxx11_range_based_for ; -alias cxx11_range_based_for : cxx11_range_based_for.output ; -explicit cxx11_range_based_for ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_RAW_LITERALS : cxx11_raw_literals ; -alias cxx11_raw_literals : cxx11_raw_literals.output ; -explicit cxx11_raw_literals ; -run-simple test_case.cpp : : : TEST_BOOST_NO_UNREACHABLE_RETURN_DETECTION : unreachable_return_detection ; -alias unreachable_return_detection : unreachable_return_detection.output ; -explicit unreachable_return_detection ; -run-simple test_case.cpp : : : TEST_BOOST_NO_RTTI : rtti ; -alias rtti : rtti.output ; -explicit rtti ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_RVALUE_REFERENCES : cxx11_rvalue_references ; -alias cxx11_rvalue_references : cxx11_rvalue_references.output ; -explicit cxx11_rvalue_references ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_SCOPED_ENUMS : cxx11_scoped_enums ; -alias cxx11_scoped_enums : cxx11_scoped_enums.output ; -explicit cxx11_scoped_enums ; -run-simple test_case.cpp : : : TEST_BOOST_NO_SFINAE : sfinae ; -alias sfinae : sfinae.output ; -explicit sfinae ; -run-simple test_case.cpp : : : TEST_BOOST_NO_SFINAE_EXPR : sfinae_expr ; -alias sfinae_expr : sfinae_expr.output ; -explicit sfinae_expr ; -run-simple test_case.cpp : : : TEST_BOOST_NO_STRINGSTREAM : stringstream ; -alias stringstream : stringstream.output ; -explicit stringstream ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_STATIC_ASSERT : cxx11_static_assert ; -alias cxx11_static_assert : cxx11_static_assert.output ; -explicit cxx11_static_assert ; -run-simple test_case.cpp : : : TEST_BOOST_NO_STD_ALLOCATOR : std_allocator ; -alias std_allocator : std_allocator.output ; -explicit std_allocator ; -run-simple test_case.cpp : : : TEST_BOOST_NO_STD_DISTANCE : std_distance ; -alias std_distance : std_distance.output ; -explicit std_distance ; -run-simple test_case.cpp : : : TEST_BOOST_NO_STD_ITERATOR_TRAITS : std_iterator_traits ; -alias std_iterator_traits : std_iterator_traits.output ; -explicit std_iterator_traits ; -run-simple test_case.cpp : : : TEST_BOOST_NO_STD_ITERATOR : std_iterator ; -alias std_iterator : std_iterator.output ; -explicit std_iterator ; -run-simple test_case.cpp : : : TEST_BOOST_NO_STD_LOCALE : std_locale ; -alias std_locale : std_locale.output ; -explicit std_locale ; -run-simple test_case.cpp : : : TEST_BOOST_NO_STD_MESSAGES : std_messages ; -alias std_messages : std_messages.output ; -explicit std_messages ; -run-simple test_case.cpp : : : TEST_BOOST_NO_STD_MIN_MAX : std_min_max ; -alias std_min_max : std_min_max.output ; -explicit std_min_max ; -run-simple test_case.cpp : : : TEST_BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN : std_output_iterator_assign ; -alias std_output_iterator_assign : std_output_iterator_assign.output ; -explicit std_output_iterator_assign ; -run-simple test_case.cpp : : : TEST_BOOST_NO_STD_TYPEINFO : std_typeinfo ; -alias std_typeinfo : std_typeinfo.output ; -explicit std_typeinfo ; -run-simple test_case.cpp : : : TEST_BOOST_NO_STD_USE_FACET : std_use_facet ; -alias std_use_facet : std_use_facet.output ; -explicit std_use_facet ; -run-simple test_case.cpp : : : TEST_BOOST_NO_STD_WSTREAMBUF : std_wstreambuf ; -alias std_wstreambuf : std_wstreambuf.output ; -explicit std_wstreambuf ; -run-simple test_case.cpp : : : TEST_BOOST_NO_STD_WSTRING : std_wstring ; -alias std_wstring : std_wstring.output ; -explicit std_wstring ; -run-simple test_case.cpp : : : TEST_BOOST_NO_STDC_NAMESPACE : stdc_namespace ; -alias stdc_namespace : stdc_namespace.output ; -explicit stdc_namespace ; -run-simple test_case.cpp : : : TEST_BOOST_NO_SWPRINTF : swprintf ; -alias swprintf : swprintf.output ; -explicit swprintf ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS : cxx11_local_class_template_parameters ; -alias cxx11_local_class_template_parameters : cxx11_local_class_template_parameters.output ; -explicit cxx11_local_class_template_parameters ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_TEMPLATE_ALIASES : cxx11_template_aliases ; -alias cxx11_template_aliases : cxx11_template_aliases.output ; -explicit cxx11_template_aliases ; -run-simple test_case.cpp : : : TEST_BOOST_NO_TEMPLATED_IOSTREAMS : templated_iostreams ; -alias templated_iostreams : templated_iostreams.output ; -explicit templated_iostreams ; -run-simple test_case.cpp : : : TEST_BOOST_NO_TEMPLATE_TEMPLATES : template_templates ; -alias template_templates : template_templates.output ; -explicit template_templates ; -run-simple test_case.cpp : : : TEST_BOOST_NO_TWO_PHASE_NAME_LOOKUP : two_phase_name_lookup ; -alias two_phase_name_lookup : two_phase_name_lookup.output ; -explicit two_phase_name_lookup ; -run-simple test_case.cpp : : : TEST_BOOST_NO_TYPEID : typeid ; -alias typeid : typeid.output ; -explicit typeid ; -run-simple test_case.cpp : : : TEST_BOOST_NO_TYPENAME_WITH_CTOR : typename_with_ctor ; -alias typename_with_ctor : typename_with_ctor.output ; -explicit typename_with_ctor ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_UNICODE_LITERALS : cxx11_unicode_literals ; -alias cxx11_unicode_literals : cxx11_unicode_literals.output ; -explicit cxx11_unicode_literals ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX : cxx11_unified_initialization_syntax ; -alias cxx11_unified_initialization_syntax : cxx11_unified_initialization_syntax.output ; -explicit cxx11_unified_initialization_syntax ; -run-simple test_case.cpp : : : TEST_BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL : boost_function_scope_using_declaration_breaks_adl ; -alias boost_function_scope_using_declaration_breaks_adl : boost_function_scope_using_declaration_breaks_adl.output ; -explicit boost_function_scope_using_declaration_breaks_adl ; -run-simple test_case.cpp : : : TEST_BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE : using_declaration_overloads_from_typename_base ; -alias using_declaration_overloads_from_typename_base : using_declaration_overloads_from_typename_base.output ; -explicit using_declaration_overloads_from_typename_base ; -run-simple test_case.cpp : : : TEST_BOOST_NO_USING_TEMPLATE : using_template ; -alias using_template : using_template.output ; -explicit using_template ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_VARIADIC_MACROS : cxx11_variadic_macros ; -alias cxx11_variadic_macros : cxx11_variadic_macros.output ; -explicit cxx11_variadic_macros ; -run-simple test_case.cpp : : : TEST_BOOST_NO_CXX11_VARIADIC_TEMPLATES : cxx11_variadic_templates ; -alias cxx11_variadic_templates : cxx11_variadic_templates.output ; -explicit cxx11_variadic_templates ; -run-simple test_case.cpp : : : TEST_BOOST_NO_VOID_RETURNS : void_returns ; -alias void_returns : void_returns.output ; -explicit void_returns ; -run-simple test_case.cpp : : : TEST_BOOST_NO_INTRINSIC_WCHAR_T : intrinsic_wchar_t ; -alias intrinsic_wchar_t : intrinsic_wchar_t.output ; -explicit intrinsic_wchar_t ; +run-simple TEST_BOOST_HAS_TWO_ARG_USE_FACET : two_arg_use_facet ; +run-simple TEST_BOOST_HAS_BETHREADS : bethreads ; +run-simple TEST_BOOST_HAS_CLOCK_GETTIME : clock_gettime ; +run-simple TEST_BOOST_HAS_DIRENT_H : dirent_h ; +run-simple TEST_BOOST_HAS_EXPM1 : expm1 ; +run-simple TEST_BOOST_HAS_FLOAT128 : float128 ; +run-simple TEST_BOOST_HAS_FTIME : ftime ; +run-simple TEST_BOOST_HAS_GETSYSTEMTIMEASFILETIME : getsystemtimeasfiletime ; +run-simple TEST_BOOST_HAS_GETTIMEOFDAY : gettimeofday ; +run-simple TEST_BOOST_HAS_HASH : hash ; +run-simple TEST_BOOST_HAS_INT128 : int128 ; +run-simple TEST_BOOST_HAS_LOG1P : log1p ; +run-simple TEST_BOOST_HAS_LONG_LONG : long_long ; +run-simple TEST_BOOST_HAS_MACRO_USE_FACET : macro_use_facet ; +run-simple TEST_BOOST_HAS_MS_INT64 : ms_int64 ; +run-simple TEST_BOOST_HAS_NANOSLEEP : nanosleep ; +run-simple TEST_BOOST_HAS_NL_TYPES_H : nl_types_h ; +run-simple TEST_BOOST_HAS_NRVO : nrvo ; +run-simple TEST_BOOST_HAS_PARTIAL_STD_ALLOCATOR : partial_std_allocator ; +run-simple TEST_BOOST_HAS_PTHREAD_DELAY_NP : pthread_delay_np ; +run-simple TEST_BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE : pthread_mutexattr_settype ; +run-simple TEST_BOOST_HAS_PTHREAD_YIELD : pthread_yield ; +run-simple TEST_BOOST_HAS_PTHREADS : pthreads ; +run-simple TEST_BOOST_HAS_RVALUE_REFS : rvalue_refs ; +run-simple TEST_BOOST_HAS_SCHED_YIELD : sched_yield ; +run-simple TEST_BOOST_HAS_SGI_TYPE_TRAITS : sgi_type_traits ; +run-simple TEST_BOOST_HAS_SIGACTION : sigaction ; +run-simple TEST_BOOST_HAS_SLIST : slist ; +run-simple TEST_BOOST_HAS_STATIC_ASSERT : static_assert ; +run-simple TEST_BOOST_HAS_STDINT_H : stdint_h ; +run-simple TEST_BOOST_HAS_STLP_USE_FACET : stlp_use_facet ; +run-simple TEST_BOOST_HAS_TR1_ARRAY : tr1_array ; +run-simple TEST_BOOST_HAS_TR1_BIND : tr1_bind ; +run-simple TEST_BOOST_HAS_TR1_COMPLEX_OVERLOADS : tr1_complex_overloads ; +run-simple TEST_BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG : tr1_complex_inverse_trig ; +run-simple TEST_BOOST_HAS_TR1_FUNCTION : tr1_function ; +run-simple TEST_BOOST_HAS_TR1_HASH : tr1_hash ; +run-simple TEST_BOOST_HAS_TR1_MEM_FN : tr1_mem_fn ; +run-simple TEST_BOOST_HAS_TR1_RANDOM : tr1_random ; +run-simple TEST_BOOST_HAS_TR1_REFERENCE_WRAPPER : tr1_reference_wrapper ; +run-simple TEST_BOOST_HAS_TR1_REGEX : tr1_regex ; +run-simple TEST_BOOST_HAS_TR1_RESULT_OF : tr1_result_of ; +run-simple TEST_BOOST_HAS_TR1_SHARED_PTR : tr1_shared_ptr ; +run-simple TEST_BOOST_HAS_TR1_TUPLE : tr1_tuple ; +run-simple TEST_BOOST_HAS_TR1_TYPE_TRAITS : tr1_type_traits ; +run-simple TEST_BOOST_HAS_TR1_UNORDERED_MAP : tr1_unordered_map ; +run-simple TEST_BOOST_HAS_TR1_UNORDERED_SET : tr1_unordered_set ; +run-simple TEST_BOOST_HAS_TR1_UTILITY : tr1_utility ; +run-simple TEST_BOOST_HAS_UNISTD_H : unistd_h ; +run-simple TEST_BOOST_HAS_VARIADIC_TMPL : variadic_tmpl ; +run-simple TEST_BOOST_MSVC6_MEMBER_TEMPLATES : boost_msvc6_member_templates ; +run-simple TEST_BOOST_MSVC_STD_ITERATOR : boost_msvc_std_iterator ; +run-simple TEST_BOOST_HAS_WINTHREADS : winthreads ; +run-simple TEST_BOOST_NO_ADL_BARRIER : adl_barrier ; +run-simple TEST_BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP : argument_dependent_lookup ; +run-simple TEST_BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS : array_type_specializations ; +run-simple TEST_BOOST_NO_CXX11_AUTO_DECLARATIONS : cxx11_auto_declarations ; +run-simple TEST_BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS : cxx11_auto_multideclarations ; +run-simple TEST_BOOST_NO_AUTO_PTR : auto_ptr ; +run-simple TEST_BOOST_BCB_PARTIAL_SPECIALIZATION_BUG : boost_bcb_partial_specialization_bug ; +run-simple TEST_BOOST_NO_CXX11_CHAR16_T : cxx11_char16_t ; +run-simple TEST_BOOST_NO_CXX11_CHAR32_T : cxx11_char32_t ; +run-simple TEST_BOOST_NO_COMPLETE_VALUE_INITIALIZATION : complete_value_initialization ; +run-simple TEST_BOOST_NO_CXX11_CONSTEXPR : cxx11_constexpr ; +run-simple TEST_BOOST_NO_CTYPE_FUNCTIONS : ctype_functions ; +run-simple TEST_BOOST_NO_CV_SPECIALIZATIONS : cv_specializations ; +run-simple TEST_BOOST_NO_CV_VOID_SPECIALIZATIONS : cv_void_specializations ; +run-simple TEST_BOOST_NO_CWCHAR : cwchar ; +run-simple TEST_BOOST_NO_CWCTYPE : cwctype ; +run-simple TEST_BOOST_NO_CXX11_ADDRESSOF : cxx11_addressof ; +run-simple TEST_BOOST_NO_CXX11_ALIGNAS : cxx11_alignas ; +run-simple TEST_BOOST_NO_CXX11_ALLOCATOR : cxx11_allocator ; +run-simple TEST_BOOST_NO_CXX11_ATOMIC_SMART_PTR : cxx11_atomic_smart_ptr ; +run-simple TEST_BOOST_NO_CXX11_FINAL : cxx11_final ; +run-simple TEST_BOOST_NO_CXX11_HDR_ARRAY : cxx11_hdr_array ; +run-simple TEST_BOOST_NO_CXX11_HDR_ATOMIC : cxx11_hdr_atomic ; +run-simple TEST_BOOST_NO_CXX11_HDR_CHRONO : cxx11_hdr_chrono ; +run-simple TEST_BOOST_NO_CXX11_HDR_CODECVT : cxx11_hdr_codecvt ; +run-simple TEST_BOOST_NO_CXX11_HDR_CONDITION_VARIABLE : cxx11_hdr_condition_variable ; +run-simple TEST_BOOST_NO_CXX11_HDR_FORWARD_LIST : cxx11_hdr_forward_list ; +run-simple TEST_BOOST_NO_CXX11_HDR_FUTURE : cxx11_hdr_future ; +run-simple TEST_BOOST_NO_CXX11_HDR_INITIALIZER_LIST : cxx11_hdr_initializer_list ; +run-simple TEST_BOOST_NO_CXX11_HDR_MUTEX : cxx11_hdr_mutex ; +run-simple TEST_BOOST_NO_CXX11_HDR_RANDOM : cxx11_hdr_random ; +run-simple TEST_BOOST_NO_CXX11_HDR_RATIO : cxx11_hdr_ratio ; +run-simple TEST_BOOST_NO_CXX11_HDR_REGEX : cxx11_hdr_regex ; +run-simple TEST_BOOST_NO_CXX11_HDR_SYSTEM_ERROR : cxx11_hdr_system_error ; +run-simple TEST_BOOST_NO_CXX11_HDR_THREAD : cxx11_hdr_thread ; +run-simple TEST_BOOST_NO_CXX11_HDR_TUPLE : cxx11_hdr_tuple ; +run-simple TEST_BOOST_NO_CXX11_HDR_TYPE_TRAITS : cxx11_hdr_type_traits ; +run-simple TEST_BOOST_NO_CXX11_HDR_TYPEINDEX : cxx11_hdr_typeindex ; +run-simple TEST_BOOST_NO_CXX11_HDR_UNORDERED_MAP : cxx11_hdr_unordered_map ; +run-simple TEST_BOOST_NO_CXX11_HDR_UNORDERED_SET : cxx11_hdr_unordered_set ; +run-simple TEST_BOOST_NO_CXX11_INLINE_NAMESPACES : cxx11_inline_namespaces ; +run-simple TEST_BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS : cxx11_non_public_defaulted_functions ; +run-simple TEST_BOOST_NO_CXX11_NUMERIC_LIMITS : cxx11_numeric_limits ; +run-simple TEST_BOOST_NO_CXX11_REF_QUALIFIERS : cxx11_ref_qualifiers ; +run-simple TEST_BOOST_NO_CXX11_SMART_PTR : cxx11_smart_ptr ; +run-simple TEST_BOOST_NO_CXX11_STD_ALIGN : cxx11_std_align ; +run-simple TEST_BOOST_NO_CXX11_THREAD_LOCAL : cxx11_thread_local ; +run-simple TEST_BOOST_NO_CXX11_TRAILING_RESULT_TYPES : cxx11_trailing_result_types ; +run-simple TEST_BOOST_NO_CXX11_USER_DEFINED_LITERALS : cxx11_user_defined_literals ; +run-simple TEST_BOOST_NO_CXX14_BINARY_LITERALS : cxx14_binary_literals ; +run-simple TEST_BOOST_NO_CXX14_CONSTEXPR : cxx14_constexpr ; +run-simple TEST_BOOST_NO_CXX14_DECLTYPE_AUTO : cxx14_decltype_auto ; +run-simple TEST_BOOST_NO_CXX14_DIGIT_SEPARATORS : cxx14_digit_separators ; +run-simple TEST_BOOST_NO_CXX14_GENERIC_LAMBDAS : cxx14_generic_lambdas ; +run-simple TEST_BOOST_NO_CXX14_HDR_SHARED_MUTEX : cxx14_hdr_shared_mutex ; +run-simple TEST_BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES : cxx14_initialized_lambda_captures ; +run-simple TEST_BOOST_NO_CXX14_AGGREGATE_NSDMI : cxx14_aggregate_nsdmi ; +run-simple TEST_BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION : cxx14_return_type_deduction ; +run-simple TEST_BOOST_NO_CXX14_VARIABLE_TEMPLATES : cxx14_variable_templates ; +run-simple TEST_BOOST_NO_CXX11_HDR_FUNCTIONAL : cxx11_hdr_functional ; +run-simple TEST_BOOST_NO_CXX11_DECLTYPE : cxx11_decltype ; +run-simple TEST_BOOST_NO_CXX11_DECLTYPE_N3276 : cxx11_decltype_n3276 ; +run-simple TEST_BOOST_DEDUCED_TYPENAME : boost_deduced_typename ; +run-simple TEST_BOOST_NO_CXX11_DEFAULTED_FUNCTIONS : cxx11_defaulted_functions ; +run-simple TEST_BOOST_NO_CXX11_DELETED_FUNCTIONS : cxx11_deleted_functions ; +run-simple TEST_BOOST_NO_DEPENDENT_NESTED_DERIVATIONS : dependent_nested_derivations ; +run-simple TEST_BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS : dependent_types_in_template_value_parameters ; +run-simple TEST_BOOST_NO_EXCEPTION_STD_NAMESPACE : exception_std_namespace ; +run-simple TEST_BOOST_NO_EXCEPTIONS : exceptions ; +run-simple TEST_BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS : explicit_function_template_arguments ; +run-simple TEST_BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS : cxx11_explicit_conversion_operators ; +run-simple TEST_BOOST_NO_CXX11_EXTERN_TEMPLATE : cxx11_extern_template ; +run-simple TEST_BOOST_NO_FENV_H : fenv_h ; +run-simple TEST_BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS : cxx11_fixed_length_variadic_template_expansion_packs ; +run-simple TEST_BOOST_NO_FUNCTION_TEMPLATE_ORDERING : function_template_ordering ; +run-simple TEST_BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS : cxx11_function_template_default_args ; +run-simple TEST_BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS : function_type_specializations ; +run-simple TEST_BOOST_NO_MS_INT64_NUMERIC_LIMITS : ms_int64_numeric_limits ; +run-simple TEST_BOOST_NO_INCLASS_MEMBER_INITIALIZATION : inclass_member_initialization ; +run-simple TEST_BOOST_NO_INTEGRAL_INT64_T : integral_int64_t ; +run-simple TEST_BOOST_NO_IOSFWD : iosfwd ; +run-simple TEST_BOOST_NO_IOSTREAM : iostream ; +run-simple TEST_BOOST_NO_IS_ABSTRACT : is_abstract ; +run-simple TEST_BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS : templated_iterator_constructors ; +run-simple TEST_BOOST_NO_CXX11_LAMBDAS : cxx11_lambdas ; +run-simple TEST_BOOST_NO_LIMITS : limits ; +run-simple TEST_BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS : limits_compile_time_constants ; +run-simple TEST_BOOST_NO_LONG_LONG_NUMERIC_LIMITS : long_long_numeric_limits ; +run-simple TEST_BOOST_NO_LONG_LONG : long_long ; +run-simple TEST_BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS : member_function_specializations ; +run-simple TEST_BOOST_NO_MEMBER_TEMPLATE_KEYWORD : member_template_keyword ; +run-simple TEST_BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS : pointer_to_member_template_parameters ; +run-simple TEST_BOOST_NO_MEMBER_TEMPLATE_FRIENDS : member_template_friends ; +run-simple TEST_BOOST_NO_MEMBER_TEMPLATES : member_templates ; +run-simple TEST_BOOST_NO_NESTED_FRIENDSHIP : nested_friendship ; +run-simple TEST_BOOST_NO_CXX11_NOEXCEPT : cxx11_noexcept ; +run-simple TEST_BOOST_NO_CXX11_NULLPTR : cxx11_nullptr ; +run-simple TEST_BOOST_NO_OPERATORS_IN_NAMESPACE : operators_in_namespace ; +run-simple TEST_BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS : partial_specialization_implicit_default_args ; +run-simple TEST_BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION : template_partial_specialization ; +run-simple TEST_BOOST_NO_PRIVATE_IN_AGGREGATE : private_in_aggregate ; +run-simple TEST_BOOST_NO_POINTER_TO_MEMBER_CONST : pointer_to_member_const ; +run-simple TEST_BOOST_NO_CXX11_RANGE_BASED_FOR : cxx11_range_based_for ; +run-simple TEST_BOOST_NO_CXX11_RAW_LITERALS : cxx11_raw_literals ; +run-simple TEST_BOOST_NO_UNREACHABLE_RETURN_DETECTION : unreachable_return_detection ; +run-simple TEST_BOOST_NO_RTTI : rtti ; +run-simple TEST_BOOST_NO_CXX11_RVALUE_REFERENCES : cxx11_rvalue_references ; +run-simple TEST_BOOST_NO_CXX11_SCOPED_ENUMS : cxx11_scoped_enums ; +run-simple TEST_BOOST_NO_SFINAE : sfinae ; +run-simple TEST_BOOST_NO_SFINAE_EXPR : sfinae_expr ; +run-simple TEST_BOOST_NO_STRINGSTREAM : stringstream ; +run-simple TEST_BOOST_NO_CXX11_STATIC_ASSERT : cxx11_static_assert ; +run-simple TEST_BOOST_NO_STD_ALLOCATOR : std_allocator ; +run-simple TEST_BOOST_NO_STD_DISTANCE : std_distance ; +run-simple TEST_BOOST_NO_STD_ITERATOR_TRAITS : std_iterator_traits ; +run-simple TEST_BOOST_NO_STD_ITERATOR : std_iterator ; +run-simple TEST_BOOST_NO_STD_LOCALE : std_locale ; +run-simple TEST_BOOST_NO_STD_MESSAGES : std_messages ; +run-simple TEST_BOOST_NO_STD_MIN_MAX : std_min_max ; +run-simple TEST_BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN : std_output_iterator_assign ; +run-simple TEST_BOOST_NO_STD_TYPEINFO : std_typeinfo ; +run-simple TEST_BOOST_NO_STD_USE_FACET : std_use_facet ; +run-simple TEST_BOOST_NO_STD_WSTREAMBUF : std_wstreambuf ; +run-simple TEST_BOOST_NO_STD_WSTRING : std_wstring ; +run-simple TEST_BOOST_NO_STDC_NAMESPACE : stdc_namespace ; +run-simple TEST_BOOST_NO_SWPRINTF : swprintf ; +run-simple TEST_BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS : cxx11_local_class_template_parameters ; +run-simple TEST_BOOST_NO_CXX11_TEMPLATE_ALIASES : cxx11_template_aliases ; +run-simple TEST_BOOST_NO_TEMPLATED_IOSTREAMS : templated_iostreams ; +run-simple TEST_BOOST_NO_TEMPLATE_TEMPLATES : template_templates ; +run-simple TEST_BOOST_NO_TWO_PHASE_NAME_LOOKUP : two_phase_name_lookup ; +run-simple TEST_BOOST_NO_TYPEID : typeid ; +run-simple TEST_BOOST_NO_TYPENAME_WITH_CTOR : typename_with_ctor ; +run-simple TEST_BOOST_NO_CXX11_UNICODE_LITERALS : cxx11_unicode_literals ; +run-simple TEST_BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX : cxx11_unified_initialization_syntax ; +run-simple TEST_BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL : boost_function_scope_using_declaration_breaks_adl ; +run-simple TEST_BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE : using_declaration_overloads_from_typename_base ; +run-simple TEST_BOOST_NO_USING_TEMPLATE : using_template ; +run-simple TEST_BOOST_NO_CXX11_VARIADIC_MACROS : cxx11_variadic_macros ; +run-simple TEST_BOOST_NO_CXX11_VARIADIC_TEMPLATES : cxx11_variadic_templates ; +run-simple TEST_BOOST_NO_VOID_RETURNS : void_returns ; +run-simple TEST_BOOST_NO_INTRINSIC_WCHAR_T : intrinsic_wchar_t ; diff --git a/checks/test_case.cpp b/checks/test_case.cpp index 6193e82d..bf309432 100644 --- a/checks/test_case.cpp +++ b/checks/test_case.cpp @@ -1,4 +1,4 @@ -// This file was automatically generated on Thu Aug 13 16:32:12 2015 +// This file was automatically generated on Fri Jul 1 18:47:25 2016 // by libs/config/tools/generate.cpp // Copyright John Maddock 2002-4. // Use, modification and distribution are subject to the @@ -405,6 +405,10 @@ namespace test = boost_no_cxx11_smart_ptr; # include "../test/boost_no_cxx11_std_align.ipp" namespace test = boost_no_cxx11_std_align; #endif +#ifdef TEST_BOOST_NO_CXX11_THREAD_LOCAL +# include "../test/boost_no_cxx11_thread_local.ipp" +namespace test = boost_no_cxx11_thread_local; +#endif #ifdef TEST_BOOST_NO_CXX11_TRAILING_RESULT_TYPES # include "../test/boost_no_cxx11_trailing_result_types.ipp" namespace test = boost_no_cxx11_trailing_result_types; diff --git a/doc/html/boost_config/boost_macro_reference.html b/doc/html/boost_config/boost_macro_reference.html index acda8ff0..691a11c5 100644 --- a/doc/html/boost_config/boost_macro_reference.html +++ b/doc/html/boost_config/boost_macro_reference.html @@ -3115,6 +3115,19 @@ + +

+ BOOST_NO_CXX11_THREAD_LOCAL +

+ + +

+ The compiler does not support the thread_local + storage specifier. +

+ + +

BOOST_NO_CXX11_TRAILING_RESULT_TYPES @@ -5635,7 +5648,7 @@

- See Guidelines + See Guidelines for Authors of Boost Libraries Containing Separate Source

diff --git a/doc/html/index.html b/doc/html/index.html index b1e51ae0..5ff77786 100644 --- a/doc/html/index.html +++ b/doc/html/index.html @@ -988,7 +988,7 @@
- +

Last revised: August 13, 2015 at 16:11:58 GMT

Last revised: July 02, 2016 at 08:07:27 GMT


diff --git a/doc/macro_reference.qbk b/doc/macro_reference.qbk index 0973c365..e9944040 100644 --- a/doc/macro_reference.qbk +++ b/doc/macro_reference.qbk @@ -702,6 +702,8 @@ scoped enumerations (`enum class`). ]] [[`BOOST_NO_CXX11_TEMPLATE_ALIASES`][The compiler does not support template aliases. ]] +[[`BOOST_NO_CXX11_THREAD_LOCAL`][The compiler does not support the `thread_local` storage specifier. +]] [[`BOOST_NO_CXX11_TRAILING_RESULT_TYPES`][The compiler does not support the new function result type specification syntax (e.g. `auto foo(T) -> T;`).]] [[`BOOST_NO_CXX11_UNICODE_LITERALS`][The compiler does not support @@ -1360,7 +1362,7 @@ include separate source code, and are intended to address several issues: * Fixing the ABI of the compiled library * Selecting which compiled library to link against based upon the compilers settings -See [@http://svn.boost.org/trac/boost/wiki/Guidelines/Separate Guidelines for Authors of Boost Libraries Containing Separate Source] +See [@http://www.boost.org/development/separate_compilation.html Guidelines for Authors of Boost Libraries Containing Separate Source] [section Macros controlling shared library symbol visibility] diff --git a/include/boost/config/compiler/borland.hpp b/include/boost/config/compiler/borland.hpp index 80dd2300..ccd930ea 100644 --- a/include/boost/config/compiler/borland.hpp +++ b/include/boost/config/compiler/borland.hpp @@ -196,6 +196,7 @@ #define BOOST_NO_CXX11_INLINE_NAMESPACES #define BOOST_NO_CXX11_REF_QUALIFIERS #define BOOST_NO_CXX11_FINAL +#define BOOST_NO_CXX11_THREAD_LOCAL // C++ 14: #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304) diff --git a/include/boost/config/compiler/clang.hpp b/include/boost/config/compiler/clang.hpp index 01355bb7..150e3c0d 100644 --- a/include/boost/config/compiler/clang.hpp +++ b/include/boost/config/compiler/clang.hpp @@ -39,9 +39,20 @@ # define BOOST_NO_TYPEID #endif -#if defined(__int64) && !defined(__GNUC__) +#if !__has_feature(cxx_thread_local) +# define BOOST_NO_CXX11_THREAD_LOCAL +#endif + +#ifdef __is_identifier +#if !__is_identifier(__int64) && !defined(__GNUC__) # define BOOST_HAS_MS_INT64 #endif +#endif + +#if __has_include() +# define BOOST_HAS_STDINT_H +#endif + #define BOOST_HAS_NRVO @@ -107,11 +118,16 @@ // // Currently clang on Windows using VC++ RTL does not support C++11's char16_t or char32_t // -#if defined(_MSC_VER) || !(defined(__GXX_EXPERIMENTAL_CXX0X__) || __cplusplus >= 201103L) +#if (defined(_MSC_VER) && (_MSC_VER < 1900)) || !(defined(__GXX_EXPERIMENTAL_CXX0X__) || __cplusplus >= 201103L) # define BOOST_NO_CXX11_CHAR16_T # define BOOST_NO_CXX11_CHAR32_T #endif +#if defined(_MSC_VER) && (_MSC_VER >= 1800) && !defined(__GNUC__) +#define BOOST_HAS_EXPM1 +#define BOOST_HAS_LOG1P +#endif + #if !__has_feature(cxx_constexpr) # define BOOST_NO_CXX11_CONSTEXPR #endif diff --git a/include/boost/config/compiler/codegear.hpp b/include/boost/config/compiler/codegear.hpp index 02bd792a..e2f6061b 100644 --- a/include/boost/config/compiler/codegear.hpp +++ b/include/boost/config/compiler/codegear.hpp @@ -122,6 +122,7 @@ #define BOOST_NO_CXX11_INLINE_NAMESPACES #define BOOST_NO_CXX11_REF_QUALIFIERS #define BOOST_NO_CXX11_FINAL +#define BOOST_NO_CXX11_THREAD_LOCAL // C++ 14: #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304) diff --git a/include/boost/config/compiler/comeau.hpp b/include/boost/config/compiler/comeau.hpp index 278222dc..09841604 100644 --- a/include/boost/config/compiler/comeau.hpp +++ b/include/boost/config/compiler/comeau.hpp @@ -12,7 +12,7 @@ // Comeau C++ compiler setup: -#include "boost/config/compiler/common_edg.hpp" +#include #if (__COMO_VERSION__ <= 4245) diff --git a/include/boost/config/compiler/common_edg.hpp b/include/boost/config/compiler/common_edg.hpp index b92e574d..c09faeb0 100644 --- a/include/boost/config/compiler/common_edg.hpp +++ b/include/boost/config/compiler/common_edg.hpp @@ -106,6 +106,7 @@ #define BOOST_NO_CXX11_INLINE_NAMESPACES #define BOOST_NO_CXX11_REF_QUALIFIERS #define BOOST_NO_CXX11_FINAL +#define BOOST_NO_CXX11_THREAD_LOCAL // C++ 14: #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304) diff --git a/include/boost/config/compiler/compaq_cxx.hpp b/include/boost/config/compiler/compaq_cxx.hpp index b44486c6..4d6b8ab3 100644 --- a/include/boost/config/compiler/compaq_cxx.hpp +++ b/include/boost/config/compiler/compaq_cxx.hpp @@ -9,7 +9,7 @@ #define BOOST_COMPILER "HP Tru64 C++ " BOOST_STRINGIZE(__DECCXX_VER) -#include "boost/config/compiler/common_edg.hpp" +#include // // versions check: diff --git a/include/boost/config/compiler/cray.hpp b/include/boost/config/compiler/cray.hpp index 3f660433..837f8152 100644 --- a/include/boost/config/compiler/cray.hpp +++ b/include/boost/config/compiler/cray.hpp @@ -21,7 +21,7 @@ # error "Unsupported Cray compiler, please try running the configure script." #endif -#include "boost/config/compiler/common_edg.hpp" +#include // @@ -60,6 +60,7 @@ #define BOOST_NO_CXX11_CHAR16_T #define BOOST_NO_CXX11_REF_QUALIFIERS #define BOOST_NO_CXX11_FINAL +#define BOOST_NO_CXX11_THREAD_LOCAL //#define BOOST_BCB_PARTIAL_SPECIALIZATION_BUG diff --git a/include/boost/config/compiler/digitalmars.hpp b/include/boost/config/compiler/digitalmars.hpp index a3d293c7..c344aae0 100644 --- a/include/boost/config/compiler/digitalmars.hpp +++ b/include/boost/config/compiler/digitalmars.hpp @@ -82,6 +82,7 @@ #define BOOST_NO_CXX11_INLINE_NAMESPACES #define BOOST_NO_CXX11_REF_QUALIFIERS #define BOOST_NO_CXX11_FINAL +#define BOOST_NO_CXX11_THREAD_LOCAL // C++ 14: #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304) diff --git a/include/boost/config/compiler/gcc.hpp b/include/boost/config/compiler/gcc.hpp index fbd3dd9c..e319d049 100644 --- a/include/boost/config/compiler/gcc.hpp +++ b/include/boost/config/compiler/gcc.hpp @@ -252,6 +252,7 @@ // #if (BOOST_GCC_VERSION < 40800) || !defined(BOOST_GCC_CXX11) # define BOOST_NO_CXX11_ALIGNAS +# define BOOST_NO_CXX11_THREAD_LOCAL #endif // C++0x features in 4.8.1 and later diff --git a/include/boost/config/compiler/gcc_xml.hpp b/include/boost/config/compiler/gcc_xml.hpp index c11f29dd..b56c7862 100644 --- a/include/boost/config/compiler/gcc_xml.hpp +++ b/include/boost/config/compiler/gcc_xml.hpp @@ -59,7 +59,8 @@ # define BOOST_NO_CXX11_TRAILING_RESULT_TYPES # define BOOST_NO_CXX11_INLINE_NAMESPACES # define BOOST_NO_CXX11_REF_QUALIFIERS -#define BOOST_NO_CXX11_FINAL +# define BOOST_NO_CXX11_FINAL +# define BOOST_NO_CXX11_THREAD_LOCAL // C++ 14: #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304) diff --git a/include/boost/config/compiler/greenhills.hpp b/include/boost/config/compiler/greenhills.hpp index 038b6b2b..a76a07cf 100644 --- a/include/boost/config/compiler/greenhills.hpp +++ b/include/boost/config/compiler/greenhills.hpp @@ -9,7 +9,7 @@ #define BOOST_COMPILER "Greenhills C++ version " BOOST_STRINGIZE(__ghs) -#include "boost/config/compiler/common_edg.hpp" +#include // // versions check: diff --git a/include/boost/config/compiler/hp_acc.hpp b/include/boost/config/compiler/hp_acc.hpp index fb63839a..a773b8c4 100644 --- a/include/boost/config/compiler/hp_acc.hpp +++ b/include/boost/config/compiler/hp_acc.hpp @@ -13,7 +13,7 @@ // HP aCC C++ compiler setup: #if defined(__EDG__) -#include "boost/config/compiler/common_edg.hpp" +#include #endif #if (__HP_aCC <= 33100) @@ -123,6 +123,7 @@ #define BOOST_NO_CXX11_TRAILING_RESULT_TYPES #define BOOST_NO_CXX11_INLINE_NAMESPACES #define BOOST_NO_CXX11_REF_QUALIFIERS +#define BOOST_NO_CXX11_THREAD_LOCAL /* See https://forums13.itrc.hp.com/service/forums/questionanswer.do?threadId=1443331 and diff --git a/include/boost/config/compiler/intel.hpp b/include/boost/config/compiler/intel.hpp index 88ac023a..80969e9e 100644 --- a/include/boost/config/compiler/intel.hpp +++ b/include/boost/config/compiler/intel.hpp @@ -90,7 +90,7 @@ #else -#include "boost/config/compiler/common_edg.hpp" +#include #if defined(__INTEL_COMPILER) #if __INTEL_COMPILER == 9999 diff --git a/include/boost/config/compiler/kai.hpp b/include/boost/config/compiler/kai.hpp index 2337e6a8..960d501c 100644 --- a/include/boost/config/compiler/kai.hpp +++ b/include/boost/config/compiler/kai.hpp @@ -9,7 +9,7 @@ // Kai C++ compiler setup: -#include "boost/config/compiler/common_edg.hpp" +#include # if (__KCC_VERSION <= 4001) || !defined(BOOST_STRICT_CONFIG) // at least on Sun, the contents of is not in namespace std diff --git a/include/boost/config/compiler/metrowerks.hpp b/include/boost/config/compiler/metrowerks.hpp index c9301434..3c5e2286 100644 --- a/include/boost/config/compiler/metrowerks.hpp +++ b/include/boost/config/compiler/metrowerks.hpp @@ -125,6 +125,7 @@ #define BOOST_NO_CXX11_INLINE_NAMESPACES #define BOOST_NO_CXX11_REF_QUALIFIERS #define BOOST_NO_CXX11_FINAL +#define BOOST_NO_CXX11_THREAD_LOCAL // C++ 14: #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304) diff --git a/include/boost/config/compiler/mpw.hpp b/include/boost/config/compiler/mpw.hpp index 76045bcd..084f9e15 100644 --- a/include/boost/config/compiler/mpw.hpp +++ b/include/boost/config/compiler/mpw.hpp @@ -74,6 +74,7 @@ #define BOOST_NO_CXX11_INLINE_NAMESPACES #define BOOST_NO_CXX11_REF_QUALIFIERS #define BOOST_NO_CXX11_FINAL +#define BOOST_NO_CXX11_THREAD_LOCAL // C++ 14: #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304) diff --git a/include/boost/config/compiler/pathscale.hpp b/include/boost/config/compiler/pathscale.hpp index 7c211c45..a5e65af4 100644 --- a/include/boost/config/compiler/pathscale.hpp +++ b/include/boost/config/compiler/pathscale.hpp @@ -82,6 +82,7 @@ # define BOOST_NO_CXX11_INLINE_NAMESPACES # define BOOST_NO_CXX11_REF_QUALIFIERS # define BOOST_NO_CXX11_FINAL +# define BOOST_NO_CXX11_THREAD_LOCAL // C++ 14: #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304) diff --git a/include/boost/config/compiler/pgi.hpp b/include/boost/config/compiler/pgi.hpp index e5605c9e..fa2d5e40 100644 --- a/include/boost/config/compiler/pgi.hpp +++ b/include/boost/config/compiler/pgi.hpp @@ -120,6 +120,7 @@ #define BOOST_NO_CXX11_INLINE_NAMESPACES #define BOOST_NO_CXX11_REF_QUALIFIERS #define BOOST_NO_CXX11_FINAL +#define BOOST_NO_CXX11_THREAD_LOCAL // C++ 14: #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304) diff --git a/include/boost/config/compiler/sgi_mipspro.hpp b/include/boost/config/compiler/sgi_mipspro.hpp index 90688314..54433c99 100644 --- a/include/boost/config/compiler/sgi_mipspro.hpp +++ b/include/boost/config/compiler/sgi_mipspro.hpp @@ -9,7 +9,7 @@ #define BOOST_COMPILER "SGI Irix compiler version " BOOST_STRINGIZE(_COMPILER_VERSION) -#include "boost/config/compiler/common_edg.hpp" +#include // // Threading support: diff --git a/include/boost/config/compiler/sunpro_cc.hpp b/include/boost/config/compiler/sunpro_cc.hpp index 6017660c..c43767f2 100644 --- a/include/boost/config/compiler/sunpro_cc.hpp +++ b/include/boost/config/compiler/sunpro_cc.hpp @@ -132,6 +132,7 @@ #define BOOST_NO_CXX11_DECLTYPE_N3276 #define BOOST_NO_CXX11_USER_DEFINED_LITERALS #define BOOST_NO_CXX11_REF_QUALIFIERS +#define BOOST_NO_CXX11_THREAD_LOCAL #endif #define BOOST_NO_COMPLETE_VALUE_INITIALIZATION diff --git a/include/boost/config/compiler/vacpp.hpp b/include/boost/config/compiler/vacpp.hpp index 6c228eab..3fbed9fa 100644 --- a/include/boost/config/compiler/vacpp.hpp +++ b/include/boost/config/compiler/vacpp.hpp @@ -131,6 +131,7 @@ #define BOOST_NO_CXX11_INLINE_NAMESPACES #define BOOST_NO_CXX11_REF_QUALIFIERS #define BOOST_NO_CXX11_FINAL +#define BOOST_NO_CXX11_THREAD_LOCAL // C++ 14: #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304) diff --git a/include/boost/config/compiler/visualc.hpp b/include/boost/config/compiler/visualc.hpp index baaab589..72caff49 100644 --- a/include/boost/config/compiler/visualc.hpp +++ b/include/boost/config/compiler/visualc.hpp @@ -158,6 +158,11 @@ # define BOOST_NO_CXX11_DECLTYPE_N3276 #endif +#if _MSC_FULL_VER >= 180020827 +#define BOOST_HAS_EXPM1 +#define BOOST_HAS_LOG1P +#endif + // C++11 features supported by VC++ 14 (aka 2015) // #if (_MSC_FULL_VER < 190023026) @@ -175,6 +180,14 @@ # define BOOST_NO_CXX14_BINARY_LITERALS # define BOOST_NO_CXX14_GENERIC_LAMBDAS # define BOOST_NO_CXX14_DIGIT_SEPARATORS +# define BOOST_NO_CXX11_THREAD_LOCAL +#endif +// C++11 features supported by VC++ 14 update 3 (aka 2015) +// +#if (_MSC_FULL_VER < 190024210) +# define BOOST_NO_CXX14_VARIABLE_TEMPLATES +# define BOOST_NO_SFINAE_EXPR +# define BOOST_NO_CXX11_CONSTEXPR #endif // MSVC including version 14 has not yet completely @@ -193,15 +206,11 @@ // See also: http://www.boost.org/libs/utility/value_init.htm#compiler_issues // (Niels Dekker, LKEB, May 2010) #define BOOST_NO_COMPLETE_VALUE_INITIALIZATION -// C++11 features not supported by any versions -#define BOOST_NO_SFINAE_EXPR +// +// C++ 11: +// #define BOOST_NO_TWO_PHASE_NAME_LOOKUP // -// This is somewhat supported in VC14, but we may need to wait for -// a service release before enabling: -// -#define BOOST_NO_CXX11_CONSTEXPR - // C++ 14: #if !defined(__cpp_aggregate_nsdmi) || (__cpp_aggregate_nsdmi < 201304) # define BOOST_NO_CXX14_AGGREGATE_NSDMI @@ -209,9 +218,6 @@ #if !defined(__cpp_constexpr) || (__cpp_constexpr < 201304) # define BOOST_NO_CXX14_CONSTEXPR #endif -#if !defined(__cpp_variable_templates) || (__cpp_variable_templates < 201304) -# define BOOST_NO_CXX14_VARIABLE_TEMPLATES -#endif // // prefix and suffix headers: diff --git a/include/boost/config/compiler/xlcpp.hpp b/include/boost/config/compiler/xlcpp.hpp index e369ecef..2aaafc3b 100644 --- a/include/boost/config/compiler/xlcpp.hpp +++ b/include/boost/config/compiler/xlcpp.hpp @@ -238,6 +238,10 @@ # define BOOST_NO_CXX14_VARIABLE_TEMPLATES #endif +#if !__has_feature(cxx_thread_local) +# define BOOST_NO_CXX11_THREAD_LOCAL +#endif + #if __cplusplus < 201400 // All versions with __cplusplus above this value seem to support this: # define BOOST_NO_CXX14_DIGIT_SEPARATORS diff --git a/include/boost/config/select_compiler_config.hpp b/include/boost/config/select_compiler_config.hpp index 4d87093a..7a757084 100644 --- a/include/boost/config/select_compiler_config.hpp +++ b/include/boost/config/select_compiler_config.hpp @@ -122,27 +122,27 @@ // // This section allows dependency scanners to find all the headers we *might* include: // -#include "boost/config/compiler/gcc_xml.hpp" -#include "boost/config/compiler/cray.hpp" -#include "boost/config/compiler/comeau.hpp" -#include "boost/config/compiler/pathscale.hpp" -#include "boost/config/compiler/intel.hpp" -#include "boost/config/compiler/clang.hpp" -#include "boost/config/compiler/digitalmars.hpp" -#include "boost/config/compiler/gcc.hpp" -#include "boost/config/compiler/kai.hpp" -#include "boost/config/compiler/sgi_mipspro.hpp" -#include "boost/config/compiler/compaq_cxx.hpp" -#include "boost/config/compiler/greenhills.hpp" -#include "boost/config/compiler/codegear.hpp" -#include "boost/config/compiler/borland.hpp" -#include "boost/config/compiler/metrowerks.hpp" -#include "boost/config/compiler/sunpro_cc.hpp" -#include "boost/config/compiler/hp_acc.hpp" -#include "boost/config/compiler/mpw.hpp" -#include "boost/config/compiler/vacpp.hpp" -#include "boost/config/compiler/pgi.hpp" -#include "boost/config/compiler/visualc.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #endif diff --git a/include/boost/config/stdlib/libstdcpp3.hpp b/include/boost/config/stdlib/libstdcpp3.hpp index 9718bedc..a5efcb76 100644 --- a/include/boost/config/stdlib/libstdcpp3.hpp +++ b/include/boost/config/stdlib/libstdcpp3.hpp @@ -158,6 +158,18 @@ # define BOOST_LIBSTDCXX_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) #endif +// std::auto_ptr isn't provided with _GLIBCXX_DEPRECATED=0 (GCC 4.5 and earlier) +// or _GLIBCXX_USE_DEPRECATED=0 (GCC 4.6 and later). +#if defined(BOOST_LIBSTDCXX11) +# if BOOST_LIBSTDCXX_VERSION < 40600 +# if !_GLIBCXX_DEPRECATED +# define BOOST_NO_AUTO_PTR +# endif +# elif !_GLIBCXX_USE_DEPRECATED +# define BOOST_NO_AUTO_PTR +# endif +#endif + // C++0x headers in GCC 4.3.0 and later // #if (BOOST_LIBSTDCXX_VERSION < 40300) || !defined(BOOST_LIBSTDCXX11) diff --git a/include/boost/version.hpp b/include/boost/version.hpp index ce6f79f8..a382352c 100644 --- a/include/boost/version.hpp +++ b/include/boost/version.hpp @@ -19,7 +19,7 @@ // BOOST_VERSION / 100 % 1000 is the minor version // BOOST_VERSION / 100000 is the major version -#define BOOST_VERSION 106100 +#define BOOST_VERSION 106200 // // BOOST_LIB_VERSION must be defined to be the same as BOOST_VERSION @@ -27,6 +27,6 @@ // number, y is the minor version number, and z is the patch level if not 0. // This is used by to select which library version to link to. -#define BOOST_LIB_VERSION "1_61" +#define BOOST_LIB_VERSION "1_62" #endif diff --git a/test/all/Jamfile.v2 b/test/all/Jamfile.v2 index 9d0b1e09..01f53d21 100644 --- a/test/all/Jamfile.v2 +++ b/test/all/Jamfile.v2 @@ -1,7 +1,7 @@ # # Regression test Jamfile for boost configuration setup. # *** DO NOT EDIT THIS FILE BY HAND *** -# This file was automatically generated on Thu Aug 13 16:32:12 2015 +# This file was automatically generated on Fri Jul 1 18:47:25 2016 # by libs/config/tools/generate.cpp # Copyright John Maddock. # Use, modification and distribution are subject to the @@ -319,6 +319,9 @@ test-suite "BOOST_NO_CXX11_SMART_PTR" : test-suite "BOOST_NO_CXX11_STD_ALIGN" : [ run ../no_cxx11_std_align_pass.cpp ] [ compile-fail ../no_cxx11_std_align_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_THREAD_LOCAL" : +[ run ../no_cxx11_thread_local_pass.cpp ] +[ compile-fail ../no_cxx11_thread_local_fail.cpp ] ; test-suite "BOOST_NO_CXX11_TRAILING_RESULT_TYPES" : [ run ../no_cxx11_trailing_result_types_pass.cpp ] [ compile-fail ../no_cxx11_trailing_result_types_fail.cpp ] ; diff --git a/test/boost_no_cxx11_thread_local.ipp b/test/boost_no_cxx11_thread_local.ipp new file mode 100644 index 00000000..795ee746 --- /dev/null +++ b/test/boost_no_cxx11_thread_local.ipp @@ -0,0 +1,24 @@ +// (C) Copyright John Maddock 2012. +// Use, modification and distribution are subject to the +// Boost Software License, Version 1.0. (See accompanying file +// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + +// See http://www.boost.org/libs/config for most recent version. + +// MACRO: BOOST_NO_CXX11_THREAD_LOCAL +// TITLE: thread_local +// DESCRIPTION: The compiler supports the thread_local storage specifier. + +#include + + +namespace boost_no_cxx11_thread_local{ + +int test() +{ + static thread_local std::string local("hello"); + return 0; +} + +} + diff --git a/test/boost_no_ret_det.ipp b/test/boost_no_ret_det.ipp index 253e4584..e57c9ed7 100644 --- a/test/boost_no_ret_det.ipp +++ b/test/boost_no_ret_det.ipp @@ -12,7 +12,7 @@ // compilers insist on it, while other issue a // bunch of warnings if it is in fact present. -#if defined( BOOST_NO_EXCEPTIONS ) && !defined( _MSC_VER ) +#if defined( BOOST_NO_EXCEPTIONS ) # include #endif @@ -20,7 +20,7 @@ namespace boost_no_unreachable_return_detection{ int checker() { -#if defined( BOOST_NO_EXCEPTIONS ) && !defined( _MSC_VER ) +#if defined( BOOST_NO_EXCEPTIONS ) && (!defined( _MSC_VER ) || defined(__clang__)) abort(); #else throw 0; diff --git a/test/config_info.cpp b/test/config_info.cpp index bd3e849d..96d2e397 100644 --- a/test/config_info.cpp +++ b/test/config_info.cpp @@ -1057,6 +1057,7 @@ void print_boost_macros() PRINT_MACRO(BOOST_NO_CXX11_STATIC_ASSERT); PRINT_MACRO(BOOST_NO_CXX11_STD_ALIGN); PRINT_MACRO(BOOST_NO_CXX11_TEMPLATE_ALIASES); + PRINT_MACRO(BOOST_NO_CXX11_THREAD_LOCAL); PRINT_MACRO(BOOST_NO_CXX11_TRAILING_RESULT_TYPES); PRINT_MACRO(BOOST_NO_CXX11_UNICODE_LITERALS); PRINT_MACRO(BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX); @@ -1134,6 +1135,12 @@ void print_boost_macros() + + + + + + // END GENERATED BLOCK PRINT_MACRO(BOOST_INTEL); diff --git a/test/config_test.cpp b/test/config_test.cpp index 18b3726d..7fbcb73d 100644 --- a/test/config_test.cpp +++ b/test/config_test.cpp @@ -1,4 +1,4 @@ -// This file was automatically generated on Thu Aug 13 16:32:12 2015 +// This file was automatically generated on Fri Jul 1 18:47:25 2016 // by libs/config/tools/generate.cpp // Copyright John Maddock 2002-4. // Use, modification and distribution are subject to the @@ -252,6 +252,11 @@ namespace boost_no_cxx11_smart_ptr = empty_boost; #else namespace boost_no_cxx11_std_align = empty_boost; #endif +#ifndef BOOST_NO_CXX11_THREAD_LOCAL +#include "boost_no_cxx11_thread_local.ipp" +#else +namespace boost_no_cxx11_thread_local = empty_boost; +#endif #ifndef BOOST_NO_CXX11_TRAILING_RESULT_TYPES #include "boost_no_cxx11_trailing_result_types.ipp" #else @@ -1491,6 +1496,11 @@ int main( int, char *[] ) std::cerr << "Failed test for BOOST_NO_CXX11_STD_ALIGN at: " << __FILE__ << ":" << __LINE__ << std::endl; ++error_count; } + if(0 != boost_no_cxx11_thread_local::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_THREAD_LOCAL at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } if(0 != boost_no_cxx11_trailing_result_types::test()) { std::cerr << "Failed test for BOOST_NO_CXX11_TRAILING_RESULT_TYPES at: " << __FILE__ << ":" << __LINE__ << std::endl; diff --git a/test/no_cxx11_thread_local_fail.cpp b/test/no_cxx11_thread_local_fail.cpp new file mode 100644 index 00000000..957c622e --- /dev/null +++ b/test/no_cxx11_thread_local_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Jul 1 18:47:25 2016 +// by libs/config/tools/generate.cpp +// Copyright John Maddock 2002-4. +// Use, modification and distribution are subject to the +// Boost Software License, Version 1.0. (See accompanying file +// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + +// See http://www.boost.org/libs/config for the most recent version.// +// Revision $Id$ +// + + +// Test file for macro BOOST_NO_CXX11_THREAD_LOCAL +// This file should not compile, if it does then +// BOOST_NO_CXX11_THREAD_LOCAL should not be defined. +// See file boost_no_cxx11_thread_local.ipp for details + +// Must not have BOOST_ASSERT_CONFIG set; it defeats +// the objective of this file: +#ifdef BOOST_ASSERT_CONFIG +# undef BOOST_ASSERT_CONFIG +#endif + +#include +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_THREAD_LOCAL +#include "boost_no_cxx11_thread_local.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_thread_local::test(); +} + diff --git a/test/no_cxx11_thread_local_pass.cpp b/test/no_cxx11_thread_local_pass.cpp new file mode 100644 index 00000000..3e54ca2b --- /dev/null +++ b/test/no_cxx11_thread_local_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Jul 1 18:47:25 2016 +// by libs/config/tools/generate.cpp +// Copyright John Maddock 2002-4. +// Use, modification and distribution are subject to the +// Boost Software License, Version 1.0. (See accompanying file +// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + +// See http://www.boost.org/libs/config for the most recent version.// +// Revision $Id$ +// + + +// Test file for macro BOOST_NO_CXX11_THREAD_LOCAL +// This file should compile, if it does not then +// BOOST_NO_CXX11_THREAD_LOCAL should be defined. +// See file boost_no_cxx11_thread_local.ipp for details + +// Must not have BOOST_ASSERT_CONFIG set; it defeats +// the objective of this file: +#ifdef BOOST_ASSERT_CONFIG +# undef BOOST_ASSERT_CONFIG +#endif + +#include +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_THREAD_LOCAL +#include "boost_no_cxx11_thread_local.ipp" +#else +namespace boost_no_cxx11_thread_local = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_thread_local::test(); +} + diff --git a/tools/generate.cpp b/tools/generate.cpp index 625e93f3..0ea4b4cc 100644 --- a/tools/generate.cpp +++ b/tools/generate.cpp @@ -208,20 +208,13 @@ void write_build_check_jamfile() "# Boost Software License, Version 1.0. (See accompanying file \n" "# LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)\n\n" "import modules ;\nimport path ; \n\n" - "actions simple_run_action\n" - "{\n" - " $(>) > $(<)\n" - "}\n" "\n" - "rule run-simple ( sources + : args * : input-files * : requirements * : target-name )\n" + "rule run-simple ( requirements * : target-name )\n" "{\n" - " obj $(target-name)_obj : $(sources) : $(requirements) ;\n" + " obj $(target-name)_obj : test_case.cpp : $(requirements) ;\n" " explicit $(target-name)_obj ;\n" - " exe $(target-name)_exe : $(target-name)_obj : $(requirements) ;\n" - " explicit $(target-name)_exe ;\n" - " #testing.capture-output $(target-name)_output : $(target-name) : $(requirements) $(target-name) ;\n" - " make $(target-name).output : $(target-name)_exe : @simple_run_action ;\n" - " explicit $(target-name).output ;\n" + " unit-test $(target-name) : $(target-name)_obj : $(requirements) ;\n" + " explicit $(target-name) ;\n" "}\n\n" ; ofs << build_config_jamfile.str() << std::endl; @@ -301,9 +294,7 @@ void process_ipp_file(const fs::path& file, bool positive_test) // Generate data for the build-checks Jamfile: static const boost::regex feature_regex("boost_(?:no|has)_(.*)"); std::string feature_name = boost::regex_replace(namespace_name, feature_regex, "\\1"); - build_config_jamfile << "run-simple test_case.cpp : : : TEST_" << macro_name << " : " << feature_name << " ;\n"; - build_config_jamfile << "alias " << feature_name << " : " << feature_name << ".output ;\n"; - build_config_jamfile << "explicit " << feature_name << " ;\n"; + build_config_jamfile << "run-simple TEST_" << macro_name << " : " << feature_name << " ;\n"; } int cpp_main(int argc, char* argv[])