diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:45:59 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:45:59 +0000 |
commit | 19fcec84d8d7d21e796c7624e521b60d28ee21ed (patch) | |
tree | 42d26aa27d1e3f7c0b8bd3fd14e7d7082f5008dc /src/boost/libs/config | |
parent | Initial commit. (diff) | |
download | ceph-upstream/16.2.11+ds.tar.xz ceph-upstream/16.2.11+ds.zip |
Adding upstream version 16.2.11+ds.upstream/16.2.11+dsupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/boost/libs/config')
800 files changed, 44913 insertions, 0 deletions
diff --git a/src/boost/libs/config/CMakeLists.txt b/src/boost/libs/config/CMakeLists.txt new file mode 100644 index 000000000..2cff703d7 --- /dev/null +++ b/src/boost/libs/config/CMakeLists.txt @@ -0,0 +1,34 @@ +# Copyright 2018 Mike Dev +# Copyright 2019 Peter Dimov +# Distributed under 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 +# +# CAUTION!!!! +# +# This addition to Boost.Config should be considered experimental and is part +# of an ongoing effort to add CMake support Boost-wide. +# +# IT IS HIGHLY LIKELY THAT THIS FILE WILL CHANGE WITHOUT NOTICE!!! +# +# DO NOT RELY ON THE CONTENTS OF THIS FILE!!! +# + +# We support CMake 3.5, but prefer 3.16 policies and behavior +cmake_minimum_required(VERSION 3.5...3.16) + +project(boost_config VERSION "${BOOST_SUPERPROJECT_VERSION}" LANGUAGES CXX) + +add_library(boost_config INTERFACE) +add_library(Boost::config ALIAS boost_config) + +target_include_directories(boost_config INTERFACE include) + +# boost_install requires PROJECT_VERSION +# Without the superproject, we don't have any, so skip installation + +if(BOOST_SUPERPROJECT_VERSION) + + include(BoostInstall) + boost_install(TARGETS boost_config HEADER_DIRECTORY include/) + +endif() diff --git a/src/boost/libs/config/README.md b/src/boost/libs/config/README.md new file mode 100644 index 000000000..a258cbc91 --- /dev/null +++ b/src/boost/libs/config/README.md @@ -0,0 +1,42 @@ +Boost Config Library +============================ + +This library provides configuration support for the Boost C++ libraries. + +The full documentation is available on [boost.org](http://www.boost.org/doc/libs/release/libs/config/index.html). + +| | Master | Develop | +|------------------|----------|-------------| +| Travis | [![Build Status](https://travis-ci.org/boostorg/config.svg?branch=master)](https://travis-ci.org/boostorg/config) | [![Build Status](https://travis-ci.org/boostorg/config.png)](https://travis-ci.org/boostorg/config) | +| Appveyor | [![Build status](https://ci.appveyor.com/api/projects/status/wo2n2mhoy8vegmuo/branch/master?svg=true)](https://ci.appveyor.com/project/jzmaddock/config/branch/master) | [![Build status](https://ci.appveyor.com/api/projects/status/wo2n2mhoy8vegmuo/branch/develop?svg=true)](https://ci.appveyor.com/project/jzmaddock/config/branch/develop) | + +## Support, bugs and feature requests ## + +Bugs and feature requests can be reported through the [Gitub issue tracker](https://github.com/boostorg/config/issues) +(see [open issues](https://github.com/boostorg/config/issues) and +[closed issues](https://github.com/boostorg/config/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aclosed)). + +You can submit your changes through a [pull request](https://github.com/boostorg/config/pulls). + +There is no mailing-list specific to Boost Config, although you can use the general-purpose Boost [mailing-list](http://lists.boost.org/mailman/listinfo.cgi/boost-users) using the tag [config]. + + +## Development ## + +Clone the whole boost project, which includes the individual Boost projects as submodules ([see boost+git doc](https://github.com/boostorg/boost/wiki/Getting-Started)): + + git clone https://github.com/boostorg/boost + cd boost + git submodule update --init + +The Boost Config Library is located in `libs/config/`. + +### Running tests ### +First, make sure you are in `libs/config/test`. +You can either run all the tests listed in `Jamfile.v2` or run a single test: + + ../../../b2 <- run all tests + ../../../b2 config_info <- single test + +### For developers ### +Please check the [Guidelines for Boost Authors](http://www.boost.org/doc/libs/release/libs/config/doc/html/boost_config/guidelines_for_boost_authors.html). from the full documentation. diff --git a/src/boost/libs/config/checks/Jamfile.v2 b/src/boost/libs/config/checks/Jamfile.v2 new file mode 100644 index 000000000..5c0c93a34 --- /dev/null +++ b/src/boost/libs/config/checks/Jamfile.v2 @@ -0,0 +1,486 @@ +# +# *** DO NOT EDIT THIS FILE BY HAND *** +# This file was automatically generated on Mon Dec 09 09:47:38 2019 +# by libs/config/tools/generate.cpp +# Copyright John Maddock. +# 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) + +import modules ; +import path ; + + +obj two_arg_use_facet : test_case.cpp : <define>TEST_BOOST_HAS_TWO_ARG_USE_FACET ; +obj bethreads : test_case.cpp : <define>TEST_BOOST_HAS_BETHREADS ; +obj clock_gettime : test_case.cpp : <define>TEST_BOOST_HAS_CLOCK_GETTIME ; +obj pragma_detect_mismatch : test_case.cpp : <define>TEST_BOOST_HAS_PRAGMA_DETECT_MISMATCH ; +obj dirent_h : test_case.cpp : <define>TEST_BOOST_HAS_DIRENT_H ; +obj expm1 : test_case.cpp : <define>TEST_BOOST_HAS_EXPM1 ; +obj float128 : test_case.cpp : <define>TEST_BOOST_HAS_FLOAT128 ; +obj ftime : test_case.cpp : <define>TEST_BOOST_HAS_FTIME ; +obj getsystemtimeasfiletime : test_case.cpp : <define>TEST_BOOST_HAS_GETSYSTEMTIMEASFILETIME ; +obj gettimeofday : test_case.cpp : <define>TEST_BOOST_HAS_GETTIMEOFDAY ; +obj hash : test_case.cpp : <define>TEST_BOOST_HAS_HASH ; +obj int128 : test_case.cpp : <define>TEST_BOOST_HAS_INT128 ; +obj log1p : test_case.cpp : <define>TEST_BOOST_HAS_LOG1P ; +obj long_long : test_case.cpp : <define>TEST_BOOST_HAS_LONG_LONG ; +obj macro_use_facet : test_case.cpp : <define>TEST_BOOST_HAS_MACRO_USE_FACET ; +obj ms_int64 : test_case.cpp : <define>TEST_BOOST_HAS_MS_INT64 ; +obj nanosleep : test_case.cpp : <define>TEST_BOOST_HAS_NANOSLEEP ; +obj nl_types_h : test_case.cpp : <define>TEST_BOOST_HAS_NL_TYPES_H ; +obj nrvo : test_case.cpp : <define>TEST_BOOST_HAS_NRVO ; +obj partial_std_allocator : test_case.cpp : <define>TEST_BOOST_HAS_PARTIAL_STD_ALLOCATOR ; +obj pthread_delay_np : test_case.cpp : <define>TEST_BOOST_HAS_PTHREAD_DELAY_NP ; +obj pthread_mutexattr_settype : test_case.cpp : <define>TEST_BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE ; +obj pthread_yield : test_case.cpp : <define>TEST_BOOST_HAS_PTHREAD_YIELD ; +obj pthreads : test_case.cpp : <define>TEST_BOOST_HAS_PTHREADS ; +obj rvalue_refs : test_case.cpp : <define>TEST_BOOST_HAS_RVALUE_REFS ; +obj sched_yield : test_case.cpp : <define>TEST_BOOST_HAS_SCHED_YIELD ; +obj sgi_type_traits : test_case.cpp : <define>TEST_BOOST_HAS_SGI_TYPE_TRAITS ; +obj sigaction : test_case.cpp : <define>TEST_BOOST_HAS_SIGACTION ; +obj slist : test_case.cpp : <define>TEST_BOOST_HAS_SLIST ; +obj static_assert : test_case.cpp : <define>TEST_BOOST_HAS_STATIC_ASSERT ; +obj stdint_h : test_case.cpp : <define>TEST_BOOST_HAS_STDINT_H ; +obj stlp_use_facet : test_case.cpp : <define>TEST_BOOST_HAS_STLP_USE_FACET ; +obj unistd_h : test_case.cpp : <define>TEST_BOOST_HAS_UNISTD_H ; +obj variadic_tmpl : test_case.cpp : <define>TEST_BOOST_HAS_VARIADIC_TMPL ; +obj boost_msvc6_member_templates : test_case.cpp : <define>TEST_BOOST_MSVC6_MEMBER_TEMPLATES ; +obj boost_msvc_std_iterator : test_case.cpp : <define>TEST_BOOST_MSVC_STD_ITERATOR ; +obj winthreads : test_case.cpp : <define>TEST_BOOST_HAS_WINTHREADS ; +obj adl_barrier : test_case.cpp : <define>TEST_BOOST_NO_ADL_BARRIER ; +obj argument_dependent_lookup : test_case.cpp : <define>TEST_BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP ; +obj array_type_specializations : test_case.cpp : <define>TEST_BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS ; +obj cxx11_auto_declarations : test_case.cpp : <define>TEST_BOOST_NO_CXX11_AUTO_DECLARATIONS ; +obj cxx11_auto_multideclarations : test_case.cpp : <define>TEST_BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS ; +obj auto_ptr : test_case.cpp : <define>TEST_BOOST_NO_AUTO_PTR ; +obj boost_bcb_partial_specialization_bug : test_case.cpp : <define>TEST_BOOST_BCB_PARTIAL_SPECIALIZATION_BUG ; +obj cxx11_char16_t : test_case.cpp : <define>TEST_BOOST_NO_CXX11_CHAR16_T ; +obj cxx11_char32_t : test_case.cpp : <define>TEST_BOOST_NO_CXX11_CHAR32_T ; +obj complete_value_initialization : test_case.cpp : <define>TEST_BOOST_NO_COMPLETE_VALUE_INITIALIZATION ; +obj cxx11_constexpr : test_case.cpp : <define>TEST_BOOST_NO_CXX11_CONSTEXPR ; +obj ctype_functions : test_case.cpp : <define>TEST_BOOST_NO_CTYPE_FUNCTIONS ; +obj cv_specializations : test_case.cpp : <define>TEST_BOOST_NO_CV_SPECIALIZATIONS ; +obj cv_void_specializations : test_case.cpp : <define>TEST_BOOST_NO_CV_VOID_SPECIALIZATIONS ; +obj cwchar : test_case.cpp : <define>TEST_BOOST_NO_CWCHAR ; +obj cwctype : test_case.cpp : <define>TEST_BOOST_NO_CWCTYPE ; +obj cxx11_addressof : test_case.cpp : <define>TEST_BOOST_NO_CXX11_ADDRESSOF ; +obj cxx11_alignas : test_case.cpp : <define>TEST_BOOST_NO_CXX11_ALIGNAS ; +obj cxx11_allocator : test_case.cpp : <define>TEST_BOOST_NO_CXX11_ALLOCATOR ; +obj cxx11_atomic_smart_ptr : test_case.cpp : <define>TEST_BOOST_NO_CXX11_ATOMIC_SMART_PTR ; +obj cxx11_defaulted_moves : test_case.cpp : <define>TEST_BOOST_NO_CXX11_DEFAULTED_MOVES ; +obj cxx11_hdr_exception : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_EXCEPTION ; +obj cxx11_final : test_case.cpp : <define>TEST_BOOST_NO_CXX11_FINAL ; +obj cxx11_hdr_array : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_ARRAY ; +obj cxx11_hdr_atomic : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_ATOMIC ; +obj cxx11_hdr_chrono : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_CHRONO ; +obj cxx11_hdr_codecvt : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_CODECVT ; +obj cxx11_hdr_condition_variable : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_CONDITION_VARIABLE ; +obj cxx11_hdr_forward_list : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_FORWARD_LIST ; +obj cxx11_hdr_future : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_FUTURE ; +obj cxx11_hdr_initializer_list : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_INITIALIZER_LIST ; +obj cxx11_hdr_mutex : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_MUTEX ; +obj cxx11_hdr_random : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_RANDOM ; +obj cxx11_hdr_ratio : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_RATIO ; +obj cxx11_hdr_regex : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_REGEX ; +obj cxx11_hdr_system_error : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_SYSTEM_ERROR ; +obj cxx11_hdr_thread : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_THREAD ; +obj cxx11_hdr_tuple : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_TUPLE ; +obj cxx11_hdr_type_traits : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_TYPE_TRAITS ; +obj cxx11_hdr_typeindex : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_TYPEINDEX ; +obj cxx11_hdr_unordered_map : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_UNORDERED_MAP ; +obj cxx11_hdr_unordered_set : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_UNORDERED_SET ; +obj cxx11_inline_namespaces : test_case.cpp : <define>TEST_BOOST_NO_CXX11_INLINE_NAMESPACES ; +obj cxx11_non_public_defaulted_functions : test_case.cpp : <define>TEST_BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS ; +obj cxx11_numeric_limits : test_case.cpp : <define>TEST_BOOST_NO_CXX11_NUMERIC_LIMITS ; +obj cxx11_pointer_traits : test_case.cpp : <define>TEST_BOOST_NO_CXX11_POINTER_TRAITS ; +obj cxx11_ref_qualifiers : test_case.cpp : <define>TEST_BOOST_NO_CXX11_REF_QUALIFIERS ; +obj cxx11_sfinae_expr : test_case.cpp : <define>TEST_BOOST_NO_CXX11_SFINAE_EXPR ; +obj cxx11_smart_ptr : test_case.cpp : <define>TEST_BOOST_NO_CXX11_SMART_PTR ; +obj cxx11_std_align : test_case.cpp : <define>TEST_BOOST_NO_CXX11_STD_ALIGN ; +obj cxx11_thread_local : test_case.cpp : <define>TEST_BOOST_NO_CXX11_THREAD_LOCAL ; +obj cxx11_trailing_result_types : test_case.cpp : <define>TEST_BOOST_NO_CXX11_TRAILING_RESULT_TYPES ; +obj cxx11_user_defined_literals : test_case.cpp : <define>TEST_BOOST_NO_CXX11_USER_DEFINED_LITERALS ; +obj cxx14_binary_literals : test_case.cpp : <define>TEST_BOOST_NO_CXX14_BINARY_LITERALS ; +obj cxx14_constexpr : test_case.cpp : <define>TEST_BOOST_NO_CXX14_CONSTEXPR ; +obj cxx14_decltype_auto : test_case.cpp : <define>TEST_BOOST_NO_CXX14_DECLTYPE_AUTO ; +obj cxx14_digit_separators : test_case.cpp : <define>TEST_BOOST_NO_CXX14_DIGIT_SEPARATORS ; +obj cxx14_generic_lambdas : test_case.cpp : <define>TEST_BOOST_NO_CXX14_GENERIC_LAMBDAS ; +obj cxx14_hdr_shared_mutex : test_case.cpp : <define>TEST_BOOST_NO_CXX14_HDR_SHARED_MUTEX ; +obj cxx14_initialized_lambda_captures : test_case.cpp : <define>TEST_BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES ; +obj cxx14_aggregate_nsdmi : test_case.cpp : <define>TEST_BOOST_NO_CXX14_AGGREGATE_NSDMI ; +obj cxx14_return_type_deduction : test_case.cpp : <define>TEST_BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION ; +obj cxx14_std_exchange : test_case.cpp : <define>TEST_BOOST_NO_CXX14_STD_EXCHANGE ; +obj cxx14_variable_templates : test_case.cpp : <define>TEST_BOOST_NO_CXX14_VARIABLE_TEMPLATES ; +obj cxx17_fold_expressions : test_case.cpp : <define>TEST_BOOST_NO_CXX17_FOLD_EXPRESSIONS ; +obj cxx17_hdr_optional : test_case.cpp : <define>TEST_BOOST_NO_CXX17_HDR_OPTIONAL ; +obj cxx17_hdr_string_view : test_case.cpp : <define>TEST_BOOST_NO_CXX17_HDR_STRING_VIEW ; +obj cxx17_hdr_variant : test_case.cpp : <define>TEST_BOOST_NO_CXX17_HDR_VARIANT ; +obj cxx17_if_constexpr : test_case.cpp : <define>TEST_BOOST_NO_CXX17_IF_CONSTEXPR ; +obj cxx17_inline_variables : test_case.cpp : <define>TEST_BOOST_NO_CXX17_INLINE_VARIABLES ; +obj cxx17_iterator_traits : test_case.cpp : <define>TEST_BOOST_NO_CXX17_ITERATOR_TRAITS ; +obj cxx17_std_apply : test_case.cpp : <define>TEST_BOOST_NO_CXX17_STD_APPLY ; +obj cxx17_std_invoke : test_case.cpp : <define>TEST_BOOST_NO_CXX17_STD_INVOKE ; +obj cxx17_structured_bindings : test_case.cpp : <define>TEST_BOOST_NO_CXX17_STRUCTURED_BINDINGS ; +obj cxx98_binders : test_case.cpp : <define>TEST_BOOST_NO_CXX98_BINDERS ; +obj cxx98_function_base : test_case.cpp : <define>TEST_BOOST_NO_CXX98_FUNCTION_BASE ; +obj cxx98_random_shuffle : test_case.cpp : <define>TEST_BOOST_NO_CXX98_RANDOM_SHUFFLE ; +obj cxx11_hdr_functional : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_FUNCTIONAL ; +obj cxx11_decltype : test_case.cpp : <define>TEST_BOOST_NO_CXX11_DECLTYPE ; +obj cxx11_decltype_n3276 : test_case.cpp : <define>TEST_BOOST_NO_CXX11_DECLTYPE_N3276 ; +obj boost_deduced_typename : test_case.cpp : <define>TEST_BOOST_DEDUCED_TYPENAME ; +obj cxx11_defaulted_functions : test_case.cpp : <define>TEST_BOOST_NO_CXX11_DEFAULTED_FUNCTIONS ; +obj cxx11_deleted_functions : test_case.cpp : <define>TEST_BOOST_NO_CXX11_DELETED_FUNCTIONS ; +obj dependent_nested_derivations : test_case.cpp : <define>TEST_BOOST_NO_DEPENDENT_NESTED_DERIVATIONS ; +obj dependent_types_in_template_value_parameters : test_case.cpp : <define>TEST_BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS ; +obj exception_std_namespace : test_case.cpp : <define>TEST_BOOST_NO_EXCEPTION_STD_NAMESPACE ; +obj exceptions : test_case.cpp : <define>TEST_BOOST_NO_EXCEPTIONS ; +obj explicit_function_template_arguments : test_case.cpp : <define>TEST_BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS ; +obj cxx11_explicit_conversion_operators : test_case.cpp : <define>TEST_BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS ; +obj cxx11_extern_template : test_case.cpp : <define>TEST_BOOST_NO_CXX11_EXTERN_TEMPLATE ; +obj fenv_h : test_case.cpp : <define>TEST_BOOST_NO_FENV_H ; +obj cxx11_fixed_length_variadic_template_expansion_packs : test_case.cpp : <define>TEST_BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS ; +obj function_template_ordering : test_case.cpp : <define>TEST_BOOST_NO_FUNCTION_TEMPLATE_ORDERING ; +obj cxx11_function_template_default_args : test_case.cpp : <define>TEST_BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS ; +obj function_type_specializations : test_case.cpp : <define>TEST_BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS ; +obj ms_int64_numeric_limits : test_case.cpp : <define>TEST_BOOST_NO_MS_INT64_NUMERIC_LIMITS ; +obj inclass_member_initialization : test_case.cpp : <define>TEST_BOOST_NO_INCLASS_MEMBER_INITIALIZATION ; +obj integral_int64_t : test_case.cpp : <define>TEST_BOOST_NO_INTEGRAL_INT64_T ; +obj iosfwd : test_case.cpp : <define>TEST_BOOST_NO_IOSFWD ; +obj iostream : test_case.cpp : <define>TEST_BOOST_NO_IOSTREAM ; +obj is_abstract : test_case.cpp : <define>TEST_BOOST_NO_IS_ABSTRACT ; +obj templated_iterator_constructors : test_case.cpp : <define>TEST_BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS ; +obj cxx11_lambdas : test_case.cpp : <define>TEST_BOOST_NO_CXX11_LAMBDAS ; +obj limits : test_case.cpp : <define>TEST_BOOST_NO_LIMITS ; +obj limits_compile_time_constants : test_case.cpp : <define>TEST_BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS ; +obj long_long_numeric_limits : test_case.cpp : <define>TEST_BOOST_NO_LONG_LONG_NUMERIC_LIMITS ; +obj member_function_specializations : test_case.cpp : <define>TEST_BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS ; +obj member_template_keyword : test_case.cpp : <define>TEST_BOOST_NO_MEMBER_TEMPLATE_KEYWORD ; +obj pointer_to_member_template_parameters : test_case.cpp : <define>TEST_BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS ; +obj member_template_friends : test_case.cpp : <define>TEST_BOOST_NO_MEMBER_TEMPLATE_FRIENDS ; +obj member_templates : test_case.cpp : <define>TEST_BOOST_NO_MEMBER_TEMPLATES ; +obj nested_friendship : test_case.cpp : <define>TEST_BOOST_NO_NESTED_FRIENDSHIP ; +obj cxx11_noexcept : test_case.cpp : <define>TEST_BOOST_NO_CXX11_NOEXCEPT ; +obj cxx11_nullptr : test_case.cpp : <define>TEST_BOOST_NO_CXX11_NULLPTR ; +obj operators_in_namespace : test_case.cpp : <define>TEST_BOOST_NO_OPERATORS_IN_NAMESPACE ; +obj partial_specialization_implicit_default_args : test_case.cpp : <define>TEST_BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS ; +obj template_partial_specialization : test_case.cpp : <define>TEST_BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION ; +obj private_in_aggregate : test_case.cpp : <define>TEST_BOOST_NO_PRIVATE_IN_AGGREGATE ; +obj pointer_to_member_const : test_case.cpp : <define>TEST_BOOST_NO_POINTER_TO_MEMBER_CONST ; +obj cxx11_range_based_for : test_case.cpp : <define>TEST_BOOST_NO_CXX11_RANGE_BASED_FOR ; +obj cxx11_raw_literals : test_case.cpp : <define>TEST_BOOST_NO_CXX11_RAW_LITERALS ; +obj restrict_references : test_case.cpp : <define>TEST_BOOST_NO_RESTRICT_REFERENCES ; +obj unreachable_return_detection : test_case.cpp : <define>TEST_BOOST_NO_UNREACHABLE_RETURN_DETECTION ; +obj rtti : test_case.cpp : <define>TEST_BOOST_NO_RTTI ; +obj cxx11_rvalue_references : test_case.cpp : <define>TEST_BOOST_NO_CXX11_RVALUE_REFERENCES ; +obj cxx11_scoped_enums : test_case.cpp : <define>TEST_BOOST_NO_CXX11_SCOPED_ENUMS ; +obj sfinae : test_case.cpp : <define>TEST_BOOST_NO_SFINAE ; +obj sfinae_expr : test_case.cpp : <define>TEST_BOOST_NO_SFINAE_EXPR ; +obj stringstream : test_case.cpp : <define>TEST_BOOST_NO_STRINGSTREAM ; +obj cxx11_static_assert : test_case.cpp : <define>TEST_BOOST_NO_CXX11_STATIC_ASSERT ; +obj std_allocator : test_case.cpp : <define>TEST_BOOST_NO_STD_ALLOCATOR ; +obj std_distance : test_case.cpp : <define>TEST_BOOST_NO_STD_DISTANCE ; +obj std_iterator_traits : test_case.cpp : <define>TEST_BOOST_NO_STD_ITERATOR_TRAITS ; +obj std_iterator : test_case.cpp : <define>TEST_BOOST_NO_STD_ITERATOR ; +obj std_locale : test_case.cpp : <define>TEST_BOOST_NO_STD_LOCALE ; +obj std_messages : test_case.cpp : <define>TEST_BOOST_NO_STD_MESSAGES ; +obj std_min_max : test_case.cpp : <define>TEST_BOOST_NO_STD_MIN_MAX ; +obj std_output_iterator_assign : test_case.cpp : <define>TEST_BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN ; +obj std_typeinfo : test_case.cpp : <define>TEST_BOOST_NO_STD_TYPEINFO ; +obj std_use_facet : test_case.cpp : <define>TEST_BOOST_NO_STD_USE_FACET ; +obj std_wstreambuf : test_case.cpp : <define>TEST_BOOST_NO_STD_WSTREAMBUF ; +obj std_wstring : test_case.cpp : <define>TEST_BOOST_NO_STD_WSTRING ; +obj stdc_namespace : test_case.cpp : <define>TEST_BOOST_NO_STDC_NAMESPACE ; +obj swprintf : test_case.cpp : <define>TEST_BOOST_NO_SWPRINTF ; +obj cxx11_local_class_template_parameters : test_case.cpp : <define>TEST_BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS ; +obj cxx11_template_aliases : test_case.cpp : <define>TEST_BOOST_NO_CXX11_TEMPLATE_ALIASES ; +obj templated_iostreams : test_case.cpp : <define>TEST_BOOST_NO_TEMPLATED_IOSTREAMS ; +obj template_templates : test_case.cpp : <define>TEST_BOOST_NO_TEMPLATE_TEMPLATES ; +obj two_phase_name_lookup : test_case.cpp : <define>TEST_BOOST_NO_TWO_PHASE_NAME_LOOKUP ; +obj typeid : test_case.cpp : <define>TEST_BOOST_NO_TYPEID ; +obj typename_with_ctor : test_case.cpp : <define>TEST_BOOST_NO_TYPENAME_WITH_CTOR ; +obj cxx11_unicode_literals : test_case.cpp : <define>TEST_BOOST_NO_CXX11_UNICODE_LITERALS ; +obj cxx11_unified_initialization_syntax : test_case.cpp : <define>TEST_BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX ; +obj cxx11_unrestricted_union : test_case.cpp : <define>TEST_BOOST_NO_CXX11_UNRESTRICTED_UNION ; +obj boost_function_scope_using_declaration_breaks_adl : test_case.cpp : <define>TEST_BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL ; +obj using_declaration_overloads_from_typename_base : test_case.cpp : <define>TEST_BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE ; +obj using_template : test_case.cpp : <define>TEST_BOOST_NO_USING_TEMPLATE ; +obj cxx11_variadic_macros : test_case.cpp : <define>TEST_BOOST_NO_CXX11_VARIADIC_MACROS ; +obj cxx11_variadic_templates : test_case.cpp : <define>TEST_BOOST_NO_CXX11_VARIADIC_TEMPLATES ; +obj void_returns : test_case.cpp : <define>TEST_BOOST_NO_VOID_RETURNS ; +obj intrinsic_wchar_t : test_case.cpp : <define>TEST_BOOST_NO_INTRINSIC_WCHAR_T ; +obj cpp_impl_destroying_delete_20 : std/cpp_impl_destroying_delete_20.cpp ; +alias cpp_impl_destroying_delete : cpp_impl_destroying_delete_20 ; +obj cpp_lib_destroying_delete_20 : std/cpp_lib_destroying_delete_20.cpp ; +alias cpp_lib_destroying_delete : cpp_lib_destroying_delete_20 ; +obj cpp_char8_t_20 : std/cpp_char8_t_20.cpp ; +alias cpp_char8_t : cpp_char8_t_20 ; +obj cpp_impl_three_way_comparison_20 : std/cpp_impl_three_way_comparison_20.cpp ; +alias cpp_impl_three_way_comparison : cpp_impl_three_way_comparison_20 ; +obj cpp_lib_three_way_comparison_20 : std/cpp_lib_three_way_comparison_20.cpp ; +alias cpp_lib_three_way_comparison : cpp_lib_three_way_comparison_20 ; +obj cpp_conditional_explicit_20 : std/cpp_conditional_explicit_20.cpp ; +alias cpp_conditional_explicit : cpp_conditional_explicit_20 ; +obj cpp_nontype_template_parameter_class_20 : std/cpp_nontype_template_parameter_class_20.cpp ; +alias cpp_nontype_template_parameter_class : cpp_nontype_template_parameter_class_20 ; +obj cpp_lib_char8_t_20 : std/cpp_lib_char8_t_20.cpp ; +alias cpp_lib_char8_t : cpp_lib_char8_t_20 ; +obj cpp_lib_concepts_20 : std/cpp_lib_concepts_20.cpp ; +alias cpp_lib_concepts : cpp_lib_concepts_20 ; +obj cpp_lib_constexpr_swap_algorithms_20 : std/cpp_lib_constexpr_swap_algorithms_20.cpp ; +alias cpp_lib_constexpr_swap_algorithms : cpp_lib_constexpr_swap_algorithms_20 ; +obj cpp_lib_constexpr_misc_20 : std/cpp_lib_constexpr_misc_20.cpp ; +alias cpp_lib_constexpr_misc : cpp_lib_constexpr_misc_20 ; +obj cpp_lib_bind_front_20 : std/cpp_lib_bind_front_20.cpp ; +alias cpp_lib_bind_front : cpp_lib_bind_front_20 ; +obj cpp_lib_is_constant_evaluated_20 : std/cpp_lib_is_constant_evaluated_20.cpp ; +alias cpp_lib_is_constant_evaluated : cpp_lib_is_constant_evaluated_20 ; +obj cpp_lib_erase_if_20 : std/cpp_lib_erase_if_20.cpp ; +alias cpp_lib_erase_if : cpp_lib_erase_if_20 ; +obj cpp_lib_list_remove_return_type_20 : std/cpp_lib_list_remove_return_type_20.cpp ; +alias cpp_lib_list_remove_return_type : cpp_lib_list_remove_return_type_20 ; +obj cpp_lib_generic_unordered_lookup_20 : std/cpp_lib_generic_unordered_lookup_20.cpp ; +alias cpp_lib_generic_unordered_lookup : cpp_lib_generic_unordered_lookup_20 ; +obj cpp_lib_ranges_20 : std/cpp_lib_ranges_20.cpp ; +alias cpp_lib_ranges : cpp_lib_ranges_20 ; +obj cpp_lib_bit_cast_20 : std/cpp_lib_bit_cast_20.cpp ; +alias cpp_lib_bit_cast : cpp_lib_bit_cast_20 ; +obj cpp_lib_atomic_ref_20 : std/cpp_lib_atomic_ref_20.cpp ; +alias cpp_lib_atomic_ref : cpp_lib_atomic_ref_20 ; +obj cpp_hex_float_17 : std/cpp_hex_float_17.cpp ; +alias cpp_hex_float : cpp_hex_float_17 ; +obj cpp_inline_variables_17 : std/cpp_inline_variables_17.cpp ; +alias cpp_inline_variables : cpp_inline_variables_17 ; +obj cpp_aligned_new_17 : std/cpp_aligned_new_17.cpp ; +alias cpp_aligned_new : cpp_aligned_new_17 ; +obj cpp_guaranteed_copy_elision_17 : std/cpp_guaranteed_copy_elision_17.cpp ; +alias cpp_guaranteed_copy_elision : cpp_guaranteed_copy_elision_17 ; +obj cpp_noexcept_function_type_17 : std/cpp_noexcept_function_type_17.cpp ; +alias cpp_noexcept_function_type : cpp_noexcept_function_type_17 ; +obj cpp_fold_expressions_17 : std/cpp_fold_expressions_17.cpp ; +alias cpp_fold_expressions : cpp_fold_expressions_17 ; +obj cpp_capture_star_this_17 : std/cpp_capture_star_this_17.cpp ; +alias cpp_capture_star_this : cpp_capture_star_this_17 ; +obj cpp_constexpr_17 : std/cpp_constexpr_17.cpp ; +obj cpp_if_constexpr_17 : std/cpp_if_constexpr_17.cpp ; +alias cpp_if_constexpr : cpp_if_constexpr_17 ; +obj cpp_range_based_for_17 : std/cpp_range_based_for_17.cpp ; +obj cpp_static_assert_17 : std/cpp_static_assert_17.cpp ; +obj cpp_deduction_guides_17 : std/cpp_deduction_guides_17.cpp ; +alias cpp_deduction_guides : cpp_deduction_guides_17 ; +obj cpp_nontype_template_parameter_auto_17 : std/cpp_nontype_template_parameter_auto_17.cpp ; +alias cpp_nontype_template_parameter_auto : cpp_nontype_template_parameter_auto_17 ; +obj cpp_namespace_attributes_17 : std/cpp_namespace_attributes_17.cpp ; +alias cpp_namespace_attributes : cpp_namespace_attributes_17 ; +obj cpp_enumerator_attributes_17 : std/cpp_enumerator_attributes_17.cpp ; +alias cpp_enumerator_attributes : cpp_enumerator_attributes_17 ; +obj cpp_inheriting_constructors_17 : std/cpp_inheriting_constructors_17.cpp ; +obj cpp_variadic_using_17 : std/cpp_variadic_using_17.cpp ; +alias cpp_variadic_using : cpp_variadic_using_17 ; +obj cpp_structured_bindings_17 : std/cpp_structured_bindings_17.cpp ; +alias cpp_structured_bindings : cpp_structured_bindings_17 ; +obj cpp_aggregate_bases_17 : std/cpp_aggregate_bases_17.cpp ; +alias cpp_aggregate_bases : cpp_aggregate_bases_17 ; +obj cpp_nontype_template_args_17 : std/cpp_nontype_template_args_17.cpp ; +alias cpp_nontype_template_args : cpp_nontype_template_args_17 ; +obj cpp_template_template_args_17 : std/cpp_template_template_args_17.cpp ; +alias cpp_template_template_args : cpp_template_template_args_17 ; +obj cpp_lib_byte_17 : std/cpp_lib_byte_17.cpp ; +alias cpp_lib_byte : cpp_lib_byte_17 ; +obj cpp_lib_hardware_interference_size_17 : std/cpp_lib_hardware_interference_size_17.cpp ; +alias cpp_lib_hardware_interference_size : cpp_lib_hardware_interference_size_17 ; +obj cpp_lib_launder_17 : std/cpp_lib_launder_17.cpp ; +alias cpp_lib_launder : cpp_lib_launder_17 ; +obj cpp_lib_uncaught_exceptions_17 : std/cpp_lib_uncaught_exceptions_17.cpp ; +alias cpp_lib_uncaught_exceptions : cpp_lib_uncaught_exceptions_17 ; +obj cpp_lib_as_const_17 : std/cpp_lib_as_const_17.cpp ; +alias cpp_lib_as_const : cpp_lib_as_const_17 ; +obj cpp_lib_make_from_tuple_17 : std/cpp_lib_make_from_tuple_17.cpp ; +alias cpp_lib_make_from_tuple : cpp_lib_make_from_tuple_17 ; +obj cpp_lib_apply_17 : std/cpp_lib_apply_17.cpp ; +alias cpp_lib_apply : cpp_lib_apply_17 ; +obj cpp_lib_optional_17 : std/cpp_lib_optional_17.cpp ; +alias cpp_lib_optional : cpp_lib_optional_17 ; +obj cpp_lib_variant_17 : std/cpp_lib_variant_17.cpp ; +alias cpp_lib_variant : cpp_lib_variant_17 ; +obj cpp_lib_any_17 : std/cpp_lib_any_17.cpp ; +alias cpp_lib_any : cpp_lib_any_17 ; +obj cpp_lib_addressof_constexpr_17 : std/cpp_lib_addressof_constexpr_17.cpp ; +alias cpp_lib_addressof_constexpr : cpp_lib_addressof_constexpr_17 ; +obj cpp_lib_raw_memory_algorithms_17 : std/cpp_lib_raw_memory_algorithms_17.cpp ; +alias cpp_lib_raw_memory_algorithms : cpp_lib_raw_memory_algorithms_17 ; +obj cpp_lib_transparent_operators_17 : std/cpp_lib_transparent_operators_17.cpp ; +obj cpp_lib_enable_shared_from_this_17 : std/cpp_lib_enable_shared_from_this_17.cpp ; +alias cpp_lib_enable_shared_from_this : cpp_lib_enable_shared_from_this_17 ; +obj cpp_lib_shared_ptr_weak_type_17 : std/cpp_lib_shared_ptr_weak_type_17.cpp ; +alias cpp_lib_shared_ptr_weak_type : cpp_lib_shared_ptr_weak_type_17 ; +obj cpp_lib_shared_ptr_arrays_17 : std/cpp_lib_shared_ptr_arrays_17.cpp ; +alias cpp_lib_shared_ptr_arrays : cpp_lib_shared_ptr_arrays_17 ; +obj cpp_lib_memory_resource_17 : std/cpp_lib_memory_resource_17.cpp ; +alias cpp_lib_memory_resource : cpp_lib_memory_resource_17 ; +obj cpp_lib_boyer_moore_searcher_17 : std/cpp_lib_boyer_moore_searcher_17.cpp ; +alias cpp_lib_boyer_moore_searcher : cpp_lib_boyer_moore_searcher_17 ; +obj cpp_lib_invoke_17 : std/cpp_lib_invoke_17.cpp ; +alias cpp_lib_invoke : cpp_lib_invoke_17 ; +obj cpp_lib_not_fn_17 : std/cpp_lib_not_fn_17.cpp ; +alias cpp_lib_not_fn : cpp_lib_not_fn_17 ; +obj cpp_lib_void_t_17 : std/cpp_lib_void_t_17.cpp ; +alias cpp_lib_void_t : cpp_lib_void_t_17 ; +obj cpp_lib_bool_constant_17 : std/cpp_lib_bool_constant_17.cpp ; +alias cpp_lib_bool_constant : cpp_lib_bool_constant_17 ; +obj cpp_lib_type_trait_variable_templates_17 : std/cpp_lib_type_trait_variable_templates_17.cpp ; +alias cpp_lib_type_trait_variable_templates : cpp_lib_type_trait_variable_templates_17 ; +obj cpp_lib_logical_traits_17 : std/cpp_lib_logical_traits_17.cpp ; +alias cpp_lib_logical_traits : cpp_lib_logical_traits_17 ; +obj cpp_lib_is_swappable_17 : std/cpp_lib_is_swappable_17.cpp ; +alias cpp_lib_is_swappable : cpp_lib_is_swappable_17 ; +obj cpp_lib_is_invocable_17 : std/cpp_lib_is_invocable_17.cpp ; +alias cpp_lib_is_invocable : cpp_lib_is_invocable_17 ; +obj cpp_lib_has_unique_object_representations_17 : std/cpp_lib_has_unique_object_representations_17.cpp ; +alias cpp_lib_has_unique_object_representations : cpp_lib_has_unique_object_representations_17 ; +obj cpp_lib_is_aggregate_17 : std/cpp_lib_is_aggregate_17.cpp ; +alias cpp_lib_is_aggregate : cpp_lib_is_aggregate_17 ; +obj cpp_lib_chrono_17 : std/cpp_lib_chrono_17.cpp ; +alias cpp_lib_chrono : cpp_lib_chrono_17 ; +obj cpp_lib_execution_17 : std/cpp_lib_execution_17.cpp ; +alias cpp_lib_execution : cpp_lib_execution_17 ; +obj cpp_lib_parallel_algorithm_17 : std/cpp_lib_parallel_algorithm_17.cpp ; +alias cpp_lib_parallel_algorithm : cpp_lib_parallel_algorithm_17 ; +obj cpp_lib_to_chars_17 : std/cpp_lib_to_chars_17.cpp ; +alias cpp_lib_to_chars : cpp_lib_to_chars_17 ; +obj cpp_lib_string_view_17 : std/cpp_lib_string_view_17.cpp ; +alias cpp_lib_string_view : cpp_lib_string_view_17 ; +obj cpp_lib_allocator_traits_is_always_equal_17 : std/cpp_lib_allocator_traits_is_always_equal_17.cpp ; +alias cpp_lib_allocator_traits_is_always_equal : cpp_lib_allocator_traits_is_always_equal_17 ; +obj cpp_lib_incomplete_container_elements_17 : std/cpp_lib_incomplete_container_elements_17.cpp ; +alias cpp_lib_incomplete_container_elements : cpp_lib_incomplete_container_elements_17 ; +obj cpp_lib_map_try_emplace_17 : std/cpp_lib_map_try_emplace_17.cpp ; +alias cpp_lib_map_try_emplace : cpp_lib_map_try_emplace_17 ; +obj cpp_lib_unordered_map_try_emplace_17 : std/cpp_lib_unordered_map_try_emplace_17.cpp ; +alias cpp_lib_unordered_map_try_emplace : cpp_lib_unordered_map_try_emplace_17 ; +obj cpp_lib_node_extract_17 : std/cpp_lib_node_extract_17.cpp ; +alias cpp_lib_node_extract : cpp_lib_node_extract_17 ; +obj cpp_lib_array_constexpr_17 : std/cpp_lib_array_constexpr_17.cpp ; +alias cpp_lib_array_constexpr : cpp_lib_array_constexpr_17 ; +obj cpp_lib_nonmember_container_access_17 : std/cpp_lib_nonmember_container_access_17.cpp ; +alias cpp_lib_nonmember_container_access : cpp_lib_nonmember_container_access_17 ; +obj cpp_lib_sample_17 : std/cpp_lib_sample_17.cpp ; +alias cpp_lib_sample : cpp_lib_sample_17 ; +obj cpp_lib_clamp_17 : std/cpp_lib_clamp_17.cpp ; +alias cpp_lib_clamp : cpp_lib_clamp_17 ; +obj cpp_lib_gcd_lcm_17 : std/cpp_lib_gcd_lcm_17.cpp ; +alias cpp_lib_gcd_lcm : cpp_lib_gcd_lcm_17 ; +obj cpp_lib_hypot_17 : std/cpp_lib_hypot_17.cpp ; +alias cpp_lib_hypot : cpp_lib_hypot_17 ; +obj cpp_lib_math_special_functions_17 : std/cpp_lib_math_special_functions_17.cpp ; +alias cpp_lib_math_special_functions : cpp_lib_math_special_functions_17 ; +obj cpp_lib_filesystem_17 : std/cpp_lib_filesystem_17.cpp ; +alias cpp_lib_filesystem : cpp_lib_filesystem_17 ; +obj cpp_lib_atomic_is_always_lock_free_17 : std/cpp_lib_atomic_is_always_lock_free_17.cpp ; +alias cpp_lib_atomic_is_always_lock_free : cpp_lib_atomic_is_always_lock_free_17 ; +obj cpp_lib_shared_mutex_17 : std/cpp_lib_shared_mutex_17.cpp ; +alias cpp_lib_shared_mutex : cpp_lib_shared_mutex_17 ; +obj cpp_lib_scoped_lock_17 : std/cpp_lib_scoped_lock_17.cpp ; +alias cpp_lib_scoped_lock : cpp_lib_scoped_lock_17 ; +obj cpp_binary_literals_14 : std/cpp_binary_literals_14.cpp ; +alias cpp_binary_literals : cpp_binary_literals_14 ; +obj cpp_init_captures_14 : std/cpp_init_captures_14.cpp ; +alias cpp_init_captures : cpp_init_captures_14 ; +obj cpp_generic_lambdas_14 : std/cpp_generic_lambdas_14.cpp ; +alias cpp_generic_lambdas : cpp_generic_lambdas_14 ; +obj cpp_sized_deallocation_14 : std/cpp_sized_deallocation_14.cpp ; +alias cpp_sized_deallocation : cpp_sized_deallocation_14 ; +obj cpp_constexpr_14 : std/cpp_constexpr_14.cpp ; +obj cpp_decltype_auto_14 : std/cpp_decltype_auto_14.cpp ; +alias cpp_decltype_auto : cpp_decltype_auto_14 ; +obj cpp_return_type_deduction_14 : std/cpp_return_type_deduction_14.cpp ; +alias cpp_return_type_deduction : cpp_return_type_deduction_14 ; +obj cpp_aggregate_nsdmi_14 : std/cpp_aggregate_nsdmi_14.cpp ; +alias cpp_aggregate_nsdmi : cpp_aggregate_nsdmi_14 ; +obj cpp_variable_templates_14 : std/cpp_variable_templates_14.cpp ; +alias cpp_variable_templates : cpp_variable_templates_14 ; +obj cpp_lib_integer_sequence_14 : std/cpp_lib_integer_sequence_14.cpp ; +alias cpp_lib_integer_sequence : cpp_lib_integer_sequence_14 ; +obj cpp_lib_exchange_function_14 : std/cpp_lib_exchange_function_14.cpp ; +alias cpp_lib_exchange_function : cpp_lib_exchange_function_14 ; +obj cpp_lib_tuples_by_type_14 : std/cpp_lib_tuples_by_type_14.cpp ; +alias cpp_lib_tuples_by_type : cpp_lib_tuples_by_type_14 ; +obj cpp_lib_tuple_element_t_14 : std/cpp_lib_tuple_element_t_14.cpp ; +alias cpp_lib_tuple_element_t : cpp_lib_tuple_element_t_14 ; +obj cpp_lib_make_unique_14 : std/cpp_lib_make_unique_14.cpp ; +alias cpp_lib_make_unique : cpp_lib_make_unique_14 ; +obj cpp_lib_transparent_operators_14 : std/cpp_lib_transparent_operators_14.cpp ; +alias cpp_lib_transparent_operators : cpp_lib_transparent_operators_14 ; +obj cpp_lib_integral_constant_callable_14 : std/cpp_lib_integral_constant_callable_14.cpp ; +alias cpp_lib_integral_constant_callable : cpp_lib_integral_constant_callable_14 ; +obj cpp_lib_transformation_trait_aliases_14 : std/cpp_lib_transformation_trait_aliases_14.cpp ; +alias cpp_lib_transformation_trait_aliases : cpp_lib_transformation_trait_aliases_14 ; +obj cpp_lib_result_of_sfinae_14 : std/cpp_lib_result_of_sfinae_14.cpp ; +alias cpp_lib_result_of_sfinae : cpp_lib_result_of_sfinae_14 ; +obj cpp_lib_is_final_14 : std/cpp_lib_is_final_14.cpp ; +alias cpp_lib_is_final : cpp_lib_is_final_14 ; +obj cpp_lib_is_null_pointer_14 : std/cpp_lib_is_null_pointer_14.cpp ; +alias cpp_lib_is_null_pointer : cpp_lib_is_null_pointer_14 ; +obj cpp_lib_chrono_udls_14 : std/cpp_lib_chrono_udls_14.cpp ; +alias cpp_lib_chrono_udls : cpp_lib_chrono_udls_14 ; +obj cpp_lib_string_udls_14 : std/cpp_lib_string_udls_14.cpp ; +alias cpp_lib_string_udls : cpp_lib_string_udls_14 ; +obj cpp_lib_generic_associative_lookup_14 : std/cpp_lib_generic_associative_lookup_14.cpp ; +alias cpp_lib_generic_associative_lookup : cpp_lib_generic_associative_lookup_14 ; +obj cpp_lib_null_iterators_14 : std/cpp_lib_null_iterators_14.cpp ; +alias cpp_lib_null_iterators : cpp_lib_null_iterators_14 ; +obj cpp_lib_make_reverse_iterator_14 : std/cpp_lib_make_reverse_iterator_14.cpp ; +alias cpp_lib_make_reverse_iterator : cpp_lib_make_reverse_iterator_14 ; +obj cpp_lib_robust_nonmodifying_seq_ops_14 : std/cpp_lib_robust_nonmodifying_seq_ops_14.cpp ; +alias cpp_lib_robust_nonmodifying_seq_ops : cpp_lib_robust_nonmodifying_seq_ops_14 ; +obj cpp_lib_complex_udls_14 : std/cpp_lib_complex_udls_14.cpp ; +alias cpp_lib_complex_udls : cpp_lib_complex_udls_14 ; +obj cpp_lib_quoted_string_io_14 : std/cpp_lib_quoted_string_io_14.cpp ; +alias cpp_lib_quoted_string_io : cpp_lib_quoted_string_io_14 ; +obj cpp_lib_shared_timed_mutex_14 : std/cpp_lib_shared_timed_mutex_14.cpp ; +alias cpp_lib_shared_timed_mutex : cpp_lib_shared_timed_mutex_14 ; +obj cpp_unicode_characters_11 : std/cpp_unicode_characters_11.cpp ; +alias cpp_unicode_characters : cpp_unicode_characters_11 ; +obj cpp_raw_strings_11 : std/cpp_raw_strings_11.cpp ; +alias cpp_raw_strings : cpp_raw_strings_11 ; +obj cpp_unicode_literals_11 : std/cpp_unicode_literals_11.cpp ; +alias cpp_unicode_literals : cpp_unicode_literals_11 ; +obj cpp_user_defined_literals_11 : std/cpp_user_defined_literals_11.cpp ; +alias cpp_user_defined_literals : cpp_user_defined_literals_11 ; +obj cpp_threadsafe_static_init_11 : std/cpp_threadsafe_static_init_11.cpp ; +alias cpp_threadsafe_static_init : cpp_threadsafe_static_init_11 ; +obj cpp_lambdas_11 : std/cpp_lambdas_11.cpp ; +alias cpp_lambdas : cpp_lambdas_11 ; +obj cpp_constexpr_11 : std/cpp_constexpr_11.cpp ; +alias cpp_constexpr : cpp_constexpr_11 ; +obj cpp_range_based_for_11 : std/cpp_range_based_for_11.cpp ; +alias cpp_range_based_for : cpp_range_based_for_11 ; +obj cpp_static_assert_11 : std/cpp_static_assert_11.cpp ; +alias cpp_static_assert : cpp_static_assert_11 ; +obj cpp_decltype_11 : std/cpp_decltype_11.cpp ; +alias cpp_decltype : cpp_decltype_11 ; +obj cpp_attributes_11 : std/cpp_attributes_11.cpp ; +alias cpp_attributes : cpp_attributes_11 ; +obj cpp_rvalue_references_11 : std/cpp_rvalue_references_11.cpp ; +alias cpp_rvalue_references : cpp_rvalue_references_11 ; +obj cpp_variadic_templates_11 : std/cpp_variadic_templates_11.cpp ; +alias cpp_variadic_templates : cpp_variadic_templates_11 ; +obj cpp_initializer_lists_11 : std/cpp_initializer_lists_11.cpp ; +alias cpp_initializer_lists : cpp_initializer_lists_11 ; +obj cpp_explicit_conversion_11 : std/cpp_explicit_conversion_11.cpp ; +alias cpp_explicit_conversion : cpp_explicit_conversion_11 ; +obj cpp_delegating_constructors_11 : std/cpp_delegating_constructors_11.cpp ; +alias cpp_delegating_constructors : cpp_delegating_constructors_11 ; +obj cpp_nsdmi_11 : std/cpp_nsdmi_11.cpp ; +alias cpp_nsdmi : cpp_nsdmi_11 ; +obj cpp_inheriting_constructors_11 : std/cpp_inheriting_constructors_11.cpp ; +alias cpp_inheriting_constructors : cpp_inheriting_constructors_11 ; +obj cpp_ref_qualifiers_11 : std/cpp_ref_qualifiers_11.cpp ; +alias cpp_ref_qualifiers : cpp_ref_qualifiers_11 ; +obj cpp_alias_templates_11 : std/cpp_alias_templates_11.cpp ; +alias cpp_alias_templates : cpp_alias_templates_11 ; +obj cpp_rtti_03 : std/cpp_rtti_03.cpp ; +alias cpp_rtti : cpp_rtti_03 ; +obj cpp_exceptions_03 : std/cpp_exceptions_03.cpp ; +alias cpp_exceptions : cpp_exceptions_03 ; + diff --git a/src/boost/libs/config/checks/architecture/32.cpp b/src/boost/libs/config/checks/architecture/32.cpp new file mode 100644 index 000000000..d3d2dba29 --- /dev/null +++ b/src/boost/libs/config/checks/architecture/32.cpp @@ -0,0 +1,9 @@ +// 32.cpp +// +// Copyright (c) 2012 Steven Watanabe +// +// Distributed under 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) + +int test[sizeof(void*) == 4? 1 : -1]; diff --git a/src/boost/libs/config/checks/architecture/64.cpp b/src/boost/libs/config/checks/architecture/64.cpp new file mode 100644 index 000000000..5a33bc645 --- /dev/null +++ b/src/boost/libs/config/checks/architecture/64.cpp @@ -0,0 +1,9 @@ +// 64.cpp +// +// Copyright (c) 2012 Steven Watanabe +// +// Distributed under 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) + +int test[sizeof(void*) == 8? 1 : -1]; diff --git a/src/boost/libs/config/checks/architecture/Jamroot.jam b/src/boost/libs/config/checks/architecture/Jamroot.jam new file mode 100644 index 000000000..0d3b5e7be --- /dev/null +++ b/src/boost/libs/config/checks/architecture/Jamroot.jam @@ -0,0 +1,25 @@ +# Jamfile.jam +# +# Copyright 2012 Steven Watanabe +# +# Distributed under 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) + +project /boost/architecture + : requirements + -<conditional>@boostcpp.deduce-address-model + -<conditional>@boostcpp.deduce-architecture + ; + +obj 32 : 32.cpp ; +obj 64 : 64.cpp ; + +obj arm : arm.cpp ; +obj combined : combined.cpp ; +obj mips1 : mips1.cpp ; +obj power : power.cpp ; +obj riscv : riscv.cpp ; +obj sparc : sparc.cpp ; +obj x86 : x86.cpp ; +obj s390x : s390x.cpp ; diff --git a/src/boost/libs/config/checks/architecture/arm.cpp b/src/boost/libs/config/checks/architecture/arm.cpp new file mode 100644 index 000000000..794aba8b3 --- /dev/null +++ b/src/boost/libs/config/checks/architecture/arm.cpp @@ -0,0 +1,15 @@ +// arm.cpp +// +// Copyright (c) 2012 Steven Watanabe +// +// Distributed under 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) + +#if !defined(__arm__) && !defined(__thumb__) && \ + !defined(__TARGET_ARCH_ARM) && !defined(__TARGET_ARCH_THUMB) && \ + !defined(_ARM) && !defined(_M_ARM) && \ + !defined(__aarch64__) +#error "Not ARM" +#endif + diff --git a/src/boost/libs/config/checks/architecture/combined.cpp b/src/boost/libs/config/checks/architecture/combined.cpp new file mode 100644 index 000000000..4e5a387b9 --- /dev/null +++ b/src/boost/libs/config/checks/architecture/combined.cpp @@ -0,0 +1,21 @@ +// combined.cpp +// +// Copyright (c) 2012 Steven Watanabe +// 2014 Oliver Kowalke +// +// Distributed under 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) + +#if !defined(i386) && !defined(__i386__) && !defined(__i386) \ + && !defined(__i486__) && !defined(__i586__) && !defined(__i686__) \ + && !defined(_M_IX86) && !defined(__X86__) && !defined(_X86_) \ + && !defined(__THW_INTEL__) && !defined(__I86__) && !defined(__INTEL__) \ + && !defined(__amd64__) && !defined(__x86_64__) && !defined(__amd64) \ + && !defined(__x86_64) && !defined(_M_X64) \ + && !defined(__powerpc) && !defined(__powerpc__) && !defined(__ppc) \ + && !defined(__ppc__) && !defined(_M_PPC) && !defined(_ARCH_PPC) \ + && !defined(__POWERPC__) && !defined(__PPCGECKO__) \ + && !defined(__PPCBROADWAY) && !defined(_XENON) +#error "Not combined" +#endif diff --git a/src/boost/libs/config/checks/architecture/mips1.cpp b/src/boost/libs/config/checks/architecture/mips1.cpp new file mode 100644 index 000000000..b4a670b89 --- /dev/null +++ b/src/boost/libs/config/checks/architecture/mips1.cpp @@ -0,0 +1,11 @@ +// mips1.cpp +// +// Copyright (c) 2012 Steven Watanabe +// +// Distributed under 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) + +#if !(defined(__mips) || defined(_MIPS_ISA_MIPS1) || defined(_R3000)) +#error "Not MIPS1" +#endif diff --git a/src/boost/libs/config/checks/architecture/power.cpp b/src/boost/libs/config/checks/architecture/power.cpp new file mode 100644 index 000000000..0551194a9 --- /dev/null +++ b/src/boost/libs/config/checks/architecture/power.cpp @@ -0,0 +1,14 @@ +// power.cpp +// +// Copyright (c) 2012 Steven Watanabe +// +// Distributed under 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) + +#if !defined(__powerpc) && !defined(__powerpc__) && !defined(__ppc) \ + && !defined(__ppc__) && !defined(_M_PPC) && !defined(_ARCH_PPC) \ + && !defined(__POWERPC__) && !defined(__PPCGECKO__) \ + && !defined(__PPCBROADWAY) && !defined(_XENON) +#error "Not PPC" +#endif diff --git a/src/boost/libs/config/checks/architecture/riscv.cpp b/src/boost/libs/config/checks/architecture/riscv.cpp new file mode 100644 index 000000000..d2cea68ba --- /dev/null +++ b/src/boost/libs/config/checks/architecture/riscv.cpp @@ -0,0 +1,10 @@ +// riscv.cpp +// +// Copyright Andreas Schwab 2019 +// Distributed under 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) + +#if !defined(__riscv) +#error "Not RISC-V" +#endif diff --git a/src/boost/libs/config/checks/architecture/s390x.cpp b/src/boost/libs/config/checks/architecture/s390x.cpp new file mode 100644 index 000000000..a36307066 --- /dev/null +++ b/src/boost/libs/config/checks/architecture/s390x.cpp @@ -0,0 +1,11 @@ +// s390x.cpp +// +// Copyright (c) 2012 Steven Watanabe +// +// Distributed under 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) + +#if !defined(__s390x__) +#error "Not S390x" +#endif diff --git a/src/boost/libs/config/checks/architecture/sparc.cpp b/src/boost/libs/config/checks/architecture/sparc.cpp new file mode 100644 index 000000000..3df2df84e --- /dev/null +++ b/src/boost/libs/config/checks/architecture/sparc.cpp @@ -0,0 +1,11 @@ +// power.cpp +// +// Copyright (c) 2012 Steven Watanabe +// +// Distributed under 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) + +#if !defined(__sparc__) && !defined(__sparc) +#error "Not SPARC" +#endif diff --git a/src/boost/libs/config/checks/architecture/x86.cpp b/src/boost/libs/config/checks/architecture/x86.cpp new file mode 100644 index 000000000..0d2f9c2e9 --- /dev/null +++ b/src/boost/libs/config/checks/architecture/x86.cpp @@ -0,0 +1,16 @@ +// x86.cpp +// +// Copyright (c) 2012 Steven Watanabe +// +// Distributed under 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) + +#if !defined(i386) && !defined(__i386__) && !defined(__i386) \ + && !defined(__i486__) && !defined(__i586__) && !defined(__i686__) \ + && !defined(_M_IX86) && !defined(__X86__) && !defined(_X86_) \ + && !defined(__THW_INTEL__) && !defined(__I86__) && !defined(__INTEL__) \ + && !defined(__amd64__) && !defined(__x86_64__) && !defined(__amd64) \ + && !defined(__x86_64) && !defined(_M_X64) +#error "Not x86" +#endif diff --git a/src/boost/libs/config/checks/config.jam b/src/boost/libs/config/checks/config.jam new file mode 100644 index 000000000..c5adfe7b7 --- /dev/null +++ b/src/boost/libs/config/checks/config.jam @@ -0,0 +1,21 @@ +# Copyright John Maddock. +# 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) + +import modules ; + +rule requires ( names + ) +{ + local config-binding = [ modules.binding $(__name__) ] ; + + local result ; + for name in $(names) + { + local msg = "Boost.Config Feature Check: " ; + msg += $(name) ; + result += [ check-target-builds $(config-binding:D)//$(name) $(msg:J=) : : <build>no ] ; + } + return $(result) ; +} + diff --git a/src/boost/libs/config/checks/std/cpp_aggregate_bases_17.cpp b/src/boost/libs/config/checks/std/cpp_aggregate_bases_17.cpp new file mode 100644 index 000000000..bb5b75bf4 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_aggregate_bases_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_aggregate_bases +#error "Macro << __cpp_aggregate_bases is not set" +#endif + +#if __cpp_aggregate_bases < 201603 +#error "Macro __cpp_aggregate_bases had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_aggregate_nsdmi_14.cpp b/src/boost/libs/config/checks/std/cpp_aggregate_nsdmi_14.cpp new file mode 100644 index 000000000..beba9aa59 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_aggregate_nsdmi_14.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_aggregate_nsdmi +#error "Macro << __cpp_aggregate_nsdmi is not set" +#endif + +#if __cpp_aggregate_nsdmi < 201304 +#error "Macro __cpp_aggregate_nsdmi had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_alias_templates_11.cpp b/src/boost/libs/config/checks/std/cpp_alias_templates_11.cpp new file mode 100644 index 000000000..6c1b1b8ca --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_alias_templates_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_alias_templates +#error "Macro << __cpp_alias_templates is not set" +#endif + +#if __cpp_alias_templates < 200704 +#error "Macro __cpp_alias_templates had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_aligned_new_17.cpp b/src/boost/libs/config/checks/std/cpp_aligned_new_17.cpp new file mode 100644 index 000000000..d5bae3bb3 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_aligned_new_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_aligned_new +#error "Macro << __cpp_aligned_new is not set" +#endif + +#if __cpp_aligned_new < 201606 +#error "Macro __cpp_aligned_new had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_attributes_11.cpp b/src/boost/libs/config/checks/std/cpp_attributes_11.cpp new file mode 100644 index 000000000..12eee8ea1 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_attributes_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_attributes +#error "Macro << __cpp_attributes is not set" +#endif + +#if __cpp_attributes < 200809 +#error "Macro __cpp_attributes had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_binary_literals_14.cpp b/src/boost/libs/config/checks/std/cpp_binary_literals_14.cpp new file mode 100644 index 000000000..1f9e7267d --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_binary_literals_14.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_binary_literals +#error "Macro << __cpp_binary_literals is not set" +#endif + +#if __cpp_binary_literals < 201304 +#error "Macro __cpp_binary_literals had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_capture_star_this_17.cpp b/src/boost/libs/config/checks/std/cpp_capture_star_this_17.cpp new file mode 100644 index 000000000..99d822250 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_capture_star_this_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_capture_star_this +#error "Macro << __cpp_capture_star_this is not set" +#endif + +#if __cpp_capture_star_this < 201603 +#error "Macro __cpp_capture_star_this had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_char8_t_20.cpp b/src/boost/libs/config/checks/std/cpp_char8_t_20.cpp new file mode 100644 index 000000000..3e04d8d37 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_char8_t_20.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_char8_t +#error "Macro << __cpp_char8_t is not set" +#endif + +#if __cpp_char8_t < 201811 +#error "Macro __cpp_char8_t had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_conditional_explicit_20.cpp b/src/boost/libs/config/checks/std/cpp_conditional_explicit_20.cpp new file mode 100644 index 000000000..e522ddc1f --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_conditional_explicit_20.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_conditional_explicit +#error "Macro << __cpp_conditional_explicit is not set" +#endif + +#if __cpp_conditional_explicit < 201806 +#error "Macro __cpp_conditional_explicit had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_constexpr_11.cpp b/src/boost/libs/config/checks/std/cpp_constexpr_11.cpp new file mode 100644 index 000000000..0cc5d85b7 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_constexpr_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_constexpr +#error "Macro << __cpp_constexpr is not set" +#endif + +#if __cpp_constexpr < 200704 +#error "Macro __cpp_constexpr had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_constexpr_14.cpp b/src/boost/libs/config/checks/std/cpp_constexpr_14.cpp new file mode 100644 index 000000000..fbb41a271 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_constexpr_14.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_constexpr +#error "Macro << __cpp_constexpr is not set" +#endif + +#if __cpp_constexpr < 201304 +#error "Macro __cpp_constexpr had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_constexpr_17.cpp b/src/boost/libs/config/checks/std/cpp_constexpr_17.cpp new file mode 100644 index 000000000..9f6f8bb95 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_constexpr_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_constexpr +#error "Macro << __cpp_constexpr is not set" +#endif + +#if __cpp_constexpr < 201603 +#error "Macro __cpp_constexpr had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_decltype_11.cpp b/src/boost/libs/config/checks/std/cpp_decltype_11.cpp new file mode 100644 index 000000000..833326981 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_decltype_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_decltype +#error "Macro << __cpp_decltype is not set" +#endif + +#if __cpp_decltype < 200707 +#error "Macro __cpp_decltype had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_decltype_auto_14.cpp b/src/boost/libs/config/checks/std/cpp_decltype_auto_14.cpp new file mode 100644 index 000000000..a4c905b92 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_decltype_auto_14.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_decltype_auto +#error "Macro << __cpp_decltype_auto is not set" +#endif + +#if __cpp_decltype_auto < 201304 +#error "Macro __cpp_decltype_auto had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_deduction_guides_17.cpp b/src/boost/libs/config/checks/std/cpp_deduction_guides_17.cpp new file mode 100644 index 000000000..8c967e9ec --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_deduction_guides_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_deduction_guides +#error "Macro << __cpp_deduction_guides is not set" +#endif + +#if __cpp_deduction_guides < 201611 +#error "Macro __cpp_deduction_guides had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_delegating_constructors_11.cpp b/src/boost/libs/config/checks/std/cpp_delegating_constructors_11.cpp new file mode 100644 index 000000000..8bfcccce6 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_delegating_constructors_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_delegating_constructors +#error "Macro << __cpp_delegating_constructors is not set" +#endif + +#if __cpp_delegating_constructors < 200604 +#error "Macro __cpp_delegating_constructors had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_enumerator_attributes_17.cpp b/src/boost/libs/config/checks/std/cpp_enumerator_attributes_17.cpp new file mode 100644 index 000000000..c5627c61c --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_enumerator_attributes_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_enumerator_attributes +#error "Macro << __cpp_enumerator_attributes is not set" +#endif + +#if __cpp_enumerator_attributes < 201411 +#error "Macro __cpp_enumerator_attributes had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_exceptions_03.cpp b/src/boost/libs/config/checks/std/cpp_exceptions_03.cpp new file mode 100644 index 000000000..1666ab004 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_exceptions_03.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_exceptions +#error "Macro << __cpp_exceptions is not set" +#endif + +#if __cpp_exceptions < 199711 +#error "Macro __cpp_exceptions had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_explicit_conversion_11.cpp b/src/boost/libs/config/checks/std/cpp_explicit_conversion_11.cpp new file mode 100644 index 000000000..19114e1ed --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_explicit_conversion_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_explicit_conversion +#error "Macro << __cpp_explicit_conversion is not set" +#endif + +#if __cpp_explicit_conversion < 200710 +#error "Macro __cpp_explicit_conversion had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_fold_expressions_17.cpp b/src/boost/libs/config/checks/std/cpp_fold_expressions_17.cpp new file mode 100644 index 000000000..08e964b6a --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_fold_expressions_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_fold_expressions +#error "Macro << __cpp_fold_expressions is not set" +#endif + +#if __cpp_fold_expressions < 201603 +#error "Macro __cpp_fold_expressions had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_generic_lambdas_14.cpp b/src/boost/libs/config/checks/std/cpp_generic_lambdas_14.cpp new file mode 100644 index 000000000..97a7f4895 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_generic_lambdas_14.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_generic_lambdas +#error "Macro << __cpp_generic_lambdas is not set" +#endif + +#if __cpp_generic_lambdas < 201304 +#error "Macro __cpp_generic_lambdas had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_guaranteed_copy_elision_17.cpp b/src/boost/libs/config/checks/std/cpp_guaranteed_copy_elision_17.cpp new file mode 100644 index 000000000..a09ae025c --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_guaranteed_copy_elision_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_guaranteed_copy_elision +#error "Macro << __cpp_guaranteed_copy_elision is not set" +#endif + +#if __cpp_guaranteed_copy_elision < 201606 +#error "Macro __cpp_guaranteed_copy_elision had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_hex_float_17.cpp b/src/boost/libs/config/checks/std/cpp_hex_float_17.cpp new file mode 100644 index 000000000..8e65313f6 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_hex_float_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_hex_float +#error "Macro << __cpp_hex_float is not set" +#endif + +#if __cpp_hex_float < 201603 +#error "Macro __cpp_hex_float had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_if_constexpr_17.cpp b/src/boost/libs/config/checks/std/cpp_if_constexpr_17.cpp new file mode 100644 index 000000000..a867be9f0 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_if_constexpr_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_if_constexpr +#error "Macro << __cpp_if_constexpr is not set" +#endif + +#if __cpp_if_constexpr < 201606 +#error "Macro __cpp_if_constexpr had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_impl_destroying_delete_20.cpp b/src/boost/libs/config/checks/std/cpp_impl_destroying_delete_20.cpp new file mode 100644 index 000000000..21a21c9c5 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_impl_destroying_delete_20.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_impl_destroying_delete +#error "Macro << __cpp_impl_destroying_delete is not set" +#endif + +#if __cpp_impl_destroying_delete < 201806 +#error "Macro __cpp_impl_destroying_delete had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_impl_three_way_comparison_20.cpp b/src/boost/libs/config/checks/std/cpp_impl_three_way_comparison_20.cpp new file mode 100644 index 000000000..b85d44392 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_impl_three_way_comparison_20.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_impl_three_way_comparison +#error "Macro << __cpp_impl_three_way_comparison is not set" +#endif + +#if __cpp_impl_three_way_comparison < 201711 +#error "Macro __cpp_impl_three_way_comparison had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_inheriting_constructors_11.cpp b/src/boost/libs/config/checks/std/cpp_inheriting_constructors_11.cpp new file mode 100644 index 000000000..e32b15a58 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_inheriting_constructors_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_inheriting_constructors +#error "Macro << __cpp_inheriting_constructors is not set" +#endif + +#if __cpp_inheriting_constructors < 200802 +#error "Macro __cpp_inheriting_constructors had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_inheriting_constructors_17.cpp b/src/boost/libs/config/checks/std/cpp_inheriting_constructors_17.cpp new file mode 100644 index 000000000..0d1070557 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_inheriting_constructors_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_inheriting_constructors +#error "Macro << __cpp_inheriting_constructors is not set" +#endif + +#if __cpp_inheriting_constructors < 201511 +#error "Macro __cpp_inheriting_constructors had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_init_captures_14.cpp b/src/boost/libs/config/checks/std/cpp_init_captures_14.cpp new file mode 100644 index 000000000..bd2dda914 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_init_captures_14.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_init_captures +#error "Macro << __cpp_init_captures is not set" +#endif + +#if __cpp_init_captures < 201304 +#error "Macro __cpp_init_captures had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_initializer_lists_11.cpp b/src/boost/libs/config/checks/std/cpp_initializer_lists_11.cpp new file mode 100644 index 000000000..bb4afd850 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_initializer_lists_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_initializer_lists +#error "Macro << __cpp_initializer_lists is not set" +#endif + +#if __cpp_initializer_lists < 200806 +#error "Macro __cpp_initializer_lists had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_inline_variables_17.cpp b/src/boost/libs/config/checks/std/cpp_inline_variables_17.cpp new file mode 100644 index 000000000..9e4e20d4b --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_inline_variables_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_inline_variables +#error "Macro << __cpp_inline_variables is not set" +#endif + +#if __cpp_inline_variables < 201606 +#error "Macro __cpp_inline_variables had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lambdas_11.cpp b/src/boost/libs/config/checks/std/cpp_lambdas_11.cpp new file mode 100644 index 000000000..3e021e233 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lambdas_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_lambdas +#error "Macro << __cpp_lambdas is not set" +#endif + +#if __cpp_lambdas < 200907 +#error "Macro __cpp_lambdas had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_addressof_constexpr_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_addressof_constexpr_17.cpp new file mode 100644 index 000000000..24afd0d17 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_addressof_constexpr_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <memory> + +#ifndef __cpp_lib_addressof_constexpr +#error "Macro << __cpp_lib_addressof_constexpr is not set" +#endif + +#if __cpp_lib_addressof_constexpr < 201603 +#error "Macro __cpp_lib_addressof_constexpr had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_allocator_traits_is_always_equal_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_allocator_traits_is_always_equal_17.cpp new file mode 100644 index 000000000..3e3f79810 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_allocator_traits_is_always_equal_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <memory> + +#ifndef __cpp_lib_allocator_traits_is_always_equal +#error "Macro << __cpp_lib_allocator_traits_is_always_equal is not set" +#endif + +#if __cpp_lib_allocator_traits_is_always_equal < 201411 +#error "Macro __cpp_lib_allocator_traits_is_always_equal had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_any_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_any_17.cpp new file mode 100644 index 000000000..424c0d73e --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_any_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <any> + +#ifndef __cpp_lib_any +#error "Macro << __cpp_lib_any is not set" +#endif + +#if __cpp_lib_any < 201606 +#error "Macro __cpp_lib_any had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_apply_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_apply_17.cpp new file mode 100644 index 000000000..cb2efd86c --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_apply_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <tuple> + +#ifndef __cpp_lib_apply +#error "Macro << __cpp_lib_apply is not set" +#endif + +#if __cpp_lib_apply < 201603 +#error "Macro __cpp_lib_apply had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_array_constexpr_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_array_constexpr_17.cpp new file mode 100644 index 000000000..5e61b10ea --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_array_constexpr_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <iterator> + +#ifndef __cpp_lib_array_constexpr +#error "Macro << __cpp_lib_array_constexpr is not set" +#endif + +#if __cpp_lib_array_constexpr < 201603 +#error "Macro __cpp_lib_array_constexpr had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_as_const_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_as_const_17.cpp new file mode 100644 index 000000000..d423ede55 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_as_const_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <utility> + +#ifndef __cpp_lib_as_const +#error "Macro << __cpp_lib_as_const is not set" +#endif + +#if __cpp_lib_as_const < 201510 +#error "Macro __cpp_lib_as_const had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_atomic_is_always_lock_free_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_atomic_is_always_lock_free_17.cpp new file mode 100644 index 000000000..1cdc4c495 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_atomic_is_always_lock_free_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <atomic> + +#ifndef __cpp_lib_atomic_is_always_lock_free +#error "Macro << __cpp_lib_atomic_is_always_lock_free is not set" +#endif + +#if __cpp_lib_atomic_is_always_lock_free < 201603 +#error "Macro __cpp_lib_atomic_is_always_lock_free had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_atomic_ref_20.cpp b/src/boost/libs/config/checks/std/cpp_lib_atomic_ref_20.cpp new file mode 100644 index 000000000..565df9132 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_atomic_ref_20.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <atomic> + +#ifndef __cpp_lib_atomic_ref +#error "Macro << __cpp_lib_atomic_ref is not set" +#endif + +#if __cpp_lib_atomic_ref < 201806 +#error "Macro __cpp_lib_atomic_ref had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_bind_front_20.cpp b/src/boost/libs/config/checks/std/cpp_lib_bind_front_20.cpp new file mode 100644 index 000000000..278df5961 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_bind_front_20.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <functional> + +#ifndef __cpp_lib_bind_front +#error "Macro << __cpp_lib_bind_front is not set" +#endif + +#if __cpp_lib_bind_front < 201811 +#error "Macro __cpp_lib_bind_front had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_bit_cast_20.cpp b/src/boost/libs/config/checks/std/cpp_lib_bit_cast_20.cpp new file mode 100644 index 000000000..bd92a43d1 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_bit_cast_20.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <bit> + +#ifndef __cpp_lib_bit_cast +#error "Macro << __cpp_lib_bit_cast is not set" +#endif + +#if __cpp_lib_bit_cast < 201806 +#error "Macro __cpp_lib_bit_cast had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_bool_constant_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_bool_constant_17.cpp new file mode 100644 index 000000000..60317209f --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_bool_constant_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <type_traits> + +#ifndef __cpp_lib_bool_constant +#error "Macro << __cpp_lib_bool_constant is not set" +#endif + +#if __cpp_lib_bool_constant < 201505 +#error "Macro __cpp_lib_bool_constant had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_boyer_moore_searcher_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_boyer_moore_searcher_17.cpp new file mode 100644 index 000000000..b59a28848 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_boyer_moore_searcher_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <functional> + +#ifndef __cpp_lib_boyer_moore_searcher +#error "Macro << __cpp_lib_boyer_moore_searcher is not set" +#endif + +#if __cpp_lib_boyer_moore_searcher < 201603 +#error "Macro __cpp_lib_boyer_moore_searcher had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_byte_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_byte_17.cpp new file mode 100644 index 000000000..b179249e3 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_byte_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <cstddef> + +#ifndef __cpp_lib_byte +#error "Macro << __cpp_lib_byte is not set" +#endif + +#if __cpp_lib_byte < 201603 +#error "Macro __cpp_lib_byte had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_char8_t_20.cpp b/src/boost/libs/config/checks/std/cpp_lib_char8_t_20.cpp new file mode 100644 index 000000000..84db6e4d0 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_char8_t_20.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <atomic> + +#ifndef __cpp_lib_char8_t +#error "Macro << __cpp_lib_char8_t is not set" +#endif + +#if __cpp_lib_char8_t < 201811 +#error "Macro __cpp_lib_char8_t had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_chrono_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_chrono_17.cpp new file mode 100644 index 000000000..f156ae1b8 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_chrono_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <chrono> + +#ifndef __cpp_lib_chrono +#error "Macro << __cpp_lib_chrono is not set" +#endif + +#if __cpp_lib_chrono < 201611 +#error "Macro __cpp_lib_chrono had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_chrono_udls_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_chrono_udls_14.cpp new file mode 100644 index 000000000..3e2f2abb8 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_chrono_udls_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <chrono> + +#ifndef __cpp_lib_chrono_udls +#error "Macro << __cpp_lib_chrono_udls is not set" +#endif + +#if __cpp_lib_chrono_udls < 201304 +#error "Macro __cpp_lib_chrono_udls had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_clamp_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_clamp_17.cpp new file mode 100644 index 000000000..a34238f81 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_clamp_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <algorithm> + +#ifndef __cpp_lib_clamp +#error "Macro << __cpp_lib_clamp is not set" +#endif + +#if __cpp_lib_clamp < 201603 +#error "Macro __cpp_lib_clamp had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_complex_udls_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_complex_udls_14.cpp new file mode 100644 index 000000000..5ed01b49b --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_complex_udls_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <complex> + +#ifndef __cpp_lib_complex_udls +#error "Macro << __cpp_lib_complex_udls is not set" +#endif + +#if __cpp_lib_complex_udls < 201309 +#error "Macro __cpp_lib_complex_udls had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_concepts_20.cpp b/src/boost/libs/config/checks/std/cpp_lib_concepts_20.cpp new file mode 100644 index 000000000..e43ebb330 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_concepts_20.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <concepts> + +#ifndef __cpp_lib_concepts +#error "Macro << __cpp_lib_concepts is not set" +#endif + +#if __cpp_lib_concepts < 201806 +#error "Macro __cpp_lib_concepts had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_constexpr_misc_20.cpp b/src/boost/libs/config/checks/std/cpp_lib_constexpr_misc_20.cpp new file mode 100644 index 000000000..df726c676 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_constexpr_misc_20.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <array> + +#ifndef __cpp_lib_constexpr_misc +#error "Macro << __cpp_lib_constexpr_misc is not set" +#endif + +#if __cpp_lib_constexpr_misc < 201811 +#error "Macro __cpp_lib_constexpr_misc had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_constexpr_swap_algorithms_20.cpp b/src/boost/libs/config/checks/std/cpp_lib_constexpr_swap_algorithms_20.cpp new file mode 100644 index 000000000..d847f74df --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_constexpr_swap_algorithms_20.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <algorithm> + +#ifndef __cpp_lib_constexpr_swap_algorithms +#error "Macro << __cpp_lib_constexpr_swap_algorithms is not set" +#endif + +#if __cpp_lib_constexpr_swap_algorithms < 201806 +#error "Macro __cpp_lib_constexpr_swap_algorithms had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_destroying_delete_20.cpp b/src/boost/libs/config/checks/std/cpp_lib_destroying_delete_20.cpp new file mode 100644 index 000000000..10699c5f5 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_destroying_delete_20.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <new> + +#ifndef __cpp_lib_destroying_delete +#error "Macro << __cpp_lib_destroying_delete is not set" +#endif + +#if __cpp_lib_destroying_delete < 201806 +#error "Macro __cpp_lib_destroying_delete had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_enable_shared_from_this_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_enable_shared_from_this_17.cpp new file mode 100644 index 000000000..866a66360 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_enable_shared_from_this_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <memory> + +#ifndef __cpp_lib_enable_shared_from_this +#error "Macro << __cpp_lib_enable_shared_from_this is not set" +#endif + +#if __cpp_lib_enable_shared_from_this < 201603 +#error "Macro __cpp_lib_enable_shared_from_this had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_erase_if_20.cpp b/src/boost/libs/config/checks/std/cpp_lib_erase_if_20.cpp new file mode 100644 index 000000000..398f902c9 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_erase_if_20.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <string> + +#ifndef __cpp_lib_erase_if +#error "Macro << __cpp_lib_erase_if is not set" +#endif + +#if __cpp_lib_erase_if < 201811 +#error "Macro __cpp_lib_erase_if had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_exchange_function_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_exchange_function_14.cpp new file mode 100644 index 000000000..0ea249f2b --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_exchange_function_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <utility> + +#ifndef __cpp_lib_exchange_function +#error "Macro << __cpp_lib_exchange_function is not set" +#endif + +#if __cpp_lib_exchange_function < 201304 +#error "Macro __cpp_lib_exchange_function had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_execution_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_execution_17.cpp new file mode 100644 index 000000000..99ca8dd91 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_execution_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <execution> + +#ifndef __cpp_lib_execution +#error "Macro << __cpp_lib_execution is not set" +#endif + +#if __cpp_lib_execution < 201603 +#error "Macro __cpp_lib_execution had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_filesystem_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_filesystem_17.cpp new file mode 100644 index 000000000..1906db254 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_filesystem_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <filesystem> + +#ifndef __cpp_lib_filesystem +#error "Macro << __cpp_lib_filesystem is not set" +#endif + +#if __cpp_lib_filesystem < 201703 +#error "Macro __cpp_lib_filesystem had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_gcd_lcm_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_gcd_lcm_17.cpp new file mode 100644 index 000000000..363da4c24 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_gcd_lcm_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <numeric> + +#ifndef __cpp_lib_gcd_lcm +#error "Macro << __cpp_lib_gcd_lcm is not set" +#endif + +#if __cpp_lib_gcd_lcm < 201606 +#error "Macro __cpp_lib_gcd_lcm had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_generic_associative_lookup_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_generic_associative_lookup_14.cpp new file mode 100644 index 000000000..54c46b1a2 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_generic_associative_lookup_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <map> + +#ifndef __cpp_lib_generic_associative_lookup +#error "Macro << __cpp_lib_generic_associative_lookup is not set" +#endif + +#if __cpp_lib_generic_associative_lookup < 201304 +#error "Macro __cpp_lib_generic_associative_lookup had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_generic_unordered_lookup_20.cpp b/src/boost/libs/config/checks/std/cpp_lib_generic_unordered_lookup_20.cpp new file mode 100644 index 000000000..ab7a15649 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_generic_unordered_lookup_20.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <unordered_map> + +#ifndef __cpp_lib_generic_unordered_lookup +#error "Macro << __cpp_lib_generic_unordered_lookup is not set" +#endif + +#if __cpp_lib_generic_unordered_lookup < 201811 +#error "Macro __cpp_lib_generic_unordered_lookup had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_hardware_interference_size_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_hardware_interference_size_17.cpp new file mode 100644 index 000000000..bdff4c822 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_hardware_interference_size_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <new> + +#ifndef __cpp_lib_hardware_interference_size +#error "Macro << __cpp_lib_hardware_interference_size is not set" +#endif + +#if __cpp_lib_hardware_interference_size < 201703 +#error "Macro __cpp_lib_hardware_interference_size had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_has_unique_object_representations_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_has_unique_object_representations_17.cpp new file mode 100644 index 000000000..0b9169a87 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_has_unique_object_representations_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <type_traits> + +#ifndef __cpp_lib_has_unique_object_representations +#error "Macro << __cpp_lib_has_unique_object_representations is not set" +#endif + +#if __cpp_lib_has_unique_object_representations < 201606 +#error "Macro __cpp_lib_has_unique_object_representations had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_hypot_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_hypot_17.cpp new file mode 100644 index 000000000..13e7890ef --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_hypot_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <cmath> + +#ifndef __cpp_lib_hypot +#error "Macro << __cpp_lib_hypot is not set" +#endif + +#if __cpp_lib_hypot < 201603 +#error "Macro __cpp_lib_hypot had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_incomplete_container_elements_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_incomplete_container_elements_17.cpp new file mode 100644 index 000000000..6d750f8e2 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_incomplete_container_elements_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <forward_list> + +#ifndef __cpp_lib_incomplete_container_elements +#error "Macro << __cpp_lib_incomplete_container_elements is not set" +#endif + +#if __cpp_lib_incomplete_container_elements < 201505 +#error "Macro __cpp_lib_incomplete_container_elements had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_integer_sequence_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_integer_sequence_14.cpp new file mode 100644 index 000000000..88e5e5924 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_integer_sequence_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <utility> + +#ifndef __cpp_lib_integer_sequence +#error "Macro << __cpp_lib_integer_sequence is not set" +#endif + +#if __cpp_lib_integer_sequence < 201304 +#error "Macro __cpp_lib_integer_sequence had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_integral_constant_callable_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_integral_constant_callable_14.cpp new file mode 100644 index 000000000..ee0ac8d0a --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_integral_constant_callable_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <type_traits> + +#ifndef __cpp_lib_integral_constant_callable +#error "Macro << __cpp_lib_integral_constant_callable is not set" +#endif + +#if __cpp_lib_integral_constant_callable < 201304 +#error "Macro __cpp_lib_integral_constant_callable had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_invoke_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_invoke_17.cpp new file mode 100644 index 000000000..0e7a1cdfd --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_invoke_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <functional> + +#ifndef __cpp_lib_invoke +#error "Macro << __cpp_lib_invoke is not set" +#endif + +#if __cpp_lib_invoke < 201411 +#error "Macro __cpp_lib_invoke had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_is_aggregate_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_is_aggregate_17.cpp new file mode 100644 index 000000000..01d7c1b1c --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_is_aggregate_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <type_traits> + +#ifndef __cpp_lib_is_aggregate +#error "Macro << __cpp_lib_is_aggregate is not set" +#endif + +#if __cpp_lib_is_aggregate < 201703 +#error "Macro __cpp_lib_is_aggregate had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_is_constant_evaluated_20.cpp b/src/boost/libs/config/checks/std/cpp_lib_is_constant_evaluated_20.cpp new file mode 100644 index 000000000..2d04d3410 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_is_constant_evaluated_20.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <type_traits> + +#ifndef __cpp_lib_is_constant_evaluated +#error "Macro << __cpp_lib_is_constant_evaluated is not set" +#endif + +#if __cpp_lib_is_constant_evaluated < 201811 +#error "Macro __cpp_lib_is_constant_evaluated had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_is_final_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_is_final_14.cpp new file mode 100644 index 000000000..95f416ed0 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_is_final_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <type_traits> + +#ifndef __cpp_lib_is_final +#error "Macro << __cpp_lib_is_final is not set" +#endif + +#if __cpp_lib_is_final < 201402 +#error "Macro __cpp_lib_is_final had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_is_invocable_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_is_invocable_17.cpp new file mode 100644 index 000000000..e4bad4218 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_is_invocable_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <type_traits> + +#ifndef __cpp_lib_is_invocable +#error "Macro << __cpp_lib_is_invocable is not set" +#endif + +#if __cpp_lib_is_invocable < 201703 +#error "Macro __cpp_lib_is_invocable had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_is_null_pointer_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_is_null_pointer_14.cpp new file mode 100644 index 000000000..521e11b08 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_is_null_pointer_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <type_traits> + +#ifndef __cpp_lib_is_null_pointer +#error "Macro << __cpp_lib_is_null_pointer is not set" +#endif + +#if __cpp_lib_is_null_pointer < 201309 +#error "Macro __cpp_lib_is_null_pointer had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_is_swappable_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_is_swappable_17.cpp new file mode 100644 index 000000000..d31a910c7 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_is_swappable_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <type_traits> + +#ifndef __cpp_lib_is_swappable +#error "Macro << __cpp_lib_is_swappable is not set" +#endif + +#if __cpp_lib_is_swappable < 201603 +#error "Macro __cpp_lib_is_swappable had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_launder_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_launder_17.cpp new file mode 100644 index 000000000..7e70cebed --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_launder_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <new> + +#ifndef __cpp_lib_launder +#error "Macro << __cpp_lib_launder is not set" +#endif + +#if __cpp_lib_launder < 201606 +#error "Macro __cpp_lib_launder had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_list_remove_return_type_20.cpp b/src/boost/libs/config/checks/std/cpp_lib_list_remove_return_type_20.cpp new file mode 100644 index 000000000..5e243e679 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_list_remove_return_type_20.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <forward_list> + +#ifndef __cpp_lib_list_remove_return_type +#error "Macro << __cpp_lib_list_remove_return_type is not set" +#endif + +#if __cpp_lib_list_remove_return_type < 201806 +#error "Macro __cpp_lib_list_remove_return_type had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_logical_traits_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_logical_traits_17.cpp new file mode 100644 index 000000000..dc0b98242 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_logical_traits_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <type_traits> + +#ifndef __cpp_lib_logical_traits +#error "Macro << __cpp_lib_logical_traits is not set" +#endif + +#if __cpp_lib_logical_traits < 201510 +#error "Macro __cpp_lib_logical_traits had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_make_from_tuple_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_make_from_tuple_17.cpp new file mode 100644 index 000000000..ce6be87e1 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_make_from_tuple_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <tuple> + +#ifndef __cpp_lib_make_from_tuple +#error "Macro << __cpp_lib_make_from_tuple is not set" +#endif + +#if __cpp_lib_make_from_tuple < 201606 +#error "Macro __cpp_lib_make_from_tuple had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_make_reverse_iterator_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_make_reverse_iterator_14.cpp new file mode 100644 index 000000000..3f9ac2c79 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_make_reverse_iterator_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <iterator> + +#ifndef __cpp_lib_make_reverse_iterator +#error "Macro << __cpp_lib_make_reverse_iterator is not set" +#endif + +#if __cpp_lib_make_reverse_iterator < 201402 +#error "Macro __cpp_lib_make_reverse_iterator had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_make_unique_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_make_unique_14.cpp new file mode 100644 index 000000000..3285efb09 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_make_unique_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <memory> + +#ifndef __cpp_lib_make_unique +#error "Macro << __cpp_lib_make_unique is not set" +#endif + +#if __cpp_lib_make_unique < 201304 +#error "Macro __cpp_lib_make_unique had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_map_try_emplace_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_map_try_emplace_17.cpp new file mode 100644 index 000000000..275d856fd --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_map_try_emplace_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <map> + +#ifndef __cpp_lib_map_try_emplace +#error "Macro << __cpp_lib_map_try_emplace is not set" +#endif + +#if __cpp_lib_map_try_emplace < 201411 +#error "Macro __cpp_lib_map_try_emplace had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_math_special_functions_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_math_special_functions_17.cpp new file mode 100644 index 000000000..e2f10e86f --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_math_special_functions_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <cmath> + +#ifndef __cpp_lib_math_special_functions +#error "Macro << __cpp_lib_math_special_functions is not set" +#endif + +#if __cpp_lib_math_special_functions < 201603 +#error "Macro __cpp_lib_math_special_functions had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_memory_resource_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_memory_resource_17.cpp new file mode 100644 index 000000000..168898ace --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_memory_resource_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <memory_resource> + +#ifndef __cpp_lib_memory_resource +#error "Macro << __cpp_lib_memory_resource is not set" +#endif + +#if __cpp_lib_memory_resource < 201603 +#error "Macro __cpp_lib_memory_resource had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_node_extract_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_node_extract_17.cpp new file mode 100644 index 000000000..f71e54ede --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_node_extract_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <map> + +#ifndef __cpp_lib_node_extract +#error "Macro << __cpp_lib_node_extract is not set" +#endif + +#if __cpp_lib_node_extract < 201606 +#error "Macro __cpp_lib_node_extract had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_nonmember_container_access_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_nonmember_container_access_17.cpp new file mode 100644 index 000000000..03586bf58 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_nonmember_container_access_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <iterator> + +#ifndef __cpp_lib_nonmember_container_access +#error "Macro << __cpp_lib_nonmember_container_access is not set" +#endif + +#if __cpp_lib_nonmember_container_access < 201411 +#error "Macro __cpp_lib_nonmember_container_access had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_not_fn_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_not_fn_17.cpp new file mode 100644 index 000000000..a83b104bb --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_not_fn_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <functional> + +#ifndef __cpp_lib_not_fn +#error "Macro << __cpp_lib_not_fn is not set" +#endif + +#if __cpp_lib_not_fn < 201603 +#error "Macro __cpp_lib_not_fn had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_null_iterators_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_null_iterators_14.cpp new file mode 100644 index 000000000..9c6b5bb5b --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_null_iterators_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <iterator> + +#ifndef __cpp_lib_null_iterators +#error "Macro << __cpp_lib_null_iterators is not set" +#endif + +#if __cpp_lib_null_iterators < 201304 +#error "Macro __cpp_lib_null_iterators had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_optional_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_optional_17.cpp new file mode 100644 index 000000000..f754542d8 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_optional_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <optional> + +#ifndef __cpp_lib_optional +#error "Macro << __cpp_lib_optional is not set" +#endif + +#if __cpp_lib_optional < 201606 +#error "Macro __cpp_lib_optional had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_parallel_algorithm_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_parallel_algorithm_17.cpp new file mode 100644 index 000000000..4216c871d --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_parallel_algorithm_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <algorithm> + +#ifndef __cpp_lib_parallel_algorithm +#error "Macro << __cpp_lib_parallel_algorithm is not set" +#endif + +#if __cpp_lib_parallel_algorithm < 201603 +#error "Macro __cpp_lib_parallel_algorithm had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_quoted_string_io_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_quoted_string_io_14.cpp new file mode 100644 index 000000000..b773e4aae --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_quoted_string_io_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <iomanip> + +#ifndef __cpp_lib_quoted_string_io +#error "Macro << __cpp_lib_quoted_string_io is not set" +#endif + +#if __cpp_lib_quoted_string_io < 201304 +#error "Macro __cpp_lib_quoted_string_io had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_ranges_20.cpp b/src/boost/libs/config/checks/std/cpp_lib_ranges_20.cpp new file mode 100644 index 000000000..6e03769fe --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_ranges_20.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <algorithm> + +#ifndef __cpp_lib_ranges +#error "Macro << __cpp_lib_ranges is not set" +#endif + +#if __cpp_lib_ranges < 201811 +#error "Macro __cpp_lib_ranges had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_raw_memory_algorithms_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_raw_memory_algorithms_17.cpp new file mode 100644 index 000000000..b38e6aaec --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_raw_memory_algorithms_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <memory> + +#ifndef __cpp_lib_raw_memory_algorithms +#error "Macro << __cpp_lib_raw_memory_algorithms is not set" +#endif + +#if __cpp_lib_raw_memory_algorithms < 201606 +#error "Macro __cpp_lib_raw_memory_algorithms had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_result_of_sfinae_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_result_of_sfinae_14.cpp new file mode 100644 index 000000000..f840dc7cf --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_result_of_sfinae_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <functional> + +#ifndef __cpp_lib_result_of_sfinae +#error "Macro << __cpp_lib_result_of_sfinae is not set" +#endif + +#if __cpp_lib_result_of_sfinae < 201210 +#error "Macro __cpp_lib_result_of_sfinae had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_robust_nonmodifying_seq_ops_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_robust_nonmodifying_seq_ops_14.cpp new file mode 100644 index 000000000..bcbca0a5a --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_robust_nonmodifying_seq_ops_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <algorithm> + +#ifndef __cpp_lib_robust_nonmodifying_seq_ops +#error "Macro << __cpp_lib_robust_nonmodifying_seq_ops is not set" +#endif + +#if __cpp_lib_robust_nonmodifying_seq_ops < 201304 +#error "Macro __cpp_lib_robust_nonmodifying_seq_ops had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_sample_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_sample_17.cpp new file mode 100644 index 000000000..5247240b9 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_sample_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <algorithm> + +#ifndef __cpp_lib_sample +#error "Macro << __cpp_lib_sample is not set" +#endif + +#if __cpp_lib_sample < 201603 +#error "Macro __cpp_lib_sample had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_scoped_lock_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_scoped_lock_17.cpp new file mode 100644 index 000000000..8dbc91f86 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_scoped_lock_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <mutex> + +#ifndef __cpp_lib_scoped_lock +#error "Macro << __cpp_lib_scoped_lock is not set" +#endif + +#if __cpp_lib_scoped_lock < 201703 +#error "Macro __cpp_lib_scoped_lock had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_shared_mutex_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_shared_mutex_17.cpp new file mode 100644 index 000000000..2a9a8fee2 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_shared_mutex_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <shared_mutex> + +#ifndef __cpp_lib_shared_mutex +#error "Macro << __cpp_lib_shared_mutex is not set" +#endif + +#if __cpp_lib_shared_mutex < 201505 +#error "Macro __cpp_lib_shared_mutex had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_shared_ptr_arrays_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_shared_ptr_arrays_17.cpp new file mode 100644 index 000000000..bb35134c2 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_shared_ptr_arrays_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <memory> + +#ifndef __cpp_lib_shared_ptr_arrays +#error "Macro << __cpp_lib_shared_ptr_arrays is not set" +#endif + +#if __cpp_lib_shared_ptr_arrays < 201611 +#error "Macro __cpp_lib_shared_ptr_arrays had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_shared_ptr_weak_type_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_shared_ptr_weak_type_17.cpp new file mode 100644 index 000000000..9aa43ff54 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_shared_ptr_weak_type_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <memory> + +#ifndef __cpp_lib_shared_ptr_weak_type +#error "Macro << __cpp_lib_shared_ptr_weak_type is not set" +#endif + +#if __cpp_lib_shared_ptr_weak_type < 201606 +#error "Macro __cpp_lib_shared_ptr_weak_type had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_shared_timed_mutex_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_shared_timed_mutex_14.cpp new file mode 100644 index 000000000..fb12ad991 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_shared_timed_mutex_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <shared_mutex> + +#ifndef __cpp_lib_shared_timed_mutex +#error "Macro << __cpp_lib_shared_timed_mutex is not set" +#endif + +#if __cpp_lib_shared_timed_mutex < 201402 +#error "Macro __cpp_lib_shared_timed_mutex had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_string_udls_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_string_udls_14.cpp new file mode 100644 index 000000000..dcc5d5a57 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_string_udls_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <string> + +#ifndef __cpp_lib_string_udls +#error "Macro << __cpp_lib_string_udls is not set" +#endif + +#if __cpp_lib_string_udls < 201304 +#error "Macro __cpp_lib_string_udls had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_string_view_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_string_view_17.cpp new file mode 100644 index 000000000..2c2442ab7 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_string_view_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <string> + +#ifndef __cpp_lib_string_view +#error "Macro << __cpp_lib_string_view is not set" +#endif + +#if __cpp_lib_string_view < 201606 +#error "Macro __cpp_lib_string_view had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_three_way_comparison_20.cpp b/src/boost/libs/config/checks/std/cpp_lib_three_way_comparison_20.cpp new file mode 100644 index 000000000..053ea10ac --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_three_way_comparison_20.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <compare> + +#ifndef __cpp_lib_three_way_comparison +#error "Macro << __cpp_lib_three_way_comparison is not set" +#endif + +#if __cpp_lib_three_way_comparison < 201711 +#error "Macro __cpp_lib_three_way_comparison had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_to_chars_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_to_chars_17.cpp new file mode 100644 index 000000000..ae56a8753 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_to_chars_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <utility> + +#ifndef __cpp_lib_to_chars +#error "Macro << __cpp_lib_to_chars is not set" +#endif + +#if __cpp_lib_to_chars < 201611 +#error "Macro __cpp_lib_to_chars had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_transformation_trait_aliases_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_transformation_trait_aliases_14.cpp new file mode 100644 index 000000000..04a1fe8e7 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_transformation_trait_aliases_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <type_traits> + +#ifndef __cpp_lib_transformation_trait_aliases +#error "Macro << __cpp_lib_transformation_trait_aliases is not set" +#endif + +#if __cpp_lib_transformation_trait_aliases < 201304 +#error "Macro __cpp_lib_transformation_trait_aliases had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_transparent_operators_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_transparent_operators_14.cpp new file mode 100644 index 000000000..a202d5ae5 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_transparent_operators_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <functional> + +#ifndef __cpp_lib_transparent_operators +#error "Macro << __cpp_lib_transparent_operators is not set" +#endif + +#if __cpp_lib_transparent_operators < 201210 +#error "Macro __cpp_lib_transparent_operators had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_transparent_operators_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_transparent_operators_17.cpp new file mode 100644 index 000000000..01b846a2d --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_transparent_operators_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <memory> + +#ifndef __cpp_lib_transparent_operators +#error "Macro << __cpp_lib_transparent_operators is not set" +#endif + +#if __cpp_lib_transparent_operators < 201510 +#error "Macro __cpp_lib_transparent_operators had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_tuple_element_t_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_tuple_element_t_14.cpp new file mode 100644 index 000000000..46a38f62c --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_tuple_element_t_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <tuple> + +#ifndef __cpp_lib_tuple_element_t +#error "Macro << __cpp_lib_tuple_element_t is not set" +#endif + +#if __cpp_lib_tuple_element_t < 201402 +#error "Macro __cpp_lib_tuple_element_t had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_tuples_by_type_14.cpp b/src/boost/libs/config/checks/std/cpp_lib_tuples_by_type_14.cpp new file mode 100644 index 000000000..d6b310ba8 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_tuples_by_type_14.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <utility> + +#ifndef __cpp_lib_tuples_by_type +#error "Macro << __cpp_lib_tuples_by_type is not set" +#endif + +#if __cpp_lib_tuples_by_type < 201304 +#error "Macro __cpp_lib_tuples_by_type had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_type_trait_variable_templates_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_type_trait_variable_templates_17.cpp new file mode 100644 index 000000000..ddb7d1d47 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_type_trait_variable_templates_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <type_traits> + +#ifndef __cpp_lib_type_trait_variable_templates +#error "Macro << __cpp_lib_type_trait_variable_templates is not set" +#endif + +#if __cpp_lib_type_trait_variable_templates < 201510 +#error "Macro __cpp_lib_type_trait_variable_templates had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_uncaught_exceptions_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_uncaught_exceptions_17.cpp new file mode 100644 index 000000000..edbde1d30 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_uncaught_exceptions_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <exception> + +#ifndef __cpp_lib_uncaught_exceptions +#error "Macro << __cpp_lib_uncaught_exceptions is not set" +#endif + +#if __cpp_lib_uncaught_exceptions < 201411 +#error "Macro __cpp_lib_uncaught_exceptions had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_unordered_map_try_emplace_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_unordered_map_try_emplace_17.cpp new file mode 100644 index 000000000..7c77d15c4 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_unordered_map_try_emplace_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <unordered_map> + +#ifndef __cpp_lib_unordered_map_try_emplace +#error "Macro << __cpp_lib_unordered_map_try_emplace is not set" +#endif + +#if __cpp_lib_unordered_map_try_emplace < 201411 +#error "Macro __cpp_lib_unordered_map_try_emplace had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_variant_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_variant_17.cpp new file mode 100644 index 000000000..322a39f67 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_variant_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <variant> + +#ifndef __cpp_lib_variant +#error "Macro << __cpp_lib_variant is not set" +#endif + +#if __cpp_lib_variant < 201606 +#error "Macro __cpp_lib_variant had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_lib_void_t_17.cpp b/src/boost/libs/config/checks/std/cpp_lib_void_t_17.cpp new file mode 100644 index 000000000..8a0f0a9bd --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_lib_void_t_17.cpp @@ -0,0 +1,32 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#include <type_traits> + +#ifndef __cpp_lib_void_t +#error "Macro << __cpp_lib_void_t is not set" +#endif + +#if __cpp_lib_void_t < 201411 +#error "Macro __cpp_lib_void_t had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_namespace_attributes_17.cpp b/src/boost/libs/config/checks/std/cpp_namespace_attributes_17.cpp new file mode 100644 index 000000000..6f8ffca14 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_namespace_attributes_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_namespace_attributes +#error "Macro << __cpp_namespace_attributes is not set" +#endif + +#if __cpp_namespace_attributes < 201411 +#error "Macro __cpp_namespace_attributes had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_noexcept_function_type_17.cpp b/src/boost/libs/config/checks/std/cpp_noexcept_function_type_17.cpp new file mode 100644 index 000000000..7b0422458 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_noexcept_function_type_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_noexcept_function_type +#error "Macro << __cpp_noexcept_function_type is not set" +#endif + +#if __cpp_noexcept_function_type < 201510 +#error "Macro __cpp_noexcept_function_type had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_nontype_template_args_17.cpp b/src/boost/libs/config/checks/std/cpp_nontype_template_args_17.cpp new file mode 100644 index 000000000..235ea6446 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_nontype_template_args_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_nontype_template_args +#error "Macro << __cpp_nontype_template_args is not set" +#endif + +#if __cpp_nontype_template_args < 201411 +#error "Macro __cpp_nontype_template_args had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_nontype_template_parameter_auto_17.cpp b/src/boost/libs/config/checks/std/cpp_nontype_template_parameter_auto_17.cpp new file mode 100644 index 000000000..a68d9f766 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_nontype_template_parameter_auto_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_nontype_template_parameter_auto +#error "Macro << __cpp_nontype_template_parameter_auto is not set" +#endif + +#if __cpp_nontype_template_parameter_auto < 201606 +#error "Macro __cpp_nontype_template_parameter_auto had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_nontype_template_parameter_class_20.cpp b/src/boost/libs/config/checks/std/cpp_nontype_template_parameter_class_20.cpp new file mode 100644 index 000000000..19c1512cc --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_nontype_template_parameter_class_20.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_nontype_template_parameter_class +#error "Macro << __cpp_nontype_template_parameter_class is not set" +#endif + +#if __cpp_nontype_template_parameter_class < 201806 +#error "Macro __cpp_nontype_template_parameter_class had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_nsdmi_11.cpp b/src/boost/libs/config/checks/std/cpp_nsdmi_11.cpp new file mode 100644 index 000000000..f135005df --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_nsdmi_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_nsdmi +#error "Macro << __cpp_nsdmi is not set" +#endif + +#if __cpp_nsdmi < 200809 +#error "Macro __cpp_nsdmi had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_range_based_for_11.cpp b/src/boost/libs/config/checks/std/cpp_range_based_for_11.cpp new file mode 100644 index 000000000..0e85ed5a6 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_range_based_for_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_range_based_for +#error "Macro << __cpp_range_based_for is not set" +#endif + +#if __cpp_range_based_for < 200907 +#error "Macro __cpp_range_based_for had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_range_based_for_17.cpp b/src/boost/libs/config/checks/std/cpp_range_based_for_17.cpp new file mode 100644 index 000000000..cf83e9d04 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_range_based_for_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_range_based_for +#error "Macro << __cpp_range_based_for is not set" +#endif + +#if __cpp_range_based_for < 201603 +#error "Macro __cpp_range_based_for had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_raw_strings_11.cpp b/src/boost/libs/config/checks/std/cpp_raw_strings_11.cpp new file mode 100644 index 000000000..6abec7bd9 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_raw_strings_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_raw_strings +#error "Macro << __cpp_raw_strings is not set" +#endif + +#if __cpp_raw_strings < 200710 +#error "Macro __cpp_raw_strings had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_ref_qualifiers_11.cpp b/src/boost/libs/config/checks/std/cpp_ref_qualifiers_11.cpp new file mode 100644 index 000000000..b3ec78332 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_ref_qualifiers_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_ref_qualifiers +#error "Macro << __cpp_ref_qualifiers is not set" +#endif + +#if __cpp_ref_qualifiers < 200710 +#error "Macro __cpp_ref_qualifiers had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_return_type_deduction_14.cpp b/src/boost/libs/config/checks/std/cpp_return_type_deduction_14.cpp new file mode 100644 index 000000000..5734a615e --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_return_type_deduction_14.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_return_type_deduction +#error "Macro << __cpp_return_type_deduction is not set" +#endif + +#if __cpp_return_type_deduction < 201304 +#error "Macro __cpp_return_type_deduction had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_rtti_03.cpp b/src/boost/libs/config/checks/std/cpp_rtti_03.cpp new file mode 100644 index 000000000..d3c51e6a7 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_rtti_03.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_rtti +#error "Macro << __cpp_rtti is not set" +#endif + +#if __cpp_rtti < 199711 +#error "Macro __cpp_rtti had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_rvalue_references_11.cpp b/src/boost/libs/config/checks/std/cpp_rvalue_references_11.cpp new file mode 100644 index 000000000..cfcb4ee62 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_rvalue_references_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_rvalue_references +#error "Macro << __cpp_rvalue_references is not set" +#endif + +#if __cpp_rvalue_references < 200610 +#error "Macro __cpp_rvalue_references had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_sized_deallocation_14.cpp b/src/boost/libs/config/checks/std/cpp_sized_deallocation_14.cpp new file mode 100644 index 000000000..433c1454e --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_sized_deallocation_14.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_sized_deallocation +#error "Macro << __cpp_sized_deallocation is not set" +#endif + +#if __cpp_sized_deallocation < 201309 +#error "Macro __cpp_sized_deallocation had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_static_assert_11.cpp b/src/boost/libs/config/checks/std/cpp_static_assert_11.cpp new file mode 100644 index 000000000..386f7f257 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_static_assert_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_static_assert +#error "Macro << __cpp_static_assert is not set" +#endif + +#if __cpp_static_assert < 200410 +#error "Macro __cpp_static_assert had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_static_assert_17.cpp b/src/boost/libs/config/checks/std/cpp_static_assert_17.cpp new file mode 100644 index 000000000..8c2dd17bf --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_static_assert_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_static_assert +#error "Macro << __cpp_static_assert is not set" +#endif + +#if __cpp_static_assert < 201411 +#error "Macro __cpp_static_assert had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_structured_bindings_17.cpp b/src/boost/libs/config/checks/std/cpp_structured_bindings_17.cpp new file mode 100644 index 000000000..f7c4d4ca6 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_structured_bindings_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_structured_bindings +#error "Macro << __cpp_structured_bindings is not set" +#endif + +#if __cpp_structured_bindings < 201606 +#error "Macro __cpp_structured_bindings had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_template_template_args_17.cpp b/src/boost/libs/config/checks/std/cpp_template_template_args_17.cpp new file mode 100644 index 000000000..f2865f367 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_template_template_args_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_template_template_args +#error "Macro << __cpp_template_template_args is not set" +#endif + +#if __cpp_template_template_args < 201611 +#error "Macro __cpp_template_template_args had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_threadsafe_static_init_11.cpp b/src/boost/libs/config/checks/std/cpp_threadsafe_static_init_11.cpp new file mode 100644 index 000000000..fa6ab0bab --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_threadsafe_static_init_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_threadsafe_static_init +#error "Macro << __cpp_threadsafe_static_init is not set" +#endif + +#if __cpp_threadsafe_static_init < 200806 +#error "Macro __cpp_threadsafe_static_init had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_unicode_characters_11.cpp b/src/boost/libs/config/checks/std/cpp_unicode_characters_11.cpp new file mode 100644 index 000000000..ea3c58ca3 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_unicode_characters_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_unicode_characters +#error "Macro << __cpp_unicode_characters is not set" +#endif + +#if __cpp_unicode_characters < 200704 +#error "Macro __cpp_unicode_characters had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_unicode_literals_11.cpp b/src/boost/libs/config/checks/std/cpp_unicode_literals_11.cpp new file mode 100644 index 000000000..ccf28f784 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_unicode_literals_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_unicode_literals +#error "Macro << __cpp_unicode_literals is not set" +#endif + +#if __cpp_unicode_literals < 200710 +#error "Macro __cpp_unicode_literals had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_user_defined_literals_11.cpp b/src/boost/libs/config/checks/std/cpp_user_defined_literals_11.cpp new file mode 100644 index 000000000..909782684 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_user_defined_literals_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_user_defined_literals +#error "Macro << __cpp_user_defined_literals is not set" +#endif + +#if __cpp_user_defined_literals < 200809 +#error "Macro __cpp_user_defined_literals had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_variable_templates_14.cpp b/src/boost/libs/config/checks/std/cpp_variable_templates_14.cpp new file mode 100644 index 000000000..6c63320b2 --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_variable_templates_14.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_variable_templates +#error "Macro << __cpp_variable_templates is not set" +#endif + +#if __cpp_variable_templates < 201304 +#error "Macro __cpp_variable_templates had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_variadic_templates_11.cpp b/src/boost/libs/config/checks/std/cpp_variadic_templates_11.cpp new file mode 100644 index 000000000..72836ca0c --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_variadic_templates_11.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_variadic_templates +#error "Macro << __cpp_variadic_templates is not set" +#endif + +#if __cpp_variadic_templates < 200704 +#error "Macro __cpp_variadic_templates had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/std/cpp_variadic_using_17.cpp b/src/boost/libs/config/checks/std/cpp_variadic_using_17.cpp new file mode 100644 index 000000000..5e689749a --- /dev/null +++ b/src/boost/libs/config/checks/std/cpp_variadic_using_17.cpp @@ -0,0 +1,30 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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$ +// + +#ifdef __has_include +#if __has_include(<version>) +#include <version> +#endif +#endif + +#ifndef __cpp_variadic_using +#error "Macro << __cpp_variadic_using is not set" +#endif + +#if __cpp_variadic_using < 201611 +#error "Macro __cpp_variadic_using had too low a value" +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/checks/test_case.cpp b/src/boost/libs/config/checks/test_case.cpp new file mode 100644 index 000000000..699892546 --- /dev/null +++ b/src/boost/libs/config/checks/test_case.cpp @@ -0,0 +1,1014 @@ +// This file was automatically generated on Mon Dec 09 09:47:38 2019 +// 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$ +// + +#include <boost/config.hpp> + +#ifdef TEST_BOOST_HAS_TWO_ARG_USE_FACET +# ifndef BOOST_HAS_TWO_ARG_USE_FACET +# error "Feature macro BOOST_HAS_TWO_ARG_USE_FACET is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_BETHREADS +# ifndef BOOST_HAS_BETHREADS +# error "Feature macro BOOST_HAS_BETHREADS is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_CLOCK_GETTIME +# ifndef BOOST_HAS_CLOCK_GETTIME +# error "Feature macro BOOST_HAS_CLOCK_GETTIME is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_PRAGMA_DETECT_MISMATCH +# ifndef BOOST_HAS_PRAGMA_DETECT_MISMATCH +# error "Feature macro BOOST_HAS_PRAGMA_DETECT_MISMATCH is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_DIRENT_H +# ifndef BOOST_HAS_DIRENT_H +# error "Feature macro BOOST_HAS_DIRENT_H is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_EXPM1 +# ifndef BOOST_HAS_EXPM1 +# error "Feature macro BOOST_HAS_EXPM1 is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_FLOAT128 +# ifndef BOOST_HAS_FLOAT128 +# error "Feature macro BOOST_HAS_FLOAT128 is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_FTIME +# ifndef BOOST_HAS_FTIME +# error "Feature macro BOOST_HAS_FTIME is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_GETSYSTEMTIMEASFILETIME +# ifndef BOOST_HAS_GETSYSTEMTIMEASFILETIME +# error "Feature macro BOOST_HAS_GETSYSTEMTIMEASFILETIME is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_GETTIMEOFDAY +# ifndef BOOST_HAS_GETTIMEOFDAY +# error "Feature macro BOOST_HAS_GETTIMEOFDAY is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_HASH +# ifndef BOOST_HAS_HASH +# error "Feature macro BOOST_HAS_HASH is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_INT128 +# ifndef BOOST_HAS_INT128 +# error "Feature macro BOOST_HAS_INT128 is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_LOG1P +# ifndef BOOST_HAS_LOG1P +# error "Feature macro BOOST_HAS_LOG1P is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_LONG_LONG +# ifndef BOOST_HAS_LONG_LONG +# error "Feature macro BOOST_HAS_LONG_LONG is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_MACRO_USE_FACET +# ifndef BOOST_HAS_MACRO_USE_FACET +# error "Feature macro BOOST_HAS_MACRO_USE_FACET is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_MS_INT64 +# ifndef BOOST_HAS_MS_INT64 +# error "Feature macro BOOST_HAS_MS_INT64 is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_NANOSLEEP +# ifndef BOOST_HAS_NANOSLEEP +# error "Feature macro BOOST_HAS_NANOSLEEP is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_NL_TYPES_H +# ifndef BOOST_HAS_NL_TYPES_H +# error "Feature macro BOOST_HAS_NL_TYPES_H is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_NRVO +# ifndef BOOST_HAS_NRVO +# error "Feature macro BOOST_HAS_NRVO is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_PARTIAL_STD_ALLOCATOR +# ifndef BOOST_HAS_PARTIAL_STD_ALLOCATOR +# error "Feature macro BOOST_HAS_PARTIAL_STD_ALLOCATOR is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_PTHREAD_DELAY_NP +# ifndef BOOST_HAS_PTHREAD_DELAY_NP +# error "Feature macro BOOST_HAS_PTHREAD_DELAY_NP is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE +# ifndef BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE +# error "Feature macro BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_PTHREAD_YIELD +# ifndef BOOST_HAS_PTHREAD_YIELD +# error "Feature macro BOOST_HAS_PTHREAD_YIELD is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_PTHREADS +# ifndef BOOST_HAS_PTHREADS +# error "Feature macro BOOST_HAS_PTHREADS is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_RVALUE_REFS +# ifndef BOOST_HAS_RVALUE_REFS +# error "Feature macro BOOST_HAS_RVALUE_REFS is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_SCHED_YIELD +# ifndef BOOST_HAS_SCHED_YIELD +# error "Feature macro BOOST_HAS_SCHED_YIELD is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_SGI_TYPE_TRAITS +# ifndef BOOST_HAS_SGI_TYPE_TRAITS +# error "Feature macro BOOST_HAS_SGI_TYPE_TRAITS is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_SIGACTION +# ifndef BOOST_HAS_SIGACTION +# error "Feature macro BOOST_HAS_SIGACTION is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_SLIST +# ifndef BOOST_HAS_SLIST +# error "Feature macro BOOST_HAS_SLIST is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_STATIC_ASSERT +# ifndef BOOST_HAS_STATIC_ASSERT +# error "Feature macro BOOST_HAS_STATIC_ASSERT is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_STDINT_H +# ifndef BOOST_HAS_STDINT_H +# error "Feature macro BOOST_HAS_STDINT_H is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_STLP_USE_FACET +# ifndef BOOST_HAS_STLP_USE_FACET +# error "Feature macro BOOST_HAS_STLP_USE_FACET is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_UNISTD_H +# ifndef BOOST_HAS_UNISTD_H +# error "Feature macro BOOST_HAS_UNISTD_H is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_VARIADIC_TMPL +# ifndef BOOST_HAS_VARIADIC_TMPL +# error "Feature macro BOOST_HAS_VARIADIC_TMPL is not defined." +# endif +#endif +#ifdef TEST_BOOST_MSVC6_MEMBER_TEMPLATES +# ifndef BOOST_MSVC6_MEMBER_TEMPLATES +# error "Feature macro BOOST_MSVC6_MEMBER_TEMPLATES is not defined." +# endif +#endif +#ifdef TEST_BOOST_MSVC_STD_ITERATOR +# ifndef BOOST_MSVC_STD_ITERATOR +# error "Feature macro BOOST_MSVC_STD_ITERATOR is not defined." +# endif +#endif +#ifdef TEST_BOOST_HAS_WINTHREADS +# ifndef BOOST_HAS_WINTHREADS +# error "Feature macro BOOST_HAS_WINTHREADS is not defined." +# endif +#endif +#ifdef TEST_BOOST_NO_ADL_BARRIER +# ifdef BOOST_NO_ADL_BARRIER +# error "Defect macro BOOST_NO_ADL_BARRIER is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP +# ifdef BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP +# error "Defect macro BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS +# ifdef BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS +# error "Defect macro BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_AUTO_DECLARATIONS +# ifdef BOOST_NO_CXX11_AUTO_DECLARATIONS +# error "Defect macro BOOST_NO_CXX11_AUTO_DECLARATIONS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS +# ifdef BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS +# error "Defect macro BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_AUTO_PTR +# ifdef BOOST_NO_AUTO_PTR +# error "Defect macro BOOST_NO_AUTO_PTR is defined." +# endif +#endif +#ifdef TEST_BOOST_BCB_PARTIAL_SPECIALIZATION_BUG +# ifdef BOOST_BCB_PARTIAL_SPECIALIZATION_BUG +# error "Defect macro BOOST_BCB_PARTIAL_SPECIALIZATION_BUG is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_CHAR16_T +# ifdef BOOST_NO_CXX11_CHAR16_T +# error "Defect macro BOOST_NO_CXX11_CHAR16_T is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_CHAR32_T +# ifdef BOOST_NO_CXX11_CHAR32_T +# error "Defect macro BOOST_NO_CXX11_CHAR32_T is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_COMPLETE_VALUE_INITIALIZATION +# ifdef BOOST_NO_COMPLETE_VALUE_INITIALIZATION +# error "Defect macro BOOST_NO_COMPLETE_VALUE_INITIALIZATION is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_CONSTEXPR +# ifdef BOOST_NO_CXX11_CONSTEXPR +# error "Defect macro BOOST_NO_CXX11_CONSTEXPR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CTYPE_FUNCTIONS +# ifdef BOOST_NO_CTYPE_FUNCTIONS +# error "Defect macro BOOST_NO_CTYPE_FUNCTIONS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CV_SPECIALIZATIONS +# ifdef BOOST_NO_CV_SPECIALIZATIONS +# error "Defect macro BOOST_NO_CV_SPECIALIZATIONS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CV_VOID_SPECIALIZATIONS +# ifdef BOOST_NO_CV_VOID_SPECIALIZATIONS +# error "Defect macro BOOST_NO_CV_VOID_SPECIALIZATIONS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CWCHAR +# ifdef BOOST_NO_CWCHAR +# error "Defect macro BOOST_NO_CWCHAR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CWCTYPE +# ifdef BOOST_NO_CWCTYPE +# error "Defect macro BOOST_NO_CWCTYPE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_ADDRESSOF +# ifdef BOOST_NO_CXX11_ADDRESSOF +# error "Defect macro BOOST_NO_CXX11_ADDRESSOF is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_ALIGNAS +# ifdef BOOST_NO_CXX11_ALIGNAS +# error "Defect macro BOOST_NO_CXX11_ALIGNAS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_ALLOCATOR +# ifdef BOOST_NO_CXX11_ALLOCATOR +# error "Defect macro BOOST_NO_CXX11_ALLOCATOR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_ATOMIC_SMART_PTR +# ifdef BOOST_NO_CXX11_ATOMIC_SMART_PTR +# error "Defect macro BOOST_NO_CXX11_ATOMIC_SMART_PTR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_DEFAULTED_MOVES +# ifdef BOOST_NO_CXX11_DEFAULTED_MOVES +# error "Defect macro BOOST_NO_CXX11_DEFAULTED_MOVES is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_EXCEPTION +# ifdef BOOST_NO_CXX11_HDR_EXCEPTION +# error "Defect macro BOOST_NO_CXX11_HDR_EXCEPTION is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_FINAL +# ifdef BOOST_NO_CXX11_FINAL +# error "Defect macro BOOST_NO_CXX11_FINAL is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_ARRAY +# ifdef BOOST_NO_CXX11_HDR_ARRAY +# error "Defect macro BOOST_NO_CXX11_HDR_ARRAY is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_ATOMIC +# ifdef BOOST_NO_CXX11_HDR_ATOMIC +# error "Defect macro BOOST_NO_CXX11_HDR_ATOMIC is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_CHRONO +# ifdef BOOST_NO_CXX11_HDR_CHRONO +# error "Defect macro BOOST_NO_CXX11_HDR_CHRONO is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_CODECVT +# ifdef BOOST_NO_CXX11_HDR_CODECVT +# error "Defect macro BOOST_NO_CXX11_HDR_CODECVT is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_CONDITION_VARIABLE +# ifdef BOOST_NO_CXX11_HDR_CONDITION_VARIABLE +# error "Defect macro BOOST_NO_CXX11_HDR_CONDITION_VARIABLE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_FORWARD_LIST +# ifdef BOOST_NO_CXX11_HDR_FORWARD_LIST +# error "Defect macro BOOST_NO_CXX11_HDR_FORWARD_LIST is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_FUTURE +# ifdef BOOST_NO_CXX11_HDR_FUTURE +# error "Defect macro BOOST_NO_CXX11_HDR_FUTURE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_INITIALIZER_LIST +# ifdef BOOST_NO_CXX11_HDR_INITIALIZER_LIST +# error "Defect macro BOOST_NO_CXX11_HDR_INITIALIZER_LIST is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_MUTEX +# ifdef BOOST_NO_CXX11_HDR_MUTEX +# error "Defect macro BOOST_NO_CXX11_HDR_MUTEX is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_RANDOM +# ifdef BOOST_NO_CXX11_HDR_RANDOM +# error "Defect macro BOOST_NO_CXX11_HDR_RANDOM is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_RATIO +# ifdef BOOST_NO_CXX11_HDR_RATIO +# error "Defect macro BOOST_NO_CXX11_HDR_RATIO is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_REGEX +# ifdef BOOST_NO_CXX11_HDR_REGEX +# error "Defect macro BOOST_NO_CXX11_HDR_REGEX is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_SYSTEM_ERROR +# ifdef BOOST_NO_CXX11_HDR_SYSTEM_ERROR +# error "Defect macro BOOST_NO_CXX11_HDR_SYSTEM_ERROR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_THREAD +# ifdef BOOST_NO_CXX11_HDR_THREAD +# error "Defect macro BOOST_NO_CXX11_HDR_THREAD is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_TUPLE +# ifdef BOOST_NO_CXX11_HDR_TUPLE +# error "Defect macro BOOST_NO_CXX11_HDR_TUPLE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_TYPE_TRAITS +# ifdef BOOST_NO_CXX11_HDR_TYPE_TRAITS +# error "Defect macro BOOST_NO_CXX11_HDR_TYPE_TRAITS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_TYPEINDEX +# ifdef BOOST_NO_CXX11_HDR_TYPEINDEX +# error "Defect macro BOOST_NO_CXX11_HDR_TYPEINDEX is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_UNORDERED_MAP +# ifdef BOOST_NO_CXX11_HDR_UNORDERED_MAP +# error "Defect macro BOOST_NO_CXX11_HDR_UNORDERED_MAP is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_UNORDERED_SET +# ifdef BOOST_NO_CXX11_HDR_UNORDERED_SET +# error "Defect macro BOOST_NO_CXX11_HDR_UNORDERED_SET is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_INLINE_NAMESPACES +# ifdef BOOST_NO_CXX11_INLINE_NAMESPACES +# error "Defect macro BOOST_NO_CXX11_INLINE_NAMESPACES is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS +# ifdef BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS +# error "Defect macro BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_NUMERIC_LIMITS +# ifdef BOOST_NO_CXX11_NUMERIC_LIMITS +# error "Defect macro BOOST_NO_CXX11_NUMERIC_LIMITS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_POINTER_TRAITS +# ifdef BOOST_NO_CXX11_POINTER_TRAITS +# error "Defect macro BOOST_NO_CXX11_POINTER_TRAITS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_REF_QUALIFIERS +# ifdef BOOST_NO_CXX11_REF_QUALIFIERS +# error "Defect macro BOOST_NO_CXX11_REF_QUALIFIERS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_SFINAE_EXPR +# ifdef BOOST_NO_CXX11_SFINAE_EXPR +# error "Defect macro BOOST_NO_CXX11_SFINAE_EXPR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_SMART_PTR +# ifdef BOOST_NO_CXX11_SMART_PTR +# error "Defect macro BOOST_NO_CXX11_SMART_PTR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_STD_ALIGN +# ifdef BOOST_NO_CXX11_STD_ALIGN +# error "Defect macro BOOST_NO_CXX11_STD_ALIGN is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_THREAD_LOCAL +# ifdef BOOST_NO_CXX11_THREAD_LOCAL +# error "Defect macro BOOST_NO_CXX11_THREAD_LOCAL is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_TRAILING_RESULT_TYPES +# ifdef BOOST_NO_CXX11_TRAILING_RESULT_TYPES +# error "Defect macro BOOST_NO_CXX11_TRAILING_RESULT_TYPES is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_USER_DEFINED_LITERALS +# ifdef BOOST_NO_CXX11_USER_DEFINED_LITERALS +# error "Defect macro BOOST_NO_CXX11_USER_DEFINED_LITERALS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX14_BINARY_LITERALS +# ifdef BOOST_NO_CXX14_BINARY_LITERALS +# error "Defect macro BOOST_NO_CXX14_BINARY_LITERALS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX14_CONSTEXPR +# ifdef BOOST_NO_CXX14_CONSTEXPR +# error "Defect macro BOOST_NO_CXX14_CONSTEXPR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX14_DECLTYPE_AUTO +# ifdef BOOST_NO_CXX14_DECLTYPE_AUTO +# error "Defect macro BOOST_NO_CXX14_DECLTYPE_AUTO is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX14_DIGIT_SEPARATORS +# ifdef BOOST_NO_CXX14_DIGIT_SEPARATORS +# error "Defect macro BOOST_NO_CXX14_DIGIT_SEPARATORS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX14_GENERIC_LAMBDAS +# ifdef BOOST_NO_CXX14_GENERIC_LAMBDAS +# error "Defect macro BOOST_NO_CXX14_GENERIC_LAMBDAS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX14_HDR_SHARED_MUTEX +# ifdef BOOST_NO_CXX14_HDR_SHARED_MUTEX +# error "Defect macro BOOST_NO_CXX14_HDR_SHARED_MUTEX is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES +# ifdef BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES +# error "Defect macro BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX14_AGGREGATE_NSDMI +# ifdef BOOST_NO_CXX14_AGGREGATE_NSDMI +# error "Defect macro BOOST_NO_CXX14_AGGREGATE_NSDMI is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION +# ifdef BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION +# error "Defect macro BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX14_STD_EXCHANGE +# ifdef BOOST_NO_CXX14_STD_EXCHANGE +# error "Defect macro BOOST_NO_CXX14_STD_EXCHANGE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX14_VARIABLE_TEMPLATES +# ifdef BOOST_NO_CXX14_VARIABLE_TEMPLATES +# error "Defect macro BOOST_NO_CXX14_VARIABLE_TEMPLATES is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX17_FOLD_EXPRESSIONS +# ifdef BOOST_NO_CXX17_FOLD_EXPRESSIONS +# error "Defect macro BOOST_NO_CXX17_FOLD_EXPRESSIONS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX17_HDR_OPTIONAL +# ifdef BOOST_NO_CXX17_HDR_OPTIONAL +# error "Defect macro BOOST_NO_CXX17_HDR_OPTIONAL is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX17_HDR_STRING_VIEW +# ifdef BOOST_NO_CXX17_HDR_STRING_VIEW +# error "Defect macro BOOST_NO_CXX17_HDR_STRING_VIEW is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX17_HDR_VARIANT +# ifdef BOOST_NO_CXX17_HDR_VARIANT +# error "Defect macro BOOST_NO_CXX17_HDR_VARIANT is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX17_IF_CONSTEXPR +# ifdef BOOST_NO_CXX17_IF_CONSTEXPR +# error "Defect macro BOOST_NO_CXX17_IF_CONSTEXPR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX17_INLINE_VARIABLES +# ifdef BOOST_NO_CXX17_INLINE_VARIABLES +# error "Defect macro BOOST_NO_CXX17_INLINE_VARIABLES is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX17_ITERATOR_TRAITS +# ifdef BOOST_NO_CXX17_ITERATOR_TRAITS +# error "Defect macro BOOST_NO_CXX17_ITERATOR_TRAITS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX17_STD_APPLY +# ifdef BOOST_NO_CXX17_STD_APPLY +# error "Defect macro BOOST_NO_CXX17_STD_APPLY is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX17_STD_INVOKE +# ifdef BOOST_NO_CXX17_STD_INVOKE +# error "Defect macro BOOST_NO_CXX17_STD_INVOKE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX17_STRUCTURED_BINDINGS +# ifdef BOOST_NO_CXX17_STRUCTURED_BINDINGS +# error "Defect macro BOOST_NO_CXX17_STRUCTURED_BINDINGS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX98_BINDERS +# ifdef BOOST_NO_CXX98_BINDERS +# error "Defect macro BOOST_NO_CXX98_BINDERS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX98_FUNCTION_BASE +# ifdef BOOST_NO_CXX98_FUNCTION_BASE +# error "Defect macro BOOST_NO_CXX98_FUNCTION_BASE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX98_RANDOM_SHUFFLE +# ifdef BOOST_NO_CXX98_RANDOM_SHUFFLE +# error "Defect macro BOOST_NO_CXX98_RANDOM_SHUFFLE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_HDR_FUNCTIONAL +# ifdef BOOST_NO_CXX11_HDR_FUNCTIONAL +# error "Defect macro BOOST_NO_CXX11_HDR_FUNCTIONAL is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_DECLTYPE +# ifdef BOOST_NO_CXX11_DECLTYPE +# error "Defect macro BOOST_NO_CXX11_DECLTYPE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_DECLTYPE_N3276 +# ifdef BOOST_NO_CXX11_DECLTYPE_N3276 +# error "Defect macro BOOST_NO_CXX11_DECLTYPE_N3276 is defined." +# endif +#endif +#ifdef TEST_BOOST_DEDUCED_TYPENAME +# ifdef BOOST_DEDUCED_TYPENAME +# error "Defect macro BOOST_DEDUCED_TYPENAME is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_DEFAULTED_FUNCTIONS +# ifdef BOOST_NO_CXX11_DEFAULTED_FUNCTIONS +# error "Defect macro BOOST_NO_CXX11_DEFAULTED_FUNCTIONS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_DELETED_FUNCTIONS +# ifdef BOOST_NO_CXX11_DELETED_FUNCTIONS +# error "Defect macro BOOST_NO_CXX11_DELETED_FUNCTIONS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_DEPENDENT_NESTED_DERIVATIONS +# ifdef BOOST_NO_DEPENDENT_NESTED_DERIVATIONS +# error "Defect macro BOOST_NO_DEPENDENT_NESTED_DERIVATIONS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS +# ifdef BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS +# error "Defect macro BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_EXCEPTION_STD_NAMESPACE +# ifdef BOOST_NO_EXCEPTION_STD_NAMESPACE +# error "Defect macro BOOST_NO_EXCEPTION_STD_NAMESPACE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_EXCEPTIONS +# ifdef BOOST_NO_EXCEPTIONS +# error "Defect macro BOOST_NO_EXCEPTIONS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS +# ifdef BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS +# error "Defect macro BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS +# ifdef BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS +# error "Defect macro BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_EXTERN_TEMPLATE +# ifdef BOOST_NO_CXX11_EXTERN_TEMPLATE +# error "Defect macro BOOST_NO_CXX11_EXTERN_TEMPLATE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_FENV_H +# ifdef BOOST_NO_FENV_H +# error "Defect macro BOOST_NO_FENV_H is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS +# ifdef BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS +# error "Defect macro BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_FUNCTION_TEMPLATE_ORDERING +# ifdef BOOST_NO_FUNCTION_TEMPLATE_ORDERING +# error "Defect macro BOOST_NO_FUNCTION_TEMPLATE_ORDERING is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS +# ifdef BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS +# error "Defect macro BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS +# ifdef BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS +# error "Defect macro BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_MS_INT64_NUMERIC_LIMITS +# ifdef BOOST_NO_MS_INT64_NUMERIC_LIMITS +# error "Defect macro BOOST_NO_MS_INT64_NUMERIC_LIMITS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_INCLASS_MEMBER_INITIALIZATION +# ifdef BOOST_NO_INCLASS_MEMBER_INITIALIZATION +# error "Defect macro BOOST_NO_INCLASS_MEMBER_INITIALIZATION is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_INTEGRAL_INT64_T +# ifdef BOOST_NO_INTEGRAL_INT64_T +# error "Defect macro BOOST_NO_INTEGRAL_INT64_T is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_IOSFWD +# ifdef BOOST_NO_IOSFWD +# error "Defect macro BOOST_NO_IOSFWD is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_IOSTREAM +# ifdef BOOST_NO_IOSTREAM +# error "Defect macro BOOST_NO_IOSTREAM is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_IS_ABSTRACT +# ifdef BOOST_NO_IS_ABSTRACT +# error "Defect macro BOOST_NO_IS_ABSTRACT is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS +# ifdef BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS +# error "Defect macro BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_LAMBDAS +# ifdef BOOST_NO_CXX11_LAMBDAS +# error "Defect macro BOOST_NO_CXX11_LAMBDAS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_LIMITS +# ifdef BOOST_NO_LIMITS +# error "Defect macro BOOST_NO_LIMITS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS +# ifdef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS +# error "Defect macro BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_LONG_LONG_NUMERIC_LIMITS +# ifdef BOOST_NO_LONG_LONG_NUMERIC_LIMITS +# error "Defect macro BOOST_NO_LONG_LONG_NUMERIC_LIMITS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_LONG_LONG +# ifdef BOOST_NO_LONG_LONG +# error "Defect macro BOOST_NO_LONG_LONG is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS +# ifdef BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS +# error "Defect macro BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_MEMBER_TEMPLATE_KEYWORD +# ifdef BOOST_NO_MEMBER_TEMPLATE_KEYWORD +# error "Defect macro BOOST_NO_MEMBER_TEMPLATE_KEYWORD is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS +# ifdef BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS +# error "Defect macro BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_MEMBER_TEMPLATE_FRIENDS +# ifdef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +# error "Defect macro BOOST_NO_MEMBER_TEMPLATE_FRIENDS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_MEMBER_TEMPLATES +# ifdef BOOST_NO_MEMBER_TEMPLATES +# error "Defect macro BOOST_NO_MEMBER_TEMPLATES is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_NESTED_FRIENDSHIP +# ifdef BOOST_NO_NESTED_FRIENDSHIP +# error "Defect macro BOOST_NO_NESTED_FRIENDSHIP is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_NOEXCEPT +# ifdef BOOST_NO_CXX11_NOEXCEPT +# error "Defect macro BOOST_NO_CXX11_NOEXCEPT is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_NULLPTR +# ifdef BOOST_NO_CXX11_NULLPTR +# error "Defect macro BOOST_NO_CXX11_NULLPTR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_OPERATORS_IN_NAMESPACE +# ifdef BOOST_NO_OPERATORS_IN_NAMESPACE +# error "Defect macro BOOST_NO_OPERATORS_IN_NAMESPACE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS +# ifdef BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS +# error "Defect macro BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION +# ifdef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION +# error "Defect macro BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_PRIVATE_IN_AGGREGATE +# ifdef BOOST_NO_PRIVATE_IN_AGGREGATE +# error "Defect macro BOOST_NO_PRIVATE_IN_AGGREGATE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_POINTER_TO_MEMBER_CONST +# ifdef BOOST_NO_POINTER_TO_MEMBER_CONST +# error "Defect macro BOOST_NO_POINTER_TO_MEMBER_CONST is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_RANGE_BASED_FOR +# ifdef BOOST_NO_CXX11_RANGE_BASED_FOR +# error "Defect macro BOOST_NO_CXX11_RANGE_BASED_FOR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_RAW_LITERALS +# ifdef BOOST_NO_CXX11_RAW_LITERALS +# error "Defect macro BOOST_NO_CXX11_RAW_LITERALS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_RESTRICT_REFERENCES +# ifdef BOOST_NO_RESTRICT_REFERENCES +# error "Defect macro BOOST_NO_RESTRICT_REFERENCES is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_UNREACHABLE_RETURN_DETECTION +# ifdef BOOST_NO_UNREACHABLE_RETURN_DETECTION +# error "Defect macro BOOST_NO_UNREACHABLE_RETURN_DETECTION is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_RTTI +# ifdef BOOST_NO_RTTI +# error "Defect macro BOOST_NO_RTTI is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_RVALUE_REFERENCES +# ifdef BOOST_NO_CXX11_RVALUE_REFERENCES +# error "Defect macro BOOST_NO_CXX11_RVALUE_REFERENCES is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_SCOPED_ENUMS +# ifdef BOOST_NO_CXX11_SCOPED_ENUMS +# error "Defect macro BOOST_NO_CXX11_SCOPED_ENUMS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_SFINAE +# ifdef BOOST_NO_SFINAE +# error "Defect macro BOOST_NO_SFINAE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_SFINAE_EXPR +# ifdef BOOST_NO_SFINAE_EXPR +# error "Defect macro BOOST_NO_SFINAE_EXPR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_STRINGSTREAM +# ifdef BOOST_NO_STRINGSTREAM +# error "Defect macro BOOST_NO_STRINGSTREAM is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_STATIC_ASSERT +# ifdef BOOST_NO_CXX11_STATIC_ASSERT +# error "Defect macro BOOST_NO_CXX11_STATIC_ASSERT is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_STD_ALLOCATOR +# ifdef BOOST_NO_STD_ALLOCATOR +# error "Defect macro BOOST_NO_STD_ALLOCATOR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_STD_DISTANCE +# ifdef BOOST_NO_STD_DISTANCE +# error "Defect macro BOOST_NO_STD_DISTANCE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_STD_ITERATOR_TRAITS +# ifdef BOOST_NO_STD_ITERATOR_TRAITS +# error "Defect macro BOOST_NO_STD_ITERATOR_TRAITS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_STD_ITERATOR +# ifdef BOOST_NO_STD_ITERATOR +# error "Defect macro BOOST_NO_STD_ITERATOR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_STD_LOCALE +# ifdef BOOST_NO_STD_LOCALE +# error "Defect macro BOOST_NO_STD_LOCALE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_STD_MESSAGES +# ifdef BOOST_NO_STD_MESSAGES +# error "Defect macro BOOST_NO_STD_MESSAGES is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_STD_MIN_MAX +# ifdef BOOST_NO_STD_MIN_MAX +# error "Defect macro BOOST_NO_STD_MIN_MAX is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN +# ifdef BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN +# error "Defect macro BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_STD_TYPEINFO +# ifdef BOOST_NO_STD_TYPEINFO +# error "Defect macro BOOST_NO_STD_TYPEINFO is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_STD_USE_FACET +# ifdef BOOST_NO_STD_USE_FACET +# error "Defect macro BOOST_NO_STD_USE_FACET is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_STD_WSTREAMBUF +# ifdef BOOST_NO_STD_WSTREAMBUF +# error "Defect macro BOOST_NO_STD_WSTREAMBUF is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_STD_WSTRING +# ifdef BOOST_NO_STD_WSTRING +# error "Defect macro BOOST_NO_STD_WSTRING is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_STDC_NAMESPACE +# ifdef BOOST_NO_STDC_NAMESPACE +# error "Defect macro BOOST_NO_STDC_NAMESPACE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_SWPRINTF +# ifdef BOOST_NO_SWPRINTF +# error "Defect macro BOOST_NO_SWPRINTF is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS +# ifdef BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS +# error "Defect macro BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_TEMPLATE_ALIASES +# ifdef BOOST_NO_CXX11_TEMPLATE_ALIASES +# error "Defect macro BOOST_NO_CXX11_TEMPLATE_ALIASES is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_TEMPLATED_IOSTREAMS +# ifdef BOOST_NO_TEMPLATED_IOSTREAMS +# error "Defect macro BOOST_NO_TEMPLATED_IOSTREAMS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_TEMPLATE_TEMPLATES +# ifdef BOOST_NO_TEMPLATE_TEMPLATES +# error "Defect macro BOOST_NO_TEMPLATE_TEMPLATES is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_TWO_PHASE_NAME_LOOKUP +# ifdef BOOST_NO_TWO_PHASE_NAME_LOOKUP +# error "Defect macro BOOST_NO_TWO_PHASE_NAME_LOOKUP is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_TYPEID +# ifdef BOOST_NO_TYPEID +# error "Defect macro BOOST_NO_TYPEID is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_TYPENAME_WITH_CTOR +# ifdef BOOST_NO_TYPENAME_WITH_CTOR +# error "Defect macro BOOST_NO_TYPENAME_WITH_CTOR is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_UNICODE_LITERALS +# ifdef BOOST_NO_CXX11_UNICODE_LITERALS +# error "Defect macro BOOST_NO_CXX11_UNICODE_LITERALS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX +# ifdef BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX +# error "Defect macro BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_UNRESTRICTED_UNION +# ifdef BOOST_NO_CXX11_UNRESTRICTED_UNION +# error "Defect macro BOOST_NO_CXX11_UNRESTRICTED_UNION is defined." +# endif +#endif +#ifdef TEST_BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL +# ifdef BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL +# error "Defect macro BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE +# ifdef BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE +# error "Defect macro BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_USING_TEMPLATE +# ifdef BOOST_NO_USING_TEMPLATE +# error "Defect macro BOOST_NO_USING_TEMPLATE is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_VARIADIC_MACROS +# ifdef BOOST_NO_CXX11_VARIADIC_MACROS +# error "Defect macro BOOST_NO_CXX11_VARIADIC_MACROS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_CXX11_VARIADIC_TEMPLATES +# ifdef BOOST_NO_CXX11_VARIADIC_TEMPLATES +# error "Defect macro BOOST_NO_CXX11_VARIADIC_TEMPLATES is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_VOID_RETURNS +# ifdef BOOST_NO_VOID_RETURNS +# error "Defect macro BOOST_NO_VOID_RETURNS is defined." +# endif +#endif +#ifdef TEST_BOOST_NO_INTRINSIC_WCHAR_T +# ifdef BOOST_NO_INTRINSIC_WCHAR_T +# error "Defect macro BOOST_NO_INTRINSIC_WCHAR_T is defined." +# endif +#endif + +int main( int, char *[] ) +{ + return 0; +} + diff --git a/src/boost/libs/config/configure b/src/boost/libs/config/configure new file mode 100644 index 000000000..85e2307ec --- /dev/null +++ b/src/boost/libs/config/configure @@ -0,0 +1,3894 @@ +#! /bin/sh +# Guess values for system-dependent variables and create Makefiles. +# Generated by GNU Autoconf 2.61. +# +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +# This configure script is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. +## --------------------- ## +## M4sh Initialization. ## +## --------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + + + +# PATH needs CR +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + +# Support unset when possible. +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + as_unset=unset +else + as_unset=false +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +as_nl=' +' +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + { (exit 1); exit 1; } +fi + +# Work around bugs in pre-3.0 UWIN ksh. +for as_var in ENV MAIL MAILPATH +do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +for as_var in \ + LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ + LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ + LC_TELEPHONE LC_TIME +do + if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then + eval $as_var=C; export $as_var + else + ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var + fi +done + +# Required to use basename. +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + + +# Name of the executable. +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# CDPATH. +$as_unset CDPATH + + +if test "x$CONFIG_SHELL" = x; then + if (eval ":") 2>/dev/null; then + as_have_required=yes +else + as_have_required=no +fi + + if test $as_have_required = yes && (eval ": +(as_func_return () { + (exit \$1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} + +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. +fi + +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi + +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi + +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = \"\$1\" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test \$exitcode = 0) || { (exit 1); exit 1; } + +( + as_lineno_1=\$LINENO + as_lineno_2=\$LINENO + test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" && + test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; } +") 2> /dev/null; then + : +else + as_candidate_shells= + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + case $as_dir in + /*) + for as_base in sh bash ksh sh5; do + as_candidate_shells="$as_candidate_shells $as_dir/$as_base" + done;; + esac +done +IFS=$as_save_IFS + + + for as_shell in $as_candidate_shells $SHELL; do + # Try only shells that exist, to save several forks. + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { ("$as_shell") 2> /dev/null <<\_ASEOF +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + +: +_ASEOF +}; then + CONFIG_SHELL=$as_shell + as_have_required=yes + if { "$as_shell" 2> /dev/null <<\_ASEOF +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + +: +(as_func_return () { + (exit $1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} + +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. +fi + +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi + +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi + +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = "$1" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test $exitcode = 0) || { (exit 1); exit 1; } + +( + as_lineno_1=$LINENO + as_lineno_2=$LINENO + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; } + +_ASEOF +}; then + break +fi + +fi + + done + + if test "x$CONFIG_SHELL" != x; then + for as_var in BASH_ENV ENV + do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var + done + export CONFIG_SHELL + exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} +fi + + + if test $as_have_required = no; then + echo This script requires a shell more modern than all the + echo shells that I found on your system. Please install a + echo modern shell, or manually run the script under such a + echo shell if you do have one. + { (exit 1); exit 1; } +fi + + +fi + +fi + + + +(eval "as_func_return () { + (exit \$1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} + +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. +fi + +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi + +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi + +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = \"\$1\" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test \$exitcode = 0") || { + echo No shell found that supports shell functions. + echo Please tell autoconf@gnu.org about your system, + echo including any error possibly output before this + echo message +} + + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { + + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO + # uniformly replaced by the line number. The first 'sed' inserts a + # line-number line after each line using $LINENO; the second 'sed' + # does the real work. The second script uses 'N' to pair each + # line-number line with the line containing $LINENO, and appends + # trailing '-' during substitution so that $LINENO is not a special + # case at line end. + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the + # scripts with optimization help from Paolo Bonzini. Blame Lee + # E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | + sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno + N + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ + t loop + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || + { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" + # Exit status is that of the last command. + exit +} + + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in +-n*) + case `echo 'x\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + *) ECHO_C='\c';; + esac;; +*) + ECHO_N='-n';; +esac + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir +fi +echo >conf$$.file +if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' +elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln +else + as_ln_s='cp -p' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + +if mkdir -p . 2>/dev/null; then + as_mkdir_p=: +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + + +exec 7<&0 </dev/null 6>&1 + +# Name of the host. +# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, +# so uname gets run too. +ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` + +# +# Initializations. +# +ac_default_prefix=/usr/local +ac_clean_files= +ac_config_libobj_dir=. +LIBOBJS= +cross_compiling=no +subdirs= +MFLAGS= +MAKEFLAGS= +SHELL=${CONFIG_SHELL-/bin/sh} + +# Identity of this package. +PACKAGE_NAME= +PACKAGE_TARNAME= +PACKAGE_VERSION= +PACKAGE_STRING= +PACKAGE_BUGREPORT= + +ac_unique_file="./tools/configure.in" +ac_subst_vars='SHELL +PATH_SEPARATOR +PACKAGE_NAME +PACKAGE_TARNAME +PACKAGE_VERSION +PACKAGE_STRING +PACKAGE_BUGREPORT +exec_prefix +prefix +program_transform_name +bindir +sbindir +libexecdir +datarootdir +datadir +sysconfdir +sharedstatedir +localstatedir +includedir +oldincludedir +docdir +infodir +htmldir +dvidir +pdfdir +psdir +libdir +localedir +mandir +DEFS +ECHO_C +ECHO_N +ECHO_T +LIBS +build_alias +host_alias +target_alias +CXX +CXXFLAGS +LDFLAGS +CPPFLAGS +ac_ct_CXX +EXEEXT +OBJEXT +LIBOBJS +LTLIBOBJS' +ac_subst_files='' + ac_precious_vars='build_alias +host_alias +target_alias +CXX +CXXFLAGS +LDFLAGS +LIBS +CPPFLAGS +CCC' + + +# Initialize some variables set by options. +ac_init_help= +ac_init_version=false +# The variables have the same names as the options, with +# dashes changed to underlines. +cache_file=/dev/null +exec_prefix=NONE +no_create= +no_recursion= +prefix=NONE +program_prefix=NONE +program_suffix=NONE +program_transform_name=s,x,x, +silent= +site= +srcdir= +verbose= +x_includes=NONE +x_libraries=NONE + +# Installation directory options. +# These are left unexpanded so users can "make install exec_prefix=/foo" +# and all the variables that are supposed to be based on exec_prefix +# by default will actually change. +# Use braces instead of parens because sh, perl, etc. also accept them. +# (The list follows the same order as the GNU Coding Standards.) +bindir='${exec_prefix}/bin' +sbindir='${exec_prefix}/sbin' +libexecdir='${exec_prefix}/libexec' +datarootdir='${prefix}/share' +datadir='${datarootdir}' +sysconfdir='${prefix}/etc' +sharedstatedir='${prefix}/com' +localstatedir='${prefix}/var' +includedir='${prefix}/include' +oldincludedir='/usr/include' +docdir='${datarootdir}/doc/${PACKAGE}' +infodir='${datarootdir}/info' +htmldir='${docdir}' +dvidir='${docdir}' +pdfdir='${docdir}' +psdir='${docdir}' +libdir='${exec_prefix}/lib' +localedir='${datarootdir}/locale' +mandir='${datarootdir}/man' + +ac_prev= +ac_dashdash= +for ac_option +do + # If the previous option needs an argument, assign it. + if test -n "$ac_prev"; then + eval $ac_prev=\$ac_option + ac_prev= + continue + fi + + case $ac_option in + *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; + *) ac_optarg=yes ;; + esac + + # Accept the important Cygnus configure options, so we can diagnose typos. + + case $ac_dashdash$ac_option in + --) + ac_dashdash=yes ;; + + -bindir | --bindir | --bindi | --bind | --bin | --bi) + ac_prev=bindir ;; + -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) + bindir=$ac_optarg ;; + + -build | --build | --buil | --bui | --bu) + ac_prev=build_alias ;; + -build=* | --build=* | --buil=* | --bui=* | --bu=*) + build_alias=$ac_optarg ;; + + -cache-file | --cache-file | --cache-fil | --cache-fi \ + | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) + ac_prev=cache_file ;; + -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ + | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) + cache_file=$ac_optarg ;; + + --config-cache | -C) + cache_file=config.cache ;; + + -datadir | --datadir | --datadi | --datad) + ac_prev=datadir ;; + -datadir=* | --datadir=* | --datadi=* | --datad=*) + datadir=$ac_optarg ;; + + -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ + | --dataroo | --dataro | --datar) + ac_prev=datarootdir ;; + -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ + | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) + datarootdir=$ac_optarg ;; + + -disable-* | --disable-*) + ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid feature name: $ac_feature" >&2 + { (exit 1); exit 1; }; } + ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` + eval enable_$ac_feature=no ;; + + -docdir | --docdir | --docdi | --doc | --do) + ac_prev=docdir ;; + -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) + docdir=$ac_optarg ;; + + -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) + ac_prev=dvidir ;; + -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) + dvidir=$ac_optarg ;; + + -enable-* | --enable-*) + ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid feature name: $ac_feature" >&2 + { (exit 1); exit 1; }; } + ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` + eval enable_$ac_feature=\$ac_optarg ;; + + -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ + | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ + | --exec | --exe | --ex) + ac_prev=exec_prefix ;; + -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ + | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ + | --exec=* | --exe=* | --ex=*) + exec_prefix=$ac_optarg ;; + + -gas | --gas | --ga | --g) + # Obsolete; use --with-gas. + with_gas=yes ;; + + -help | --help | --hel | --he | -h) + ac_init_help=long ;; + -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) + ac_init_help=recursive ;; + -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) + ac_init_help=short ;; + + -host | --host | --hos | --ho) + ac_prev=host_alias ;; + -host=* | --host=* | --hos=* | --ho=*) + host_alias=$ac_optarg ;; + + -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) + ac_prev=htmldir ;; + -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ + | --ht=*) + htmldir=$ac_optarg ;; + + -includedir | --includedir | --includedi | --included | --include \ + | --includ | --inclu | --incl | --inc) + ac_prev=includedir ;; + -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ + | --includ=* | --inclu=* | --incl=* | --inc=*) + includedir=$ac_optarg ;; + + -infodir | --infodir | --infodi | --infod | --info | --inf) + ac_prev=infodir ;; + -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) + infodir=$ac_optarg ;; + + -libdir | --libdir | --libdi | --libd) + ac_prev=libdir ;; + -libdir=* | --libdir=* | --libdi=* | --libd=*) + libdir=$ac_optarg ;; + + -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ + | --libexe | --libex | --libe) + ac_prev=libexecdir ;; + -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ + | --libexe=* | --libex=* | --libe=*) + libexecdir=$ac_optarg ;; + + -localedir | --localedir | --localedi | --localed | --locale) + ac_prev=localedir ;; + -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) + localedir=$ac_optarg ;; + + -localstatedir | --localstatedir | --localstatedi | --localstated \ + | --localstate | --localstat | --localsta | --localst | --locals) + ac_prev=localstatedir ;; + -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ + | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) + localstatedir=$ac_optarg ;; + + -mandir | --mandir | --mandi | --mand | --man | --ma | --m) + ac_prev=mandir ;; + -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) + mandir=$ac_optarg ;; + + -nfp | --nfp | --nf) + # Obsolete; use --without-fp. + with_fp=no ;; + + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c | -n) + no_create=yes ;; + + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) + no_recursion=yes ;; + + -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ + | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ + | --oldin | --oldi | --old | --ol | --o) + ac_prev=oldincludedir ;; + -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ + | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ + | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) + oldincludedir=$ac_optarg ;; + + -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) + ac_prev=prefix ;; + -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) + prefix=$ac_optarg ;; + + -program-prefix | --program-prefix | --program-prefi | --program-pref \ + | --program-pre | --program-pr | --program-p) + ac_prev=program_prefix ;; + -program-prefix=* | --program-prefix=* | --program-prefi=* \ + | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) + program_prefix=$ac_optarg ;; + + -program-suffix | --program-suffix | --program-suffi | --program-suff \ + | --program-suf | --program-su | --program-s) + ac_prev=program_suffix ;; + -program-suffix=* | --program-suffix=* | --program-suffi=* \ + | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) + program_suffix=$ac_optarg ;; + + -program-transform-name | --program-transform-name \ + | --program-transform-nam | --program-transform-na \ + | --program-transform-n | --program-transform- \ + | --program-transform | --program-transfor \ + | --program-transfo | --program-transf \ + | --program-trans | --program-tran \ + | --progr-tra | --program-tr | --program-t) + ac_prev=program_transform_name ;; + -program-transform-name=* | --program-transform-name=* \ + | --program-transform-nam=* | --program-transform-na=* \ + | --program-transform-n=* | --program-transform-=* \ + | --program-transform=* | --program-transfor=* \ + | --program-transfo=* | --program-transf=* \ + | --program-trans=* | --program-tran=* \ + | --progr-tra=* | --program-tr=* | --program-t=*) + program_transform_name=$ac_optarg ;; + + -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) + ac_prev=pdfdir ;; + -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) + pdfdir=$ac_optarg ;; + + -psdir | --psdir | --psdi | --psd | --ps) + ac_prev=psdir ;; + -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) + psdir=$ac_optarg ;; + + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + silent=yes ;; + + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) + ac_prev=sbindir ;; + -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ + | --sbi=* | --sb=*) + sbindir=$ac_optarg ;; + + -sharedstatedir | --sharedstatedir | --sharedstatedi \ + | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ + | --sharedst | --shareds | --shared | --share | --shar \ + | --sha | --sh) + ac_prev=sharedstatedir ;; + -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ + | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ + | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ + | --sha=* | --sh=*) + sharedstatedir=$ac_optarg ;; + + -site | --site | --sit) + ac_prev=site ;; + -site=* | --site=* | --sit=*) + site=$ac_optarg ;; + + -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) + ac_prev=srcdir ;; + -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) + srcdir=$ac_optarg ;; + + -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ + | --syscon | --sysco | --sysc | --sys | --sy) + ac_prev=sysconfdir ;; + -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ + | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) + sysconfdir=$ac_optarg ;; + + -target | --target | --targe | --targ | --tar | --ta | --t) + ac_prev=target_alias ;; + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) + target_alias=$ac_optarg ;; + + -v | -verbose | --verbose | --verbos | --verbo | --verb) + verbose=yes ;; + + -version | --version | --versio | --versi | --vers | -V) + ac_init_version=: ;; + + -with-* | --with-*) + ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid package name: $ac_package" >&2 + { (exit 1); exit 1; }; } + ac_package=`echo $ac_package | sed 's/[-.]/_/g'` + eval with_$ac_package=\$ac_optarg ;; + + -without-* | --without-*) + ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid package name: $ac_package" >&2 + { (exit 1); exit 1; }; } + ac_package=`echo $ac_package | sed 's/[-.]/_/g'` + eval with_$ac_package=no ;; + + --x) + # Obsolete; use --with-x. + with_x=yes ;; + + -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ + | --x-incl | --x-inc | --x-in | --x-i) + ac_prev=x_includes ;; + -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ + | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) + x_includes=$ac_optarg ;; + + -x-libraries | --x-libraries | --x-librarie | --x-librari \ + | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) + ac_prev=x_libraries ;; + -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ + | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) + x_libraries=$ac_optarg ;; + + -*) { echo "$as_me: error: unrecognized option: $ac_option +Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; } + ;; + + *=*) + ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` + # Reject names that are not valid shell variable names. + expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 + { (exit 1); exit 1; }; } + eval $ac_envvar=\$ac_optarg + export $ac_envvar ;; + + *) + # FIXME: should be removed in autoconf 3.0. + echo "$as_me: WARNING: you should use --build, --host, --target" >&2 + expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && + echo "$as_me: WARNING: invalid host type: $ac_option" >&2 + : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} + ;; + + esac +done + +if test -n "$ac_prev"; then + ac_option=--`echo $ac_prev | sed 's/_/-/g'` + { echo "$as_me: error: missing argument to $ac_option" >&2 + { (exit 1); exit 1; }; } +fi + +# Be sure to have absolute directory names. +for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ + datadir sysconfdir sharedstatedir localstatedir includedir \ + oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ + libdir localedir mandir +do + eval ac_val=\$$ac_var + case $ac_val in + [\\/$]* | ?:[\\/]* ) continue;; + NONE | '' ) case $ac_var in *prefix ) continue;; esac;; + esac + { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 + { (exit 1); exit 1; }; } +done + +# There might be people who depend on the old broken behavior: `$host' +# used to hold the argument of --host etc. +# FIXME: To remove some day. +build=$build_alias +host=$host_alias +target=$target_alias + +# FIXME: To remove some day. +if test "x$host_alias" != x; then + if test "x$build_alias" = x; then + cross_compiling=maybe + echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. + If a cross compiler is detected then cross compile mode will be used." >&2 + elif test "x$build_alias" != "x$host_alias"; then + cross_compiling=yes + fi +fi + +ac_tool_prefix= +test -n "$host_alias" && ac_tool_prefix=$host_alias- + +test "$silent" = yes && exec 6>/dev/null + + +ac_pwd=`pwd` && test -n "$ac_pwd" && +ac_ls_di=`ls -di .` && +ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || + { echo "$as_me: error: Working directory cannot be determined" >&2 + { (exit 1); exit 1; }; } +test "X$ac_ls_di" = "X$ac_pwd_ls_di" || + { echo "$as_me: error: pwd does not report name of working directory" >&2 + { (exit 1); exit 1; }; } + + +# Find the source files, if location was not specified. +if test -z "$srcdir"; then + ac_srcdir_defaulted=yes + # Try the directory containing this script, then the parent directory. + ac_confdir=`$as_dirname -- "$0" || +$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$0" : 'X\(//\)[^/]' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +echo X"$0" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + srcdir=$ac_confdir + if test ! -r "$srcdir/$ac_unique_file"; then + srcdir=.. + fi +else + ac_srcdir_defaulted=no +fi +if test ! -r "$srcdir/$ac_unique_file"; then + test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." + { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 + { (exit 1); exit 1; }; } +fi +ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" +ac_abs_confdir=`( + cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2 + { (exit 1); exit 1; }; } + pwd)` +# When building in place, set srcdir=. +if test "$ac_abs_confdir" = "$ac_pwd"; then + srcdir=. +fi +# Remove unnecessary trailing slashes from srcdir. +# Double slashes in file names in object file debugging info +# mess up M-x gdb in Emacs. +case $srcdir in +*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; +esac +for ac_var in $ac_precious_vars; do + eval ac_env_${ac_var}_set=\${${ac_var}+set} + eval ac_env_${ac_var}_value=\$${ac_var} + eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} + eval ac_cv_env_${ac_var}_value=\$${ac_var} +done + +# +# Report the --help message. +# +if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +\`configure' configures this package to adapt to many kinds of systems. + +Usage: $0 [OPTION]... [VAR=VALUE]... + +To assign environment variables (e.g., CC, CFLAGS...), specify them as +VAR=VALUE. See below for descriptions of some of the useful variables. + +Defaults for the options are specified in brackets. + +Configuration: + -h, --help display this help and exit + --help=short display options specific to this package + --help=recursive display the short help of all the included packages + -V, --version display version information and exit + -q, --quiet, --silent do not print \`checking...' messages + --cache-file=FILE cache test results in FILE [disabled] + -C, --config-cache alias for \`--cache-file=config.cache' + -n, --no-create do not create output files + --srcdir=DIR find the sources in DIR [configure dir or \`..'] + +Installation directories: + --prefix=PREFIX install architecture-independent files in PREFIX + [$ac_default_prefix] + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX + [PREFIX] + +By default, \`make install' will install all the files in +\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify +an installation prefix other than \`$ac_default_prefix' using \`--prefix', +for instance \`--prefix=\$HOME'. + +For better control, use the options below. + +Fine tuning of the installation directories: + --bindir=DIR user executables [EPREFIX/bin] + --sbindir=DIR system admin executables [EPREFIX/sbin] + --libexecdir=DIR program executables [EPREFIX/libexec] + --sysconfdir=DIR read-only single-machine data [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] + --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --libdir=DIR object code libraries [EPREFIX/lib] + --includedir=DIR C header files [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc [/usr/include] + --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] + --datadir=DIR read-only architecture-independent data [DATAROOTDIR] + --infodir=DIR info documentation [DATAROOTDIR/info] + --localedir=DIR locale-dependent data [DATAROOTDIR/locale] + --mandir=DIR man documentation [DATAROOTDIR/man] + --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE] + --htmldir=DIR html documentation [DOCDIR] + --dvidir=DIR dvi documentation [DOCDIR] + --pdfdir=DIR pdf documentation [DOCDIR] + --psdir=DIR ps documentation [DOCDIR] +_ACEOF + + cat <<\_ACEOF +_ACEOF +fi + +if test -n "$ac_init_help"; then + + cat <<\_ACEOF + +Optional Features: + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] +--enable-test tests current settings rather than defining new ones +--enable-extension=<ext> + +Optional Packages: + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --with-boost=DIR path to the boost main tree + +Some influential environment variables: + CXX C++ compiler command + CXXFLAGS C++ compiler flags + LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a + nonstandard directory <lib dir> + LIBS libraries to pass to the linker, e.g. -l<library> + CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I<include dir> if + you have headers in a nonstandard directory <include dir> + +Use these variables to override the choices made by `configure' or to help +it to find libraries and programs with nonstandard names/locations. + +_ACEOF +ac_status=$? +fi + +if test "$ac_init_help" = "recursive"; then + # If there are subdirs, report their specific --help. + for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue + test -d "$ac_dir" || continue + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + cd "$ac_dir" || { ac_status=$?; continue; } + # Check for guested configure. + if test -f "$ac_srcdir/configure.gnu"; then + echo && + $SHELL "$ac_srcdir/configure.gnu" --help=recursive + elif test -f "$ac_srcdir/configure"; then + echo && + $SHELL "$ac_srcdir/configure" --help=recursive + else + echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 + fi || ac_status=$? + cd "$ac_pwd" || { ac_status=$?; break; } + done +fi + +test -n "$ac_init_help" && exit $ac_status +if $ac_init_version; then + cat <<\_ACEOF +configure +generated by GNU Autoconf 2.61 + +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +This configure script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it. +_ACEOF + exit +fi +cat >config.log <<_ACEOF +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by $as_me, which was +generated by GNU Autoconf 2.61. Invocation command line was + + $ $0 $@ + +_ACEOF +exec 5>>config.log +{ +cat <<_ASUNAME +## --------- ## +## Platform. ## +## --------- ## + +hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` +uname -m = `(uname -m) 2>/dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` + +/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` +/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` +/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` +/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` + +_ASUNAME + +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + echo "PATH: $as_dir" +done +IFS=$as_save_IFS + +} >&5 + +cat >&5 <<_ACEOF + + +## ----------- ## +## Core tests. ## +## ----------- ## + +_ACEOF + + +# Keep a trace of the command line. +# Strip out --no-create and --no-recursion so they do not pile up. +# Strip out --silent because we don't want to record it for future runs. +# Also quote any args containing shell meta-characters. +# Make two passes to allow for proper duplicate-argument suppression. +ac_configure_args= +ac_configure_args0= +ac_configure_args1= +ac_must_keep_next=false +for ac_pass in 1 2 +do + for ac_arg + do + case $ac_arg in + -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + continue ;; + *\'*) + ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + case $ac_pass in + 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; + 2) + ac_configure_args1="$ac_configure_args1 '$ac_arg'" + if test $ac_must_keep_next = true; then + ac_must_keep_next=false # Got value, back to normal. + else + case $ac_arg in + *=* | --config-cache | -C | -disable-* | --disable-* \ + | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ + | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ + | -with-* | --with-* | -without-* | --without-* | --x) + case "$ac_configure_args0 " in + "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; + esac + ;; + -* ) ac_must_keep_next=true ;; + esac + fi + ac_configure_args="$ac_configure_args '$ac_arg'" + ;; + esac + done +done +$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } +$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } + +# When interrupted or exit'd, cleanup temporary files, and complete +# config.log. We remove comments because anyway the quotes in there +# would cause problems or look ugly. +# WARNING: Use '\'' to represent an apostrophe within the trap. +# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. +trap 'exit_status=$? + # Save into config.log some information that might help in debugging. + { + echo + + cat <<\_ASBOX +## ---------------- ## +## Cache variables. ## +## ---------------- ## +_ASBOX + echo + # The following way of writing the cache mishandles newlines in values, +( + for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 +echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + *) $as_unset $ac_var ;; + esac ;; + esac + done + (set) 2>&1 | + case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + sed -n \ + "s/'\''/'\''\\\\'\'''\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" + ;; #( + *) + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) + echo + + cat <<\_ASBOX +## ----------------- ## +## Output variables. ## +## ----------------- ## +_ASBOX + echo + for ac_var in $ac_subst_vars + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + echo "$ac_var='\''$ac_val'\''" + done | sort + echo + + if test -n "$ac_subst_files"; then + cat <<\_ASBOX +## ------------------- ## +## File substitutions. ## +## ------------------- ## +_ASBOX + echo + for ac_var in $ac_subst_files + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + echo "$ac_var='\''$ac_val'\''" + done | sort + echo + fi + + if test -s confdefs.h; then + cat <<\_ASBOX +## ----------- ## +## confdefs.h. ## +## ----------- ## +_ASBOX + echo + cat confdefs.h + echo + fi + test "$ac_signal" != 0 && + echo "$as_me: caught signal $ac_signal" + echo "$as_me: exit $exit_status" + } >&5 + rm -f core *.core core.conftest.* && + rm -f -r conftest* confdefs* conf$$* $ac_clean_files && + exit $exit_status +' 0 +for ac_signal in 1 2 13 15; do + trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal +done +ac_signal=0 + +# confdefs.h avoids OS command line length limits that DEFS can exceed. +rm -f -r conftest* confdefs.h + +# Predefined preprocessor variables. + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_NAME "$PACKAGE_NAME" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_TARNAME "$PACKAGE_TARNAME" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_VERSION "$PACKAGE_VERSION" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_STRING "$PACKAGE_STRING" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" +_ACEOF + + +# Let the site file select an alternate cache file if it wants to. +# Prefer explicitly selected file to automatically selected ones. +if test -n "$CONFIG_SITE"; then + set x "$CONFIG_SITE" +elif test "x$prefix" != xNONE; then + set x "$prefix/share/config.site" "$prefix/etc/config.site" +else + set x "$ac_default_prefix/share/config.site" \ + "$ac_default_prefix/etc/config.site" +fi +shift +for ac_site_file +do + if test -r "$ac_site_file"; then + { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 +echo "$as_me: loading site script $ac_site_file" >&6;} + sed 's/^/| /' "$ac_site_file" >&5 + . "$ac_site_file" + fi +done + + +# Check that the precious variables saved in the cache have kept the same +# value. +ac_cache_corrupted=false +for ac_var in $ac_precious_vars; do + eval ac_old_set=\$ac_cv_env_${ac_var}_set + eval ac_new_set=\$ac_env_${ac_var}_set + eval ac_old_val=\$ac_cv_env_${ac_var}_value + eval ac_new_val=\$ac_env_${ac_var}_value + case $ac_old_set,$ac_new_set in + set,) + { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,set) + { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 +echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,);; + *) + if test "x$ac_old_val" != "x$ac_new_val"; then + { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 +echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 +echo "$as_me: former value: $ac_old_val" >&2;} + { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 +echo "$as_me: current value: $ac_new_val" >&2;} + ac_cache_corrupted=: + fi;; + esac + # Pass precious variables to config.status. + if test "$ac_new_set" = set; then + case $ac_new_val in + *\'*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *) ac_arg=$ac_var=$ac_new_val ;; + esac + case " $ac_configure_args " in + *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. + *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; + esac + fi +done +if $ac_cache_corrupted; then + { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 +echo "$as_me: error: changes in the environment can compromise the build" >&2;} + { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 +echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} + { (exit 1); exit 1; }; } +fi + + + + + + + + + + + + + + + + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + + +# Check whether --enable-test was given. +if test "${enable_test+set}" = set; then + enableval=$enable_test; +fi + + +if test "foo"$enable_test = "foo"; then + enable_test="no" +fi + +cat << EOF +*** $0: boost configuration utility *** + +Please stand by while exploring compiler capabilities... +Be patient - this could take some time... + +Note that this test script only gives an approximate +configuration - you will need to test the results carefully +using the boost regression test suite before using the results. +EOF + +if test $enable_test = 'yes'; then + +cat << EOF + +This script reports only the difference between the detected +configuration, and the existing boost configuration. Its +primary aim is to quickly report how well boost is configured +for one compiler. + +*** + +EOF + +else + +cat << EOF + +*** + +EOF +fi + +# Check whether --enable-extension was given. +if test "${enable_extension+set}" = set; then + enableval=$enable_extension; +case "$enableval" in + no) { echo "$as_me:$LINENO: result: Info :.cpp used as extension for tests" >&5 +echo "${ECHO_T}Info :.cpp used as extension for tests" >&6; } + ac_ext=cpp + ;; + *) { echo "$as_me:$LINENO: result: Argument : .$enableval used as extension" >&5 +echo "${ECHO_T}Argument : .$enableval used as extension" >&6; } + ac_ext=$enableval +esac + +else + { echo "$as_me:$LINENO: result: Info : .cpp used as extension for tests" >&5 +echo "${ECHO_T}Info : .cpp used as extension for tests" >&6; } + ac_ext=cpp + + +fi + + + +if test -f /bin/sed ; then + SED=/bin/sed +else + if test -f /usr/bin/sed ; then + SED=/usr/bin/sed + else + SED=sed + fi +fi + +{ echo "$as_me:$LINENO: checking for boost main tree" >&5 +echo $ECHO_N "checking for boost main tree... $ECHO_C" >&6; } +boost_base= + +# Check whether --with-boost was given. +if test "${with_boost+set}" = set; then + withval=$with_boost; + #echo "--with boost is set" + if test "x$withval" != "x"; then + if test "x$withval" != no; then + boost_base=`echo "$withval" | $SED 's,//*,/,g' | $SED 's,/$,,'` + #echo boost_base=$boost_base + if test -f "$boost_base/boost/config.hpp"; then + if test -f "$boost_base/libs/config/configure"; then :; else + boost_base= + #echo "$boost_base/libs/config/configure" not found + fi + else + #echo "$boost_base/boost/config.hpp" not found + boost_base= + fi + fi + fi + + +fi + +if test "x$boost_base" = "x"; then + #echo '$0 = ' $0 + boost_base=`expr "x$0" : 'x\(.*\)/[/]*' \| '.'` + boost_base="$boost_base/../.." + #echo boost_base=$boost_base + if test -f "$boost_base/boost/config.hpp"; then + if test -f "$boost_base/libs/config/configure"; then :; else + boost_base= + fi + else + boost_base= + fi +fi +if test "x$boost_base" != "x"; then + { echo "$as_me:$LINENO: result: $boost_base" >&5 +echo "${ECHO_T}$boost_base" >&6; } +else + { echo "$as_me:$LINENO: result: not found" >&5 +echo "${ECHO_T}not found" >&6; } + { { echo "$as_me:$LINENO: error: The boost main tree was not found. + Specify its location by the --with-boost option." >&5 +echo "$as_me: error: The boost main tree was not found. + Specify its location by the --with-boost option." >&2;} + { (exit 1); exit 1; }; } +fi + + + +# Save that, as it is being redefined several times +use_ac_ext=$ac_ext + +ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu +if test -z "$CXX"; then + if test -n "$CCC"; then + CXX=$CCC + else + if test -n "$ac_tool_prefix"; then + for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_prog_CXX+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$CXX"; then + ac_cv_prog_CXX="$CXX" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +CXX=$ac_cv_prog_CXX +if test -n "$CXX"; then + { echo "$as_me:$LINENO: result: $CXX" >&5 +echo "${ECHO_T}$CXX" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + + test -n "$CXX" && break + done +fi +if test -z "$CXX"; then + ac_ct_CXX=$CXX + for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$ac_ct_CXX"; then + ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_CXX="$ac_prog" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +ac_ct_CXX=$ac_cv_prog_ac_ct_CXX +if test -n "$ac_ct_CXX"; then + { echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5 +echo "${ECHO_T}$ac_ct_CXX" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + + test -n "$ac_ct_CXX" && break +done + + if test "x$ac_ct_CXX" = x; then + CXX="g++" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac + CXX=$ac_ct_CXX + fi +fi + + fi +fi +# Provide some information about the compiler. +echo "$as_me:$LINENO: checking for C++ compiler version" >&5 +ac_compiler=`set X $ac_compile; echo $2` +{ (ac_try="$ac_compiler --version >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler --version >&5") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } +{ (ac_try="$ac_compiler -v >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler -v >&5") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } +{ (ac_try="$ac_compiler -V >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler -V >&5") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files a.out a.exe b.out" +# Try to create an executable without -o first, disregard a.out. +# It will help us diagnose broken compilers, and finding out an intuition +# of exeext. +{ echo "$as_me:$LINENO: checking for C++ compiler default output file name" >&5 +echo $ECHO_N "checking for C++ compiler default output file name... $ECHO_C" >&6; } +ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` +# +# List of possible output files, starting from the most likely. +# The algorithm is not robust to junk in `.', hence go to wildcards (a.*) +# only as a last resort. b.out is created by i960 compilers. +ac_files='a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out' +# +# The IRIX 6 linker writes into existing files which may not be +# executable, retaining their permissions. Remove them first so a +# subsequent execution test works. +ac_rmfiles= +for ac_file in $ac_files +do + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; + * ) ac_rmfiles="$ac_rmfiles $ac_file";; + esac +done +rm -f $ac_rmfiles + +if { (ac_try="$ac_link_default" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link_default") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. +# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' +# in a Makefile. We should not override ac_cv_exeext if it was cached, +# so that the user can short-circuit this test for compilers unknown to +# Autoconf. +for ac_file in $ac_files '' +do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) + ;; + [ab].out ) + # We found the default executable, but exeext='' is most + # certainly right. + break;; + *.* ) + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + then :; else + ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + fi + # We set ac_cv_exeext here because the later test for it is not + # safe: cross compilers may not add the suffix if given an `-o' + # argument, so we may need to know it at that point already. + # Even if this section looks crufty: it has the advantage of + # actually working. + break;; + * ) + break;; + esac +done +test "$ac_cv_exeext" = no && ac_cv_exeext= + +else + ac_file='' +fi + +{ echo "$as_me:$LINENO: result: $ac_file" >&5 +echo "${ECHO_T}$ac_file" >&6; } +if test -z "$ac_file"; then + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { echo "$as_me:$LINENO: error: C++ compiler cannot create executables +See \`config.log' for more details." >&5 +echo "$as_me: error: C++ compiler cannot create executables +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; } +fi + +ac_exeext=$ac_cv_exeext + +# Check that the compiler produces executables we can run. If not, either +# the compiler is broken, or we cross compile. +{ echo "$as_me:$LINENO: checking whether the C++ compiler works" >&5 +echo $ECHO_N "checking whether the C++ compiler works... $ECHO_C" >&6; } +# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 +# If not cross compiling, check that we can run a simple program. +if test "$cross_compiling" != yes; then + if { ac_try='./$ac_file' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + cross_compiling=no + else + if test "$cross_compiling" = maybe; then + cross_compiling=yes + else + { { echo "$as_me:$LINENO: error: cannot run C++ compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run C++ compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } + fi + fi +fi +{ echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } + +rm -f a.out a.exe conftest$ac_cv_exeext b.out +ac_clean_files=$ac_clean_files_save +# Check that the compiler produces executables we can run. If not, either +# the compiler is broken, or we cross compile. +{ echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 +echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6; } +{ echo "$as_me:$LINENO: result: $cross_compiling" >&5 +echo "${ECHO_T}$cross_compiling" >&6; } + +{ echo "$as_me:$LINENO: checking for suffix of executables" >&5 +echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6; } +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + # If both `conftest.exe' and `conftest' are `present' (well, observable) +# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will +# work properly (i.e., refer to `conftest.exe'), while it won't with +# `rm'. +for ac_file in conftest.exe conftest conftest.*; do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; + *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + break;; + * ) break;; + esac +done +else + { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +fi + +rm -f conftest$ac_cv_exeext +{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 +echo "${ECHO_T}$ac_cv_exeext" >&6; } + +rm -f conftest.$ac_ext +EXEEXT=$ac_cv_exeext +ac_exeext=$EXEEXT +{ echo "$as_me:$LINENO: checking for suffix of object files" >&5 +echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; } +if test "${ac_cv_objext+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.o conftest.obj +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + for ac_file in conftest.o conftest.obj conftest.*; do + test -f "$ac_file" || continue; + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf ) ;; + *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` + break;; + esac +done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute suffix of object files: cannot compile +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +fi + +rm -f conftest.$ac_cv_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 +echo "${ECHO_T}$ac_cv_objext" >&6; } +OBJEXT=$ac_cv_objext +ac_objext=$OBJEXT +{ echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5 +echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6; } +if test "${ac_cv_cxx_compiler_gnu+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ +#ifndef __GNUC__ + choke me +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_compiler_gnu=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_compiler_gnu=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +ac_cv_cxx_compiler_gnu=$ac_compiler_gnu + +fi +{ echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5 +echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6; } +GXX=`test $ac_compiler_gnu = yes && echo yes` +ac_test_CXXFLAGS=${CXXFLAGS+set} +ac_save_CXXFLAGS=$CXXFLAGS +{ echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 +echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6; } +if test "${ac_cv_prog_cxx_g+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_save_cxx_werror_flag=$ac_cxx_werror_flag + ac_cxx_werror_flag=yes + ac_cv_prog_cxx_g=no + CXXFLAGS="-g" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cxx_g=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + CXXFLAGS="" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cxx_werror_flag=$ac_save_cxx_werror_flag + CXXFLAGS="-g" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cxx_g=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cxx_werror_flag=$ac_save_cxx_werror_flag +fi +{ echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5 +echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6; } +if test "$ac_test_CXXFLAGS" = set; then + CXXFLAGS=$ac_save_CXXFLAGS +elif test $ac_cv_prog_cxx_g = yes; then + if test "$GXX" = yes; then + CXXFLAGS="-g -O2" + else + CXXFLAGS="-g" + fi +else + if test "$GXX" = yes; then + CXXFLAGS="-O2" + else + CXXFLAGS= + fi +fi +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +ac_ext=$use_ac_ext + +ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + + +OLD_CXXFLAGS="$CXXFLAGS" + + +if test $enable_test = 'yes'; then + CXXFLAGS="-I$boost_base -I$boost_base/libs/config/test $CXXFLAGS" +else + CXXFLAGS="-I$boost_base -I$boost_base/libs/config/test $CXXFLAGS -DBOOST_NO_CONFIG" +fi + +# add the -AA conformance option to CXXFLAGS for HP aCC only +if test $CXX = 'aCC'; then + CXXFLAGS="-AA $CXXFLAGS" +fi + + + + +{ echo "$as_me:$LINENO: checking for pthread_exit in -lpthread" >&5 +echo $ECHO_N "checking for pthread_exit in -lpthread... $ECHO_C" >&6; } +if test "${ac_cv_lib_pthread_pthread_exit+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lpthread $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_exit (); +int +main () +{ +return pthread_exit (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + ac_cv_lib_pthread_pthread_exit=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_pthread_pthread_exit=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ echo "$as_me:$LINENO: result: $ac_cv_lib_pthread_pthread_exit" >&5 +echo "${ECHO_T}$ac_cv_lib_pthread_pthread_exit" >&6; } +if test $ac_cv_lib_pthread_pthread_exit = yes; then + cat >>confdefs.h <<_ACEOF +#define HAVE_LIBPTHREAD 1 +_ACEOF + + LIBS="-lpthread $LIBS" + +fi + + +{ echo "$as_me:$LINENO: checking for cos in -lm" >&5 +echo $ECHO_N "checking for cos in -lm... $ECHO_C" >&6; } +if test "${ac_cv_lib_m_cos+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lm $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char cos (); +int +main () +{ +return cos (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + ac_cv_lib_m_cos=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_m_cos=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ echo "$as_me:$LINENO: result: $ac_cv_lib_m_cos" >&5 +echo "${ECHO_T}$ac_cv_lib_m_cos" >&6; } +if test $ac_cv_lib_m_cos = yes; then + cat >>confdefs.h <<_ACEOF +#define HAVE_LIBM 1 +_ACEOF + + LIBS="-lm $LIBS" + +fi + + +{ echo "$as_me:$LINENO: checking for clock in -lrt" >&5 +echo $ECHO_N "checking for clock in -lrt... $ECHO_C" >&6; } +if test "${ac_cv_lib_rt_clock+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lrt $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char clock (); +int +main () +{ +return clock (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + ac_cv_lib_rt_clock=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_rt_clock=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ echo "$as_me:$LINENO: result: $ac_cv_lib_rt_clock" >&5 +echo "${ECHO_T}$ac_cv_lib_rt_clock" >&6; } +if test $ac_cv_lib_rt_clock = yes; then + cat >>confdefs.h <<_ACEOF +#define HAVE_LIBRT 1 +_ACEOF + + LIBS="-lrt $LIBS" + +fi + + +# +# enumerate test files and test each one: +# +for file in $boost_base/libs/config/test/boost_no*.ipp; do + + basename=`echo $file | $SED 's/.*boost_\(.*\)\.ipp/\1/'` + macroname=`cat $file | grep '^//[ ]*MACRO:' | $SED 's/.*MACRO:[ ]*\([_A-Z0-9]*\).*/\1/'` + title=`cat $file | grep '^//[ ]*TITLE:' | $SED 's/.*TITLE:[ ]*\([^ ].*\)/\1/'` + namespace=`echo $macroname | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` + +#echo file = $file +#echo basename = $basename +#echo macroname = $macroname +#echo title = $title +#echo namespace = $namespace + + ac_ext=$use_ac_ext + if test $enable_test = 'yes'; then + { echo "$as_me:$LINENO: checking $title (pass expected) " >&5 +echo $ECHO_N "checking $title (pass expected) ... $ECHO_C" >&6; } + else + { echo "$as_me:$LINENO: checking $title " >&5 +echo $ECHO_N "checking $title ... $ECHO_C" >&6; } + fi + if test "$cross_compiling" = yes; then + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include <boost/config.hpp> +#include "test.hpp" + +#if !defined($macroname) || defined(BOOST_NO_CONFIG) +#include "boost_$basename.ipp" +#else +namespace ${namespace} = empty_boost; +#endif + +int main(){ return ${namespace}::test(); } + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + { echo "$as_me:$LINENO: result: OK" >&5 +echo "${ECHO_T}OK" >&6; } + +else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +{ echo "$as_me:$LINENO: result: Failed" >&5 +echo "${ECHO_T}Failed" >&6; } + required_defs="$macroname $required_defs" + +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + + if test $enable_test = 'yes'; then + + ac_ext=$use_ac_ext + { echo "$as_me:$LINENO: checking $title (fail expected) " >&5 +echo $ECHO_N "checking $title (fail expected) ... $ECHO_C" >&6; } + if test "$cross_compiling" = yes; then + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include <boost/config.hpp> +#include "test.hpp" + +#ifdef $macroname +#include "boost_$basename.ipp" +#else +#error "this file should not compile" +#endif + +int main() { return ${namespace}::test(); } + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + { echo "$as_me:$LINENO: result: failed" >&5 +echo "${ECHO_T}failed" >&6; } + required_undefs="$macroname $required_undefs" + +else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +{ echo "$as_me:$LINENO: result: OK" >&5 +echo "${ECHO_T}OK" >&6; } + +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + + fi + +done + +# +# enumerate optional test files and test each one: +# +for file in $boost_base/libs/config/test/boost_has*.ipp; do + + basename=`echo $file | $SED 's/.*boost_\(.*\)\.ipp/\1/'` + macroname=`cat $file | grep '^//[ ]*MACRO:' | $SED 's/.*MACRO:[ ]*\([_A-Z0-9]*\).*/\1/'` + title=`cat $file | grep '^//[ ]*TITLE:' | $SED 's/.*TITLE:[ ]*\([^ ].*\)/\1/'` + namespace=`echo $macroname | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` + +# echo $file +# echo $basename +# echo $macroname +# echo $title + + ac_ext=$use_ac_ext + if test $enable_test = 'yes'; then + { echo "$as_me:$LINENO: checking $title (pass expected) " >&5 +echo $ECHO_N "checking $title (pass expected) ... $ECHO_C" >&6; } + if test "$cross_compiling" = yes; then + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include <boost/config.hpp> +#include "test.hpp" + +#ifdef $macroname +#include "boost_$basename.ipp" +#else +namespace ${namespace} = empty_boost; +#endif + +int main(){ return ${namespace}::test(); } + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + { echo "$as_me:$LINENO: result: OK" >&5 +echo "${ECHO_T}OK" >&6; } + +else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +{ echo "$as_me:$LINENO: result: Failed" >&5 +echo "${ECHO_T}Failed" >&6; } + required_undefs="$macroname $required_undefs" + +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + + { echo "$as_me:$LINENO: checking $title (fail expected) " >&5 +echo $ECHO_N "checking $title (fail expected) ... $ECHO_C" >&6; } + if test "$cross_compiling" = yes; then + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include <boost/config.hpp> +#include "test.hpp" + +#ifndef $macroname +#include "boost_$basename.ipp" +#else +#error "this file should not compile" +#endif + +int main(){ return ${namespace}::test(); } + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + + { echo "$as_me:$LINENO: result: failed" >&5 +echo "${ECHO_T}failed" >&6; } + required_defs="$macroname $required_defs" + + +else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) + + { echo "$as_me:$LINENO: result: OK" >&5 +echo "${ECHO_T}OK" >&6; } + + +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + + else + + ac_ext=$use_ac_ext + { echo "$as_me:$LINENO: checking $title" >&5 +echo $ECHO_N "checking $title... $ECHO_C" >&6; } + if test "$cross_compiling" = yes; then + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include <boost/config.hpp> +#include "test.hpp" + +#include "boost_$basename.ipp" + +int main(){ return ${namespace}::test(); } + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + + { echo "$as_me:$LINENO: result: Yes" >&5 +echo "${ECHO_T}Yes" >&6; } + required_defs="$macroname $required_defs" + + +else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) + + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } + + +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + + fi + +done + + +#echo $required_defs +#echo $required_undefs + +if test $enable_test = 'yes'; then + +if test "$required_defs" = ""; then +echo no boost macros need to be defined +echo no boost macros need to be defined >&5 +else +echo the following macros need to be defined +echo $required_defs +echo the following macros need to be defined >&5 +echo $required_defs >&5 +fi +if test "$required_undefs" = ""; then +echo no boost macros need to be undefined +echo no boost macros need to be undefined >&5 +else +echo "the following macros need to be undef'ed" +echo $required_undefs +echo "the following macros need to be undef'ed" >&5 +echo $required_undefs >&5 +fi + +else + +date_string=`date` + +echo boost_base=$boost_base + +cat > user.hpp << EOF +// (C) Copyright Boost.org 2001. +// Do not check in modified versions of this file, +// This file may be customised by the end user, but not by boost. + +// +// Use this file to define a site and compiler specific +// configuration policy, this version was auto-generated by +// configure on ${date_string} +// With the following options: +// CXX = ${CXX} +// CXXFLAGS = ${CXXFLAGS} +// LDFLAGS = ${LDFLAGS} +// LIBS = ${LIBS} +// + +// define this to disable all config options, +// excluding the user config. Use if your +// setup is fully ISO complient, and has no +// useful extentions, or for autoconf generated +// setups: +#ifndef BOOST_NO_CONFIG +# define BOOST_NO_CONFIG +#endif + + +// define if you want to disable threading support, even +// when available: +// #define BOOST_DISABLE_THREADS + +// define if you want the regex library to use the C locale +// even on Win32: +// #define BOOST_REGEX_USE_C_LOCALE + +// define this is you want the regex library to use the C++ +// locale: +// #define BOOST_REGEX_USE_CPP_LOCALE + + +// +// options added by configure: +// +EOF + +for name in $required_defs; do +echo '#define '"$name" >> user.hpp +done + +cat_conts=`cat user.hpp` + +# +# post configuration step: +# +{ echo "$as_me:$LINENO: checking original configuration " >&5 +echo $ECHO_N "checking original configuration ... $ECHO_C" >&6; } +rm -f conftest$ac_exeext +$CXX -I$boost_base $OLD_CXXFLAGS -DBOOST_NO_USER_CONFIG -o conftest$ac_exeext $LDFLAGS $boost_base/libs/config/test/config_info.cpp $LIBS >&5 2>&1 +./conftest >&5 2>&1 +{ echo "$as_me:$LINENO: result: done" >&5 +echo "${ECHO_T}done" >&6; } +{ echo "$as_me:$LINENO: checking new configuration " >&5 +echo $ECHO_N "checking new configuration ... $ECHO_C" >&6; } +rm -f conftest$ac_exeext +$CXX -I$boost_base -I$boost_base/libs/config $OLD_CXXFLAGS -DBOOST_USER_CONFIG='"user.hpp"' -o conftest$ac_exeext $LDFLAGS $boost_base/libs/config/test/config_info.cpp $LIBS >&5 2>&1 +./conftest >&5 2>&1 +{ echo "$as_me:$LINENO: result: done" >&5 +echo "${ECHO_T}done" >&6; } + +ac_config_commands="$ac_config_commands default" + + + +test "x$prefix" = xNONE && prefix=$ac_default_prefix +# Let make expand exec_prefix. +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + +# Transform confdefs.h into DEFS. +# Protect against shell expansion while executing Makefile rules. +# Protect against Makefile macro expansion. +# +# If the first sed substitution is executed (which looks for macros that +# take arguments), then branch to the quote section. Otherwise, +# look for a macro that doesn't take arguments. +ac_script=' +t clear +:clear +s/^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\)/-D\1=\2/g +t quote +s/^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)/-D\1=\2/g +t quote +b any +:quote +s/[ `~#$^&*(){}\\|;'\''"<>?]/\\&/g +s/\[/\\&/g +s/\]/\\&/g +s/\$/$$/g +H +:any +${ + g + s/^\n// + s/\n/ /g + p +} +' +DEFS=`sed -n "$ac_script" confdefs.h` + + +ac_libobjs= +ac_ltlibobjs= +for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue + # 1. Remove the extension, and $U if already installed. + ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' + ac_i=`echo "$ac_i" | sed "$ac_script"` + # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR + # will be set to the directory where LIBOBJS objects are built. + ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext" + ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo' +done +LIBOBJS=$ac_libobjs + +LTLIBOBJS=$ac_ltlibobjs + + + +: ${CONFIG_STATUS=./config.status} +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files $CONFIG_STATUS" +{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 +echo "$as_me: creating $CONFIG_STATUS" >&6;} +cat >$CONFIG_STATUS <<_ACEOF +#! $SHELL +# Generated by $as_me. +# Run this file to recreate the current configuration. +# Compiler output produced by configure, useful for debugging +# configure, is in config.log if it exists. + +debug=false +ac_cs_recheck=false +ac_cs_silent=false +SHELL=\${CONFIG_SHELL-$SHELL} +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF +## --------------------- ## +## M4sh Initialization. ## +## --------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + + + +# PATH needs CR +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + +# Support unset when possible. +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + as_unset=unset +else + as_unset=false +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +as_nl=' +' +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + { (exit 1); exit 1; } +fi + +# Work around bugs in pre-3.0 UWIN ksh. +for as_var in ENV MAIL MAILPATH +do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +for as_var in \ + LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ + LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ + LC_TELEPHONE LC_TIME +do + if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then + eval $as_var=C; export $as_var + else + ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var + fi +done + +# Required to use basename. +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + + +# Name of the executable. +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# CDPATH. +$as_unset CDPATH + + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { + + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO + # uniformly replaced by the line number. The first 'sed' inserts a + # line-number line after each line using $LINENO; the second 'sed' + # does the real work. The second script uses 'N' to pair each + # line-number line with the line containing $LINENO, and appends + # trailing '-' during substitution so that $LINENO is not a special + # case at line end. + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the + # scripts with optimization help from Paolo Bonzini. Blame Lee + # E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | + sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno + N + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ + t loop + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || + { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" + # Exit status is that of the last command. + exit +} + + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in +-n*) + case `echo 'x\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + *) ECHO_C='\c';; + esac;; +*) + ECHO_N='-n';; +esac + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir +fi +echo >conf$$.file +if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' +elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln +else + as_ln_s='cp -p' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + +if mkdir -p . 2>/dev/null; then + as_mkdir_p=: +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +exec 6>&1 + +# Save the log message, to keep $[0] and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. +ac_log=" +This file was extended by $as_me, which was +generated by GNU Autoconf 2.61. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + +_ACEOF + +cat >>$CONFIG_STATUS <<_ACEOF +# Files that config.status was made for. +config_commands="$ac_config_commands" + +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF +ac_cs_usage="\ +\`$as_me' instantiates files from templates according to the +current configuration. + +Usage: $0 [OPTIONS] [FILE]... + + -h, --help print this help, then exit + -V, --version print version number and configuration settings, then exit + -q, --quiet do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions + +Configuration commands: +$config_commands + +Report bugs to <bug-autoconf@gnu.org>." + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF +ac_cs_version="\\ +config.status +configured by $0, generated by GNU Autoconf 2.61, + with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" + +Copyright (C) 2006 Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." + +ac_pwd='$ac_pwd' +srcdir='$srcdir' +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF +# If no file are specified by the user, then we need to provide default +# value. By we need to know if files were specified by the user. +ac_need_defaults=: +while test $# != 0 +do + case $1 in + --*=*) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` + ac_shift=: + ;; + *) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + esac + + case $ac_option in + # Handling of the options. + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + echo "$ac_cs_version"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) + debug=: ;; + --he | --h | --help | --hel | -h ) + echo "$ac_cs_usage"; exit ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) { echo "$as_me: error: unrecognized option: $1 +Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; } ;; + + *) ac_config_targets="$ac_config_targets $1" + ac_need_defaults=false ;; + + esac + shift +done + +ac_configure_extra_args= + +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF +if \$ac_cs_recheck; then + echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 + CONFIG_SHELL=$SHELL + export CONFIG_SHELL + exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion +fi + +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX + echo "$ac_log" +} >&5 + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF +# +# INIT-COMMANDS +# + +cat_conts="$cat_conts" + + + +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF + +# Handling of arguments. +for ac_config_target in $ac_config_targets +do + case $ac_config_target in + "default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;; + + *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 +echo "$as_me: error: invalid argument: $ac_config_target" >&2;} + { (exit 1); exit 1; }; };; + esac +done + + +# If the user did not use the arguments to specify the items to instantiate, +# then the envvar interface is used. Set only those that are not. +# We use the long form for the default assignment because of an extremely +# bizarre bug on SunOS 4.1.3. +if $ac_need_defaults; then + test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands +fi + +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason against having it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. +$debug || +{ + tmp= + trap 'exit_status=$? + { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status +' 0 + trap '{ (exit 1); exit 1; }' 1 2 13 15 +} +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && + test -n "$tmp" && test -d "$tmp" +} || +{ + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") +} || +{ + echo "$me: cannot create a temporary directory in ." >&2 + { (exit 1); exit 1; } +} + + +for ac_tag in :C $CONFIG_COMMANDS +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5 +echo "$as_me: error: Invalid tag $ac_tag." >&2;} + { (exit 1); exit 1; }; };; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 +echo "$as_me: error: cannot find input file: $ac_f" >&2;} + { (exit 1); exit 1; }; };; + esac + ac_file_inputs="$ac_file_inputs $ac_f" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input="Generated from "`IFS=: + echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure." + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { echo "$as_me:$LINENO: creating $ac_file" >&5 +echo "$as_me: creating $ac_file" >&6;} + fi + + case $ac_tag in + *:-:* | *:-) cat >"$tmp/stdin";; + esac + ;; + esac + + ac_dir=`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + { as_dir="$ac_dir" + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 +echo "$as_me: error: cannot create directory $as_dir" >&2;} + { (exit 1); exit 1; }; }; } + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + + case $ac_mode in + + + + :C) { echo "$as_me:$LINENO: executing $ac_file commands" >&5 +echo "$as_me: executing $ac_file commands" >&6;} + ;; + esac + + + case $ac_file$ac_mode in + "default":C) +cat > user.hpp << EEEOF +${cat_conts} +EEEOF +cat << EEEOF + +Adjustments to boost configuration have been written to +user.hpp. Copy this to boost/config/user.hpp to use "as is", +or define BOOST_SITE_CONFIG to point to its location. + +TREAT THIS FILE WITH CARE. +Autoconf generated options are not infallible! + +EEEOF + ;; + + esac +done # for ac_tag + + +{ (exit 0); exit 0; } +_ACEOF +chmod +x $CONFIG_STATUS +ac_clean_files=$ac_clean_files_save + + +# configure is writing to config.log, and then calls config.status. +# config.status does its own redirection, appending to config.log. +# Unfortunately, on DOS this fails, as config.log is still kept open +# by configure, so config.status won't be able to write to it; its +# output is simply discarded. So we exec the FD to /dev/null, +# effectively closing config.log, so it can be properly (re)opened and +# appended to by config.status. When coming back to configure, we +# need to make the FD available again. +if test "$no_create" != yes; then + ac_cs_success=: + ac_config_status_args= + test "$silent" = yes && + ac_config_status_args="$ac_config_status_args --quiet" + exec 5>/dev/null + $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false + exec 5>>config.log + # Use ||, not &&, to avoid exiting from the if with $? = 1, which + # would make configure fail if this is the last instruction. + $ac_cs_success || { (exit 1); exit 1; } +fi + + +fi + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/boost/libs/config/index.html b/src/boost/libs/config/index.html new file mode 100644 index 000000000..df7430bd0 --- /dev/null +++ b/src/boost/libs/config/index.html @@ -0,0 +1,15 @@ +<html> + <head> + <meta http-equiv="refresh" content="0; URL=doc/html/index.html"> + </head> + <body> + <P> + Automatic redirection failed, please go to <a href="doc/html/index.html">doc/html/index.html</a>. + </P> + <P>Copyright John Maddock 2001</P> + <P>Distributed under the Boost Software License, Version 1.0. (See accompanying file <A href="../../LICENSE_1_0.txt"> + LICENSE_1_0.txt</A> or copy at <A href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</A>).</P> + </body> +</html> + + diff --git a/src/boost/libs/config/meta/libraries.json b/src/boost/libs/config/meta/libraries.json new file mode 100644 index 000000000..d11777426 --- /dev/null +++ b/src/boost/libs/config/meta/libraries.json @@ -0,0 +1,13 @@ +{ + "key": "config", + "name": "Config", + "description": "Helps Boost library developers adapt to compiler idiosyncrasies; not intended for library users.", + "documentation": "doc/html/index.html", + "category": [ + "workarounds" + ], + "authors": "", + "maintainers": [ + "John Maddock <john -at- johnmaddock.co.uk>" + ] +} diff --git a/src/boost/libs/config/test/CMakeLists.txt b/src/boost/libs/config/test/CMakeLists.txt new file mode 100644 index 000000000..96511ddd5 --- /dev/null +++ b/src/boost/libs/config/test/CMakeLists.txt @@ -0,0 +1,27 @@ +# Copyright 2018 John Maddock +# Distributed under 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 +# +# CAUTION!!!! +# +# This addition to Boost.Config should be considered experimental and is part +# of an ongoing effort to add CMake support Boost-wide. +# +# IT IS HIGHLY LIKELY THAT THIS FILE WILL CHANGE WITHOUT NOTICE!!! +# +# DO NOT REPLY ON THE CONTENTS OF THIS FILE!!! +# +# In particular this is not a comprehensive test suite, just a quick check +# that the root CMakeLists.txt works OK, and a convenience for folks who +# want to import these projects into their IDE. +# +cmake_minimum_required(VERSION 3.5) + +add_subdirectory(.. ${CMAKE_CURRENT_BINARY_DIR}/boost_config) + +add_executable(config_info config_info.cpp) +target_link_libraries(config_info Boost::config) + +add_executable(config_test config_test.cpp) +target_link_libraries(config_test Boost::config) + diff --git a/src/boost/libs/config/test/Jamfile.v2 b/src/boost/libs/config/test/Jamfile.v2 new file mode 100644 index 000000000..5b2a9ad90 --- /dev/null +++ b/src/boost/libs/config/test/Jamfile.v2 @@ -0,0 +1,140 @@ +# +# Copyright John Maddock 2008. +# 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) +# +# If you need to alter build preferences then set them in +# the template defined in options_v2.jam. +# + +import feature ; +import testing ; + +project + : requirements + <toolset>gcc:<cxxflags>-Wno-deprecated-declarations +; + + +import modules ; +import ../checks/config : requires ; + +local is_unix = [ modules.peek : UNIX ] ; + +lib atomic ; +lib pthread ; +lib rt ; + +exe has_atomic_lib : config_info.cpp atomic ; +explicit has_atomic_lib ; +exe has_pthread_lib : config_info.cpp pthread ; +explicit has_pthread_lib ; +exe has_rt_lib : config_info.cpp rt ; +explicit has_rt_lib ; + +test-suite config + : + [ compile config_test_c.c ] + [ run config_test.cpp + : #args + : #input-files + : #requirements + <threading>multi + [ check-target-builds has_atomic_lib : <source>atomic ] + [ check-target-builds has_pthread_lib : <source>pthread ] + [ check-target-builds has_rt_lib : <source>rt ] + : config_test_threaded + ] + [ run config_test.cpp + : #args + : #input-files + : #requirements + <threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static + [ check-target-builds has_atomic_lib : <source>atomic ] + [ check-target-builds has_pthread_lib : <source>pthread ] + [ check-target-builds has_rt_lib : <source>rt ] + ] + [ run config_test.cpp + : #args + : #input-files + : #requirements + <rtti>off + <toolset>gcc-4.4.7,<cxxstd>0x:<build>no # <memory> does not compile with -fno-rtti + [ check-target-builds has_atomic_lib : <source>atomic ] + [ check-target-builds has_pthread_lib : <source>pthread ] + [ check-target-builds has_rt_lib : <source>rt ] + : config_test_no_rtti + ] + [ run config_test.cpp + : #args + : #input-files + : #requirements + <exception-handling>off + <target-os>vxworks:<build>no # vx requires complete library rebuild to turn off exceptions + [ check-target-builds has_atomic_lib : <source>atomic ] + [ check-target-builds has_pthread_lib : <source>pthread ] + [ check-target-builds has_rt_lib : <source>rt ] + : config_test_no_except + ] + [ run config_info.cpp : : : <test-info>always_show_run_output <threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static <toolset>msvc:<warnings-as-errors>on <toolset>gcc:<warnings-as-errors>on <toolset>clang:<warnings-as-errors>on ] + [ run config_info.cpp : : : <test-info>always_show_run_output <threading>multi <toolset>msvc:<warnings-as-errors>on <toolset>gcc:<warnings-as-errors>on <toolset>clang:<warnings-as-errors>on : config_info_threaded ] + [ run config_info.cpp : : : <test-info>always_show_run_output <rtti>off <toolset>msvc:<warnings-as-errors>on <toolset>gcc:<warnings-as-errors>on <toolset>clang:<warnings-as-errors>on : config_info_no_rtti ] + [ run config_info.cpp : : : <test-info>always_show_run_output <exception-handling>off + <target-os>vxworks:<build>no + : config_info_no_except ] + [ run math_info.cpp : : : <test-info>always_show_run_output <toolset>borland:<runtime-link>static <toolset>borland:<link>static ] + [ run abi/abi_test.cpp abi/main.cpp ] + [ run limits_test.cpp ] + [ run link/main.cpp link//link_test + : #args + : #input-files + : #requirements + <runtime-link>shared + <define>BOOST_DYN_LINK=1 + <define>BOOST_CONFIG_NO_LIB=1 + <target-os>vxworks:<link>shared + : + config_link_test + ] + [ compile-fail threads/test_thread_fail1.cpp ] + [ compile-fail threads/test_thread_fail2.cpp ] + [ compile boost_fallthrough_test.cpp : [ check-target-builds has_clang_implicit_fallthrough "Clang implicit fallthrough" : <toolset>clang:<cxxflags>"-std=c++11 -Wimplicit-fallthrough" <warnings-as-errors>on <warnings>all ] ] + [ compile helper_macro_test.cpp ] + [ run cstdint_test.cpp : : : <warnings>all <toolset>gcc:<cxxflags>"-Wno-long-long -Wextra" <toolset>darwin:<cxxflags>-Wno-long-long ] + [ run cstdint_test2.cpp : : : <warnings>all <toolset>gcc:<cxxflags>"-Wno-long-long -Wextra" <toolset>darwin:<cxxflags>-Wno-long-long ] + [ compile cstdint_include_test.cpp : <warnings>all <toolset>gcc:<cxxflags>-Wextra ] + [ run config_build_check.cpp : : : [ requires int128 cxx11_constexpr cxx11_user_defined_literals cpp_lib_complex_udls cpp_range_based_for_17 ] ] + [ run helper_macros_test.cpp ] + [ compile pragma_message_test.cpp ] + [ compile header_deprecated_test.cpp ] + ; + +obj has_clang_implicit_fallthrough : cmd_line_check.cpp : + <toolset>clang:<cxxflags>"-std=c++11 -Wimplicit-fallthrough" <warnings-as-errors>on <warnings>all ; + +explicit has_clang_implicit_fallthrough ; + +exe config_info_printer : config_info.cpp ; +explicit config_info_printer ; + +actions print-run +{ + echo With Standard Version $(STANDARD:E=default) + echo ===================================================================== + $(>) +} + +rule print-run ( target : sources * : properties * ) +{ + STANDARD on $(target) = [ feature.get-values <cxxstd> : $(properties) ] ; +} + +notfile print_config_info : @print-run : config_info_printer ; +explicit print_config_info ; + +# Backwards compatibility: +exe config_info_travis : config_info.cpp ; +install config_info_travis_install : config_info_travis : <location>. ; +explicit config_info_travis_install ; + diff --git a/src/boost/libs/config/test/abi/abi_test.cpp b/src/boost/libs/config/test/abi/abi_test.cpp new file mode 100644 index 000000000..98be1b196 --- /dev/null +++ b/src/boost/libs/config/test/abi/abi_test.cpp @@ -0,0 +1,27 @@ +// (C) Copyright John Maddock 2003. +// 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. + + +#include "abi_test.hpp" + + +char abi_test::virtual_one()const +{ + return c; +} + +boost::int32_t abi_test::virtual_two()const +{ + return i; +} + +abi_test::abi_test() +{ + c = 0x12; + i = 0x5678; +} + diff --git a/src/boost/libs/config/test/abi/abi_test.hpp b/src/boost/libs/config/test/abi/abi_test.hpp new file mode 100644 index 000000000..a2bec783b --- /dev/null +++ b/src/boost/libs/config/test/abi/abi_test.hpp @@ -0,0 +1,54 @@ +// (C) Copyright John Maddock 2003. +// 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. + + +#ifndef BOOST_ABI_TEST_HPP +#define BOOST_ABI_TEST_HPP + +#include <boost/config.hpp> +#include <boost/cstdint.hpp> + +#ifdef BOOST_HAS_ABI_HEADERS +#include BOOST_ABI_PREFIX +#endif + +// +// the following class is designed to break if the ABI +// it's compiled with does not match that of the client +// calling it.... +// + +struct empty{}; + +class abi_test : protected empty +{ +private: + empty e; + char c; + boost::int32_t i; +public: + inline char inline_one()const + { return c; } + inline boost::int32_t inline_two()const + { return i; } + + virtual char virtual_one()const; + virtual boost::int32_t virtual_two()const; + + abi_test(); +}; + + + +#ifdef BOOST_HAS_ABI_HEADERS +#include BOOST_ABI_SUFFIX +#endif + +#endif // BOOST_ABI_TEST_HPP + + + diff --git a/src/boost/libs/config/test/abi/main.cpp b/src/boost/libs/config/test/abi/main.cpp new file mode 100644 index 000000000..e8f9d1393 --- /dev/null +++ b/src/boost/libs/config/test/abi/main.cpp @@ -0,0 +1,31 @@ +// (C) Copyright John Maddock 2003. +// 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. + +// +// before we do anything else, we need to mess with the compilers ABI: +// +#include <boost/config.hpp> +#ifdef BOOST_MSVC +#pragma pack(1) +#elif defined(__BORLANDC__) +#pragma option -Ve- -Vx- -a1 -b- +#endif +#include <stdio.h> +#include "abi_test.hpp" + + +int main() +{ + abi_test t; + if((t.inline_one() != t.virtual_one()) || (t.inline_two() != t.virtual_two())) + { + fwrite("Failed ABI test", 1, 15, stdout); + return -1; + } + return 0; +} + diff --git a/src/boost/libs/config/test/all/Jamfile.v2 b/src/boost/libs/config/test/all/Jamfile.v2 new file mode 100644 index 000000000..f804b20b7 --- /dev/null +++ b/src/boost/libs/config/test/all/Jamfile.v2 @@ -0,0 +1,622 @@ +# +# Regression test Jamfile for boost configuration setup. +# *** DO NOT EDIT THIS FILE BY HAND *** +# This file was automatically generated on Mon Dec 09 09:47:37 2019 +# by libs/config/tools/generate.cpp +# Copyright John Maddock. +# 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) +# +# If you need to alter build preferences then set them in +# the template defined in options_v2.jam. +# +path-constant DOT : . ; +include $(DOT)/options_v2.jam ; + +run ../config_info.cpp : : : <threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static ; +run ../config_info.cpp : : : <threading>multi : config_info_threaded ; +run ../math_info.cpp : : : <toolset>borland:<runtime-link>static <toolset>borland:<link>static ; +run ../config_test.cpp : : : <threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static ; +run ../config_test.cpp : : : <threading>multi : config_test_threaded ; +run ../limits_test.cpp ../../../test/build//boost_test_exec_monitor ; +run ../abi/abi_test.cpp ../abi/main.cpp ; + +test-suite "BOOST_HAS_TWO_ARG_USE_FACET" : +[ run ../has_2arg_use_facet_pass.cpp ] +[ compile-fail ../has_2arg_use_facet_fail.cpp ] ; +test-suite "BOOST_HAS_BETHREADS" : +[ run ../has_bethreads_pass.cpp ] +[ compile-fail ../has_bethreads_fail.cpp ] ; +test-suite "BOOST_HAS_CLOCK_GETTIME" : +[ run ../has_clock_gettime_pass.cpp ] +[ compile-fail ../has_clock_gettime_fail.cpp ] ; +test-suite "BOOST_HAS_PRAGMA_DETECT_MISMATCH" : +[ run ../has_detect_mismatch_pass.cpp ] +[ compile-fail ../has_detect_mismatch_fail.cpp ] ; +test-suite "BOOST_HAS_DIRENT_H" : +[ run ../has_dirent_h_pass.cpp ] +[ compile-fail ../has_dirent_h_fail.cpp ] ; +test-suite "BOOST_HAS_EXPM1" : +[ run ../has_expm1_pass.cpp ] +[ compile-fail ../has_expm1_fail.cpp ] ; +test-suite "BOOST_HAS_FLOAT128" : +[ run ../has_float128_pass.cpp ] +[ compile-fail ../has_float128_fail.cpp ] ; +test-suite "BOOST_HAS_FTIME" : +[ run ../has_ftime_pass.cpp ] +[ compile-fail ../has_ftime_fail.cpp ] ; +test-suite "BOOST_HAS_GETSYSTEMTIMEASFILETIME" : +[ run ../has_getsystemtimeasfiletime_pass.cpp ] +[ compile-fail ../has_getsystemtimeasfiletime_fail.cpp ] ; +test-suite "BOOST_HAS_GETTIMEOFDAY" : +[ run ../has_gettimeofday_pass.cpp ] +[ compile-fail ../has_gettimeofday_fail.cpp ] ; +test-suite "BOOST_HAS_HASH" : +[ run ../has_hash_pass.cpp ] +[ compile-fail ../has_hash_fail.cpp ] ; +test-suite "BOOST_HAS_INT128" : +[ run ../has_int128_pass.cpp ] +[ compile-fail ../has_int128_fail.cpp ] ; +test-suite "BOOST_HAS_LOG1P" : +[ run ../has_log1p_pass.cpp ] +[ compile-fail ../has_log1p_fail.cpp ] ; +test-suite "BOOST_HAS_LONG_LONG" : +[ run ../has_long_long_pass.cpp ] +[ compile-fail ../has_long_long_fail.cpp ] ; +test-suite "BOOST_HAS_MACRO_USE_FACET" : +[ run ../has_macro_use_facet_pass.cpp ] +[ compile-fail ../has_macro_use_facet_fail.cpp ] ; +test-suite "BOOST_HAS_MS_INT64" : +[ run ../has_ms_int64_pass.cpp ] +[ compile-fail ../has_ms_int64_fail.cpp ] ; +test-suite "BOOST_HAS_NANOSLEEP" : +[ run ../has_nanosleep_pass.cpp ] +[ compile-fail ../has_nanosleep_fail.cpp ] ; +test-suite "BOOST_HAS_NL_TYPES_H" : +[ run ../has_nl_types_h_pass.cpp ] +[ compile-fail ../has_nl_types_h_fail.cpp ] ; +test-suite "BOOST_HAS_NRVO" : +[ run ../has_nrvo_pass.cpp ] +[ compile-fail ../has_nrvo_fail.cpp ] ; +test-suite "BOOST_HAS_PARTIAL_STD_ALLOCATOR" : +[ run ../has_part_alloc_pass.cpp ] +[ compile-fail ../has_part_alloc_fail.cpp ] ; +test-suite "BOOST_HAS_PTHREAD_DELAY_NP" : +[ run ../has_pthread_delay_np_pass.cpp ] +[ compile-fail ../has_pthread_delay_np_fail.cpp ] ; +test-suite "BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE" : +[ run ../has_pthread_ma_st_pass.cpp ] +[ compile-fail ../has_pthread_ma_st_fail.cpp ] ; +test-suite "BOOST_HAS_PTHREAD_YIELD" : +[ run ../has_pthread_yield_pass.cpp ] +[ compile-fail ../has_pthread_yield_fail.cpp ] ; +test-suite "BOOST_HAS_PTHREADS" : +[ run ../has_pthreads_pass.cpp ] +[ compile-fail ../has_pthreads_fail.cpp ] ; +test-suite "BOOST_HAS_RVALUE_REFS" : +[ run ../has_rvalue_refs_pass.cpp ] +[ compile-fail ../has_rvalue_refs_fail.cpp ] ; +test-suite "BOOST_HAS_SCHED_YIELD" : +[ run ../has_sched_yield_pass.cpp ] +[ compile-fail ../has_sched_yield_fail.cpp ] ; +test-suite "BOOST_HAS_SGI_TYPE_TRAITS" : +[ run ../has_sgi_type_traits_pass.cpp ] +[ compile-fail ../has_sgi_type_traits_fail.cpp ] ; +test-suite "BOOST_HAS_SIGACTION" : +[ run ../has_sigaction_pass.cpp ] +[ compile-fail ../has_sigaction_fail.cpp ] ; +test-suite "BOOST_HAS_SLIST" : +[ run ../has_slist_pass.cpp ] +[ compile-fail ../has_slist_fail.cpp ] ; +test-suite "BOOST_HAS_STATIC_ASSERT" : +[ run ../has_static_assert_pass.cpp ] +[ compile-fail ../has_static_assert_fail.cpp ] ; +test-suite "BOOST_HAS_STDINT_H" : +[ run ../has_stdint_h_pass.cpp ] +[ compile-fail ../has_stdint_h_fail.cpp ] ; +test-suite "BOOST_HAS_STLP_USE_FACET" : +[ run ../has_stlp_use_facet_pass.cpp ] +[ compile-fail ../has_stlp_use_facet_fail.cpp ] ; +test-suite "BOOST_HAS_UNISTD_H" : +[ run ../has_unistd_h_pass.cpp ] +[ compile-fail ../has_unistd_h_fail.cpp ] ; +test-suite "BOOST_HAS_VARIADIC_TMPL" : +[ run ../has_variadic_tmpl_pass.cpp ] +[ compile-fail ../has_variadic_tmpl_fail.cpp ] ; +test-suite "BOOST_MSVC6_MEMBER_TEMPLATES" : +[ run ../has_vc6_mem_templ_pass.cpp ] +[ compile-fail ../has_vc6_mem_templ_fail.cpp ] ; +test-suite "BOOST_MSVC_STD_ITERATOR" : +[ run ../has_vc_iterator_pass.cpp ] +[ compile-fail ../has_vc_iterator_fail.cpp ] ; +test-suite "BOOST_HAS_WINTHREADS" : +[ run ../has_winthreads_pass.cpp ] +[ compile-fail ../has_winthreads_fail.cpp ] ; +test-suite "BOOST_NO_ADL_BARRIER" : +[ run ../no_adl_barrier_pass.cpp ] +[ compile-fail ../no_adl_barrier_fail.cpp ] ; +test-suite "BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP" : +[ run ../no_arg_dep_lookup_pass.cpp ] +[ compile-fail ../no_arg_dep_lookup_fail.cpp ] ; +test-suite "BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS" : +[ run ../no_array_type_spec_pass.cpp ] +[ compile-fail ../no_array_type_spec_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_AUTO_DECLARATIONS" : +[ run ../no_auto_declarations_pass.cpp ] +[ compile-fail ../no_auto_declarations_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS" : +[ run ../no_auto_multidecl_pass.cpp ] +[ compile-fail ../no_auto_multidecl_fail.cpp ] ; +test-suite "BOOST_NO_AUTO_PTR" : +[ run ../no_auto_ptr_pass.cpp ] +[ compile-fail ../no_auto_ptr_fail.cpp ] ; +test-suite "BOOST_BCB_PARTIAL_SPECIALIZATION_BUG" : +[ run ../no_bcb_partial_spec_pass.cpp ] +[ compile-fail ../no_bcb_partial_spec_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_CHAR16_T" : +[ run ../no_char16_t_pass.cpp ] +[ compile-fail ../no_char16_t_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_CHAR32_T" : +[ run ../no_char32_t_pass.cpp ] +[ compile-fail ../no_char32_t_fail.cpp ] ; +test-suite "BOOST_NO_COMPLETE_VALUE_INITIALIZATION" : +[ run ../no_com_value_init_pass.cpp ] +[ compile-fail ../no_com_value_init_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_CONSTEXPR" : +[ run ../no_constexpr_pass.cpp ] +[ compile-fail ../no_constexpr_fail.cpp ] ; +test-suite "BOOST_NO_CTYPE_FUNCTIONS" : +[ run ../no_ctype_functions_pass.cpp ] +[ compile-fail ../no_ctype_functions_fail.cpp ] ; +test-suite "BOOST_NO_CV_SPECIALIZATIONS" : +[ run ../no_cv_spec_pass.cpp ] +[ compile-fail ../no_cv_spec_fail.cpp ] ; +test-suite "BOOST_NO_CV_VOID_SPECIALIZATIONS" : +[ run ../no_cv_void_spec_pass.cpp ] +[ compile-fail ../no_cv_void_spec_fail.cpp ] ; +test-suite "BOOST_NO_CWCHAR" : +[ run ../no_cwchar_pass.cpp ] +[ compile-fail ../no_cwchar_fail.cpp ] ; +test-suite "BOOST_NO_CWCTYPE" : +[ run ../no_cwctype_pass.cpp ] +[ compile-fail ../no_cwctype_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_ADDRESSOF" : +[ run ../no_cxx11_addressof_pass.cpp ] +[ compile-fail ../no_cxx11_addressof_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_ALIGNAS" : +[ run ../no_cxx11_alignas_pass.cpp ] +[ compile-fail ../no_cxx11_alignas_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_ALLOCATOR" : +[ run ../no_cxx11_allocator_pass.cpp ] +[ compile-fail ../no_cxx11_allocator_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_ATOMIC_SMART_PTR" : +[ run ../no_cxx11_atomic_sp_pass.cpp ] +[ compile-fail ../no_cxx11_atomic_sp_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_DEFAULTED_MOVES" : +[ run ../no_cxx11_defaulted_moves_pass.cpp ] +[ compile-fail ../no_cxx11_defaulted_moves_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_EXCEPTION" : +[ run ../no_cxx11_exception_pass.cpp ] +[ compile-fail ../no_cxx11_exception_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_FINAL" : +[ run ../no_cxx11_final_pass.cpp ] +[ compile-fail ../no_cxx11_final_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_ARRAY" : +[ run ../no_cxx11_hdr_array_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_array_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_ATOMIC" : +[ run ../no_cxx11_hdr_atomic_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_atomic_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_CHRONO" : +[ run ../no_cxx11_hdr_chrono_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_chrono_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_CODECVT" : +[ run ../no_cxx11_hdr_codecvt_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_codecvt_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_CONDITION_VARIABLE" : +[ run ../no_cxx11_hdr_condition_variable_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_condition_variable_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_FORWARD_LIST" : +[ run ../no_cxx11_hdr_forward_list_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_forward_list_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_FUTURE" : +[ run ../no_cxx11_hdr_future_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_future_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_INITIALIZER_LIST" : +[ run ../no_cxx11_hdr_initializer_list_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_initializer_list_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_MUTEX" : +[ run ../no_cxx11_hdr_mutex_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_mutex_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_RANDOM" : +[ run ../no_cxx11_hdr_random_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_random_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_RATIO" : +[ run ../no_cxx11_hdr_ratio_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_ratio_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_REGEX" : +[ run ../no_cxx11_hdr_regex_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_regex_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_SYSTEM_ERROR" : +[ run ../no_cxx11_hdr_system_error_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_system_error_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_THREAD" : +[ run ../no_cxx11_hdr_thread_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_thread_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_TUPLE" : +[ run ../no_cxx11_hdr_tuple_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_tuple_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_TYPE_TRAITS" : +[ run ../no_cxx11_hdr_type_traits_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_type_traits_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_TYPEINDEX" : +[ run ../no_cxx11_hdr_typeindex_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_typeindex_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_UNORDERED_MAP" : +[ run ../no_cxx11_hdr_unordered_map_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_unordered_map_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_UNORDERED_SET" : +[ run ../no_cxx11_hdr_unordered_set_pass.cpp ] +[ compile-fail ../no_cxx11_hdr_unordered_set_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_INLINE_NAMESPACES" : +[ run ../no_cxx11_inline_namespaces_pass.cpp ] +[ compile-fail ../no_cxx11_inline_namespaces_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS" : +[ run ../no_cxx11_non_pub_def_fun_pass.cpp ] +[ compile-fail ../no_cxx11_non_pub_def_fun_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_NUMERIC_LIMITS" : +[ run ../no_cxx11_numeric_limits_pass.cpp ] +[ compile-fail ../no_cxx11_numeric_limits_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_POINTER_TRAITS" : +[ run ../no_cxx11_pointer_traits_pass.cpp ] +[ compile-fail ../no_cxx11_pointer_traits_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_REF_QUALIFIERS" : +[ run ../no_cxx11_ref_qualifiers_pass.cpp ] +[ compile-fail ../no_cxx11_ref_qualifiers_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_SFINAE_EXPR" : +[ run ../no_cxx11_sfinae_expr_pass.cpp ] +[ compile-fail ../no_cxx11_sfinae_expr_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_SMART_PTR" : +[ run ../no_cxx11_smart_ptr_pass.cpp ] +[ compile-fail ../no_cxx11_smart_ptr_fail.cpp ] ; +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 ] ; +test-suite "BOOST_NO_CXX11_USER_DEFINED_LITERALS" : +[ run ../no_cxx11_user_lit_pass.cpp ] +[ compile-fail ../no_cxx11_user_lit_fail.cpp ] ; +test-suite "BOOST_NO_CXX14_BINARY_LITERALS" : +[ run ../no_cxx14_binary_literals_pass.cpp ] +[ compile-fail ../no_cxx14_binary_literals_fail.cpp ] ; +test-suite "BOOST_NO_CXX14_CONSTEXPR" : +[ run ../no_cxx14_constexpr_pass.cpp ] +[ compile-fail ../no_cxx14_constexpr_fail.cpp ] ; +test-suite "BOOST_NO_CXX14_DECLTYPE_AUTO" : +[ run ../no_cxx14_decltype_auto_pass.cpp ] +[ compile-fail ../no_cxx14_decltype_auto_fail.cpp ] ; +test-suite "BOOST_NO_CXX14_DIGIT_SEPARATORS" : +[ run ../no_cxx14_digit_separator_pass.cpp ] +[ compile-fail ../no_cxx14_digit_separator_fail.cpp ] ; +test-suite "BOOST_NO_CXX14_GENERIC_LAMBDAS" : +[ run ../no_cxx14_generic_lambda_pass.cpp ] +[ compile-fail ../no_cxx14_generic_lambda_fail.cpp ] ; +test-suite "BOOST_NO_CXX14_HDR_SHARED_MUTEX" : +[ run ../no_cxx14_hdr_shared_mutex_pass.cpp ] +[ compile-fail ../no_cxx14_hdr_shared_mutex_fail.cpp ] ; +test-suite "BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES" : +[ run ../no_cxx14_lambda_capture_pass.cpp ] +[ compile-fail ../no_cxx14_lambda_capture_fail.cpp ] ; +test-suite "BOOST_NO_CXX14_AGGREGATE_NSDMI" : +[ run ../no_cxx14_member_init_pass.cpp ] +[ compile-fail ../no_cxx14_member_init_fail.cpp ] ; +test-suite "BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION" : +[ run ../no_cxx14_return_type_ded_pass.cpp ] +[ compile-fail ../no_cxx14_return_type_ded_fail.cpp ] ; +test-suite "BOOST_NO_CXX14_STD_EXCHANGE" : +[ run ../no_cxx14_std_exchange_pass.cpp ] +[ compile-fail ../no_cxx14_std_exchange_fail.cpp ] ; +test-suite "BOOST_NO_CXX14_VARIABLE_TEMPLATES" : +[ run ../no_cxx14_var_templ_pass.cpp ] +[ compile-fail ../no_cxx14_var_templ_fail.cpp ] ; +test-suite "BOOST_NO_CXX17_FOLD_EXPRESSIONS" : +[ run ../no_cxx17_fold_expressions_pass.cpp ] +[ compile-fail ../no_cxx17_fold_expressions_fail.cpp ] ; +test-suite "BOOST_NO_CXX17_HDR_OPTIONAL" : +[ run ../no_cxx17_hdr_optional_pass.cpp ] +[ compile-fail ../no_cxx17_hdr_optional_fail.cpp ] ; +test-suite "BOOST_NO_CXX17_HDR_STRING_VIEW" : +[ run ../no_cxx17_hdr_string_view_pass.cpp ] +[ compile-fail ../no_cxx17_hdr_string_view_fail.cpp ] ; +test-suite "BOOST_NO_CXX17_HDR_VARIANT" : +[ run ../no_cxx17_hdr_variant_pass.cpp ] +[ compile-fail ../no_cxx17_hdr_variant_fail.cpp ] ; +test-suite "BOOST_NO_CXX17_IF_CONSTEXPR" : +[ run ../no_cxx17_if_constexpr_pass.cpp ] +[ compile-fail ../no_cxx17_if_constexpr_fail.cpp ] ; +test-suite "BOOST_NO_CXX17_INLINE_VARIABLES" : +[ run ../no_cxx17_inline_variables_pass.cpp ] +[ compile-fail ../no_cxx17_inline_variables_fail.cpp ] ; +test-suite "BOOST_NO_CXX17_ITERATOR_TRAITS" : +[ run ../no_cxx17_iterator_traits_pass.cpp ] +[ compile-fail ../no_cxx17_iterator_traits_fail.cpp ] ; +test-suite "BOOST_NO_CXX17_STD_APPLY" : +[ run ../no_cxx17_std_apply_pass.cpp ] +[ compile-fail ../no_cxx17_std_apply_fail.cpp ] ; +test-suite "BOOST_NO_CXX17_STD_INVOKE" : +[ run ../no_cxx17_std_invoke_pass.cpp ] +[ compile-fail ../no_cxx17_std_invoke_fail.cpp ] ; +test-suite "BOOST_NO_CXX17_STRUCTURED_BINDINGS" : +[ run ../no_cxx17_structured_bindings_pass.cpp ] +[ compile-fail ../no_cxx17_structured_bindings_fail.cpp ] ; +test-suite "BOOST_NO_CXX98_BINDERS" : +[ run ../no_cxx98_binders_pass.cpp ] +[ compile-fail ../no_cxx98_binders_fail.cpp ] ; +test-suite "BOOST_NO_CXX98_FUNCTION_BASE" : +[ run ../no_cxx98_function_base_pass.cpp ] +[ compile-fail ../no_cxx98_function_base_fail.cpp ] ; +test-suite "BOOST_NO_CXX98_RANDOM_SHUFFLE" : +[ run ../no_cxx98_random_shuffle_pass.cpp ] +[ compile-fail ../no_cxx98_random_shuffle_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_HDR_FUNCTIONAL" : +[ run ../no_cxx_hdr_functional_pass.cpp ] +[ compile-fail ../no_cxx_hdr_functional_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_DECLTYPE" : +[ run ../no_decltype_pass.cpp ] +[ compile-fail ../no_decltype_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_DECLTYPE_N3276" : +[ run ../no_decltype_n3276_pass.cpp ] +[ compile-fail ../no_decltype_n3276_fail.cpp ] ; +test-suite "BOOST_DEDUCED_TYPENAME" : +[ run ../no_ded_typename_pass.cpp ] +[ compile-fail ../no_ded_typename_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_DEFAULTED_FUNCTIONS" : +[ run ../no_defaulted_functions_pass.cpp ] +[ compile-fail ../no_defaulted_functions_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_DELETED_FUNCTIONS" : +[ run ../no_deleted_functions_pass.cpp ] +[ compile-fail ../no_deleted_functions_fail.cpp ] ; +test-suite "BOOST_NO_DEPENDENT_NESTED_DERIVATIONS" : +[ run ../no_dep_nested_class_pass.cpp ] +[ compile-fail ../no_dep_nested_class_fail.cpp ] ; +test-suite "BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS" : +[ run ../no_dep_val_param_pass.cpp ] +[ compile-fail ../no_dep_val_param_fail.cpp ] ; +test-suite "BOOST_NO_EXCEPTION_STD_NAMESPACE" : +[ run ../no_excep_std_pass.cpp ] +[ compile-fail ../no_excep_std_fail.cpp ] ; +test-suite "BOOST_NO_EXCEPTIONS" : +[ run ../no_exceptions_pass.cpp ] +[ compile-fail ../no_exceptions_fail.cpp ] ; +test-suite "BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS" : +[ run ../no_exp_func_tem_arg_pass.cpp ] +[ compile-fail ../no_exp_func_tem_arg_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS" : +[ run ../no_explicit_cvt_ops_pass.cpp ] +[ compile-fail ../no_explicit_cvt_ops_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_EXTERN_TEMPLATE" : +[ run ../no_extern_template_pass.cpp ] +[ compile-fail ../no_extern_template_fail.cpp ] ; +test-suite "BOOST_NO_FENV_H" : +[ run ../no_fenv_h_pass.cpp ] +[ compile-fail ../no_fenv_h_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS" : +[ run ../no_fixed_len_variadic_templates_pass.cpp ] +[ compile-fail ../no_fixed_len_variadic_templates_fail.cpp ] ; +test-suite "BOOST_NO_FUNCTION_TEMPLATE_ORDERING" : +[ run ../no_func_tmp_order_pass.cpp ] +[ compile-fail ../no_func_tmp_order_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS" : +[ run ../no_function_template_default_args_pass.cpp ] +[ compile-fail ../no_function_template_default_args_fail.cpp ] ; +test-suite "BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS" : +[ run ../no_function_type_spec_pass.cpp ] +[ compile-fail ../no_function_type_spec_fail.cpp ] ; +test-suite "BOOST_NO_MS_INT64_NUMERIC_LIMITS" : +[ run ../no_i64_limits_pass.cpp ] +[ compile-fail ../no_i64_limits_fail.cpp ] ; +test-suite "BOOST_NO_INCLASS_MEMBER_INITIALIZATION" : +[ run ../no_inline_memb_init_pass.cpp ] +[ compile-fail ../no_inline_memb_init_fail.cpp ] ; +test-suite "BOOST_NO_INTEGRAL_INT64_T" : +[ run ../no_integral_int64_t_pass.cpp ] +[ compile-fail ../no_integral_int64_t_fail.cpp ] ; +test-suite "BOOST_NO_IOSFWD" : +[ run ../no_iosfwd_pass.cpp ] +[ compile-fail ../no_iosfwd_fail.cpp ] ; +test-suite "BOOST_NO_IOSTREAM" : +[ run ../no_iostream_pass.cpp ] +[ compile-fail ../no_iostream_fail.cpp ] ; +test-suite "BOOST_NO_IS_ABSTRACT" : +[ run ../no_is_abstract_pass.cpp ] +[ compile-fail ../no_is_abstract_fail.cpp ] ; +test-suite "BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS" : +[ run ../no_iter_construct_pass.cpp ] +[ compile-fail ../no_iter_construct_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_LAMBDAS" : +[ run ../no_lambdas_pass.cpp ] +[ compile-fail ../no_lambdas_fail.cpp ] ; +test-suite "BOOST_NO_LIMITS" : +[ run ../no_limits_pass.cpp ] +[ compile-fail ../no_limits_fail.cpp ] ; +test-suite "BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS" : +[ run ../no_limits_const_exp_pass.cpp ] +[ compile-fail ../no_limits_const_exp_fail.cpp ] ; +test-suite "BOOST_NO_LONG_LONG_NUMERIC_LIMITS" : +[ run ../no_ll_limits_pass.cpp ] +[ compile-fail ../no_ll_limits_fail.cpp ] ; +test-suite "BOOST_NO_LONG_LONG" : +[ run ../no_long_long_pass.cpp ] +[ compile-fail ../no_long_long_fail.cpp ] ; +test-suite "BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS" : +[ run ../no_mem_func_spec_pass.cpp ] +[ compile-fail ../no_mem_func_spec_fail.cpp ] ; +test-suite "BOOST_NO_MEMBER_TEMPLATE_KEYWORD" : +[ run ../no_mem_tem_keyword_pass.cpp ] +[ compile-fail ../no_mem_tem_keyword_fail.cpp ] ; +test-suite "BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS" : +[ run ../no_mem_tem_pnts_pass.cpp ] +[ compile-fail ../no_mem_tem_pnts_fail.cpp ] ; +test-suite "BOOST_NO_MEMBER_TEMPLATE_FRIENDS" : +[ run ../no_mem_templ_frnds_pass.cpp ] +[ compile-fail ../no_mem_templ_frnds_fail.cpp ] ; +test-suite "BOOST_NO_MEMBER_TEMPLATES" : +[ run ../no_mem_templates_pass.cpp ] +[ compile-fail ../no_mem_templates_fail.cpp ] ; +test-suite "BOOST_NO_NESTED_FRIENDSHIP" : +[ run ../no_nested_friendship_pass.cpp ] +[ compile-fail ../no_nested_friendship_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_NOEXCEPT" : +[ run ../no_noexcept_pass.cpp ] +[ compile-fail ../no_noexcept_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_NULLPTR" : +[ run ../no_nullptr_pass.cpp ] +[ compile-fail ../no_nullptr_fail.cpp ] ; +test-suite "BOOST_NO_OPERATORS_IN_NAMESPACE" : +[ run ../no_ops_in_namespace_pass.cpp ] +[ compile-fail ../no_ops_in_namespace_fail.cpp ] ; +test-suite "BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS" : +[ run ../no_part_spec_def_args_pass.cpp ] +[ compile-fail ../no_part_spec_def_args_fail.cpp ] ; +test-suite "BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION" : +[ run ../no_partial_spec_pass.cpp ] +[ compile-fail ../no_partial_spec_fail.cpp ] ; +test-suite "BOOST_NO_PRIVATE_IN_AGGREGATE" : +[ run ../no_priv_aggregate_pass.cpp ] +[ compile-fail ../no_priv_aggregate_fail.cpp ] ; +test-suite "BOOST_NO_POINTER_TO_MEMBER_CONST" : +[ run ../no_ptr_mem_const_pass.cpp ] +[ compile-fail ../no_ptr_mem_const_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_RANGE_BASED_FOR" : +[ run ../no_range_based_for_pass.cpp ] +[ compile-fail ../no_range_based_for_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_RAW_LITERALS" : +[ run ../no_raw_literals_pass.cpp ] +[ compile-fail ../no_raw_literals_fail.cpp ] ; +test-suite "BOOST_NO_RESTRICT_REFERENCES" : +[ run ../no_restrict_references_pass.cpp ] +[ compile-fail ../no_restrict_references_fail.cpp ] ; +test-suite "BOOST_NO_UNREACHABLE_RETURN_DETECTION" : +[ run ../no_ret_det_pass.cpp ] +[ compile-fail ../no_ret_det_fail.cpp ] ; +test-suite "BOOST_NO_RTTI" : +[ run ../no_rtti_pass.cpp ] +[ compile-fail ../no_rtti_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_RVALUE_REFERENCES" : +[ run ../no_rvalue_references_pass.cpp ] +[ compile-fail ../no_rvalue_references_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_SCOPED_ENUMS" : +[ run ../no_scoped_enums_pass.cpp ] +[ compile-fail ../no_scoped_enums_fail.cpp ] ; +test-suite "BOOST_NO_SFINAE" : +[ run ../no_sfinae_pass.cpp ] +[ compile-fail ../no_sfinae_fail.cpp ] ; +test-suite "BOOST_NO_SFINAE_EXPR" : +[ run ../no_sfinae_expr_pass.cpp ] +[ compile-fail ../no_sfinae_expr_fail.cpp ] ; +test-suite "BOOST_NO_STRINGSTREAM" : +[ run ../no_sstream_pass.cpp ] +[ compile-fail ../no_sstream_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_STATIC_ASSERT" : +[ run ../no_static_assert_pass.cpp ] +[ compile-fail ../no_static_assert_fail.cpp ] ; +test-suite "BOOST_NO_STD_ALLOCATOR" : +[ run ../no_std_allocator_pass.cpp ] +[ compile-fail ../no_std_allocator_fail.cpp ] ; +test-suite "BOOST_NO_STD_DISTANCE" : +[ run ../no_std_distance_pass.cpp ] +[ compile-fail ../no_std_distance_fail.cpp ] ; +test-suite "BOOST_NO_STD_ITERATOR_TRAITS" : +[ run ../no_std_iter_traits_pass.cpp ] +[ compile-fail ../no_std_iter_traits_fail.cpp ] ; +test-suite "BOOST_NO_STD_ITERATOR" : +[ run ../no_std_iterator_pass.cpp ] +[ compile-fail ../no_std_iterator_fail.cpp ] ; +test-suite "BOOST_NO_STD_LOCALE" : +[ run ../no_std_locale_pass.cpp ] +[ compile-fail ../no_std_locale_fail.cpp ] ; +test-suite "BOOST_NO_STD_MESSAGES" : +[ run ../no_std_messages_pass.cpp ] +[ compile-fail ../no_std_messages_fail.cpp ] ; +test-suite "BOOST_NO_STD_MIN_MAX" : +[ run ../no_std_min_max_pass.cpp ] +[ compile-fail ../no_std_min_max_fail.cpp ] ; +test-suite "BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN" : +[ run ../no_std_oi_assign_pass.cpp ] +[ compile-fail ../no_std_oi_assign_fail.cpp ] ; +test-suite "BOOST_NO_STD_TYPEINFO" : +[ run ../no_std_typeinfo_pass.cpp ] +[ compile-fail ../no_std_typeinfo_fail.cpp ] ; +test-suite "BOOST_NO_STD_USE_FACET" : +[ run ../no_std_use_facet_pass.cpp ] +[ compile-fail ../no_std_use_facet_fail.cpp ] ; +test-suite "BOOST_NO_STD_WSTREAMBUF" : +[ run ../no_std_wstreambuf_pass.cpp ] +[ compile-fail ../no_std_wstreambuf_fail.cpp ] ; +test-suite "BOOST_NO_STD_WSTRING" : +[ run ../no_std_wstring_pass.cpp ] +[ compile-fail ../no_std_wstring_fail.cpp ] ; +test-suite "BOOST_NO_STDC_NAMESPACE" : +[ run ../no_stdc_namespace_pass.cpp ] +[ compile-fail ../no_stdc_namespace_fail.cpp ] ; +test-suite "BOOST_NO_SWPRINTF" : +[ run ../no_swprintf_pass.cpp ] +[ compile-fail ../no_swprintf_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS" : +[ run ../no_tem_local_classes_pass.cpp ] +[ compile-fail ../no_tem_local_classes_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_TEMPLATE_ALIASES" : +[ run ../no_template_aliases_pass.cpp ] +[ compile-fail ../no_template_aliases_fail.cpp ] ; +test-suite "BOOST_NO_TEMPLATED_IOSTREAMS" : +[ run ../no_template_streams_pass.cpp ] +[ compile-fail ../no_template_streams_fail.cpp ] ; +test-suite "BOOST_NO_TEMPLATE_TEMPLATES" : +[ run ../no_template_template_pass.cpp ] +[ compile-fail ../no_template_template_fail.cpp ] ; +test-suite "BOOST_NO_TWO_PHASE_NAME_LOOKUP" : +[ run ../no_two_phase_lookup_pass.cpp ] +[ compile-fail ../no_two_phase_lookup_fail.cpp ] ; +test-suite "BOOST_NO_TYPEID" : +[ run ../no_typeid_pass.cpp ] +[ compile-fail ../no_typeid_fail.cpp ] ; +test-suite "BOOST_NO_TYPENAME_WITH_CTOR" : +[ run ../no_typename_with_ctor_pass.cpp ] +[ compile-fail ../no_typename_with_ctor_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_UNICODE_LITERALS" : +[ run ../no_unicode_literals_pass.cpp ] +[ compile-fail ../no_unicode_literals_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX" : +[ run ../no_unified_init_pass.cpp ] +[ compile-fail ../no_unified_init_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_UNRESTRICTED_UNION" : +[ run ../no_cxx11_unrestricted_union_pass.cpp ] +[ compile-fail ../no_cxx11_unrestricted_union_fail.cpp ] ; +test-suite "BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL" : +[ run ../no_using_breaks_adl_pass.cpp ] +[ compile-fail ../no_using_breaks_adl_fail.cpp ] ; +test-suite "BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE" : +[ run ../no_using_decl_overld_pass.cpp ] +[ compile-fail ../no_using_decl_overld_fail.cpp ] ; +test-suite "BOOST_NO_USING_TEMPLATE" : +[ run ../no_using_template_pass.cpp ] +[ compile-fail ../no_using_template_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_VARIADIC_MACROS" : +[ run ../no_variadic_macros_pass.cpp ] +[ compile-fail ../no_variadic_macros_fail.cpp ] ; +test-suite "BOOST_NO_CXX11_VARIADIC_TEMPLATES" : +[ run ../no_variadic_templates_pass.cpp ] +[ compile-fail ../no_variadic_templates_fail.cpp ] ; +test-suite "BOOST_NO_VOID_RETURNS" : +[ run ../no_void_returns_pass.cpp ] +[ compile-fail ../no_void_returns_fail.cpp ] ; +test-suite "BOOST_NO_INTRINSIC_WCHAR_T" : +[ run ../no_wchar_t_pass.cpp ] +[ compile-fail ../no_wchar_t_fail.cpp ] ; + diff --git a/src/boost/libs/config/test/all/options_v2.jam b/src/boost/libs/config/test/all/options_v2.jam new file mode 100644 index 000000000..ac748ef0d --- /dev/null +++ b/src/boost/libs/config/test/all/options_v2.jam @@ -0,0 +1,12 @@ +# copyright John Maddock 2003 +# 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) + +project + : requirements + # threading tests require thread support turned on: + <threading>multi + ; + +local test-requirements = <library>../../test/build//boost_test_exec_monitor ; diff --git a/src/boost/libs/config/test/boost_fallthrough_test.cpp b/src/boost/libs/config/test/boost_fallthrough_test.cpp new file mode 100644 index 000000000..44b868952 --- /dev/null +++ b/src/boost/libs/config/test/boost_fallthrough_test.cpp @@ -0,0 +1,21 @@ +// (C) Copyright John Maddock 2013. +// 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) + +#include <boost/config.hpp> + +int test(int n) +{ + switch (n) + { + case 0: + n++; + BOOST_FALLTHROUGH; + case 1: + n++; + break; + } + return n; +} + diff --git a/src/boost/libs/config/test/boost_has_2arg_use_facet.ipp b/src/boost/libs/config/test/boost_has_2arg_use_facet.ipp new file mode 100644 index 000000000..7ed2b7c16 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_2arg_use_facet.ipp @@ -0,0 +1,32 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_TWO_ARG_USE_FACET +// TITLE: two argument version of use_facet +// DESCRIPTION: The standard library lacks a conforming std::use_facet, +// but has a two argument version that does the job. +// This is primarily for the Rogue Wave std lib. + +#include <locale> + + +namespace boost_has_two_arg_use_facet{ + +int test() +{ + std::locale l; + const std::ctype<char>& ct = std::use_facet(l, (std::ctype<char>*)0); + return 0; +} + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_has_bethreads.ipp b/src/boost/libs/config/test/boost_has_bethreads.ipp new file mode 100644 index 000000000..0e01699de --- /dev/null +++ b/src/boost/libs/config/test/boost_has_bethreads.ipp @@ -0,0 +1,34 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_BETHREADS +// TITLE: BeOS Threads +// DESCRIPTION: The platform supports BeOS style threads. + +#include <OS.h> + + +namespace boost_has_bethreads{ + +int test() +{ + sem_id mut = create_sem(1, "test"); + if(mut > 0) + { + acquire_sem(mut); + release_sem(mut); + delete_sem(mut); + } + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_clock_gettime.ipp b/src/boost/libs/config/test/boost_has_clock_gettime.ipp new file mode 100644 index 000000000..59eee5859 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_clock_gettime.ipp @@ -0,0 +1,35 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_CLOCK_GETTIME +// TITLE: clock_gettime +// DESCRIPTION: The platform supports POSIX standard API clock_gettime. + +#include <time.h> + + +namespace boost_has_clock_gettime{ + +void f() +{ + // this is never called, it just has to compile: + timespec tp; + int res = clock_gettime(CLOCK_REALTIME, &tp); + (void) &res; +} + +int test() +{ + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_detect_mismatch.ipp b/src/boost/libs/config/test/boost_has_detect_mismatch.ipp new file mode 100644 index 000000000..6430dd466 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_detect_mismatch.ipp @@ -0,0 +1,25 @@ +// (C) Copyright John Maddock 2018. +// 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_HAS_PRAGMA_DETECT_MISMATCH +// TITLE: detect_mismatch pragma +// DESCRIPTION: The compiler supports #pragma detect_mismatch + +#include <cstdlib> + + +namespace boost_has_pragma_detect_mismatch { + +# pragma detect_mismatch("Boost_Config", "1") + +int test() +{ + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_has_dirent_h.ipp b/src/boost/libs/config/test/boost_has_dirent_h.ipp new file mode 100644 index 000000000..5d6020202 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_dirent_h.ipp @@ -0,0 +1,30 @@ +// (C) Copyright John Maddock 2002. +// 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_HAS_DIRENT_H +// TITLE: <dirent.h> +// DESCRIPTION: The platform has an <dirent.h>. + +#include <dirent.h> + + +namespace boost_has_dirent_h{ + +int test() +{ + DIR* pd = opendir("foobar"); + if(pd) closedir(pd); + return 0; +} + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_has_expm1.ipp b/src/boost/libs/config/test/boost_has_expm1.ipp new file mode 100644 index 000000000..b219d50f1 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_expm1.ipp @@ -0,0 +1,25 @@ +// (C) Copyright John Maddock 2005. +// 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_HAS_EXPM1 +// TITLE: expm1 +// DESCRIPTION: The std lib has a C99-conforming expm1 function. + +#include <math.h> + +namespace boost_has_expm1{ + +int test() +{ + double x = 0.5; + x = ::expm1(x); + (void)x; + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_has_float128.ipp b/src/boost/libs/config/test/boost_has_float128.ipp new file mode 100644 index 000000000..80b211c14 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_float128.ipp @@ -0,0 +1,29 @@ +// (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_HAS_FLOAT128 +// TITLE: __float128 +// DESCRIPTION: The platform supports __float128. + +#include <cstdlib> + + +namespace boost_has_float128{ + +int test() +{ +#ifdef __GNUC__ + __extension__ __float128 big_float = 0.0Q; +#else + __float128 big_float = 0.0Q; +#endif + (void)&big_float; + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_has_ftime.ipp b/src/boost/libs/config/test/boost_has_ftime.ipp new file mode 100644 index 000000000..ff04baf9e --- /dev/null +++ b/src/boost/libs/config/test/boost_has_ftime.ipp @@ -0,0 +1,32 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_FTIME +// TITLE: The platform has FTIME. +// DESCRIPTION: The platform supports the Win32 API type FTIME. + +#include <windows.h> + + +namespace boost_has_ftime{ + +void f(FILETIME) +{ + // this is never called, it just has to compile: +} + +int test() +{ + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_getsystemtimeasfiletime.ipp b/src/boost/libs/config/test/boost_has_getsystemtimeasfiletime.ipp new file mode 100644 index 000000000..d9b7e1c95 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_getsystemtimeasfiletime.ipp @@ -0,0 +1,30 @@ +// (C) Copyright John Maddock 2011. +// 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_HAS_GETSYSTEMTIMEASFILETIME +// TITLE: GetSystemTimeAsFileTime +// DESCRIPTION: The platform supports Win32 API GetSystemTimeAsFileTime. + +#include <windows.h> + + +namespace boost_has_getsystemtimeasfiletime{ + +void f() +{ + // this is never called, it just has to compile: + FILETIME ft; + GetSystemTimeAsFileTime(&ft); +} + +int test() +{ + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_has_gettimeofday.ipp b/src/boost/libs/config/test/boost_has_gettimeofday.ipp new file mode 100644 index 000000000..d79186a9b --- /dev/null +++ b/src/boost/libs/config/test/boost_has_gettimeofday.ipp @@ -0,0 +1,35 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_GETTIMEOFDAY +// TITLE: gettimeofday +// DESCRIPTION: The platform supports POSIX standard API gettimeofday. + +#include <sys/time.h> + + +namespace boost_has_gettimeofday{ + +void f() +{ + // this is never called, it just has to compile: + timeval tp; + int res = gettimeofday(&tp, 0); + (void) &res; +} + +int test() +{ + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_hash.ipp b/src/boost/libs/config/test/boost_has_hash.ipp new file mode 100644 index 000000000..0363940d2 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_hash.ipp @@ -0,0 +1,68 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_HASH +// TITLE: <hashset> and <hashmap> +// DESCRIPTION: The C++ implementation provides the (SGI) hash_set +// or hash_map classes. + +#if defined(__GLIBCXX__) || (defined(__GLIBCPP__) && __GLIBCPP__>=20020514) // GCC >= 3.1.0 +# ifdef BOOST_NO_CXX11_STD_UNORDERED +# define BOOST_STD_EXTENSION_NAMESPACE __gnu_cxx +# define _BACKWARD_BACKWARD_WARNING_H 1 /* turn off warnings from the headers below */ +# include <ext/hash_set> +# include <ext/hash_map> +# else + // If we have BOOST_NO_CXX11_STD_UNORDERED *not* defined, then we must + // not include the <ext/*> headers as they clash with the C++0x + // headers. ie in any given translation unit we can include one + // or the other, but not both. +# define DISABLE_BOOST_HAS_HASH_TEST +# endif +#else +#include <hash_set> +#include <hash_map> +#endif + +#ifndef BOOST_STD_EXTENSION_NAMESPACE +#define BOOST_STD_EXTENSION_NAMESPACE std +#endif + +namespace boost_has_hash{ + +#ifndef DISABLE_BOOST_HAS_HASH_TEST + +template <class Key, class Eq, class Hash, class Alloc> +void foo(const BOOST_STD_EXTENSION_NAMESPACE::hash_set<Key,Eq,Hash,Alloc>& ) +{ +} + +template <class Key, class T, class Eq, class Hash, class Alloc> +void foo(const BOOST_STD_EXTENSION_NAMESPACE::hash_map<Key,T,Eq,Hash,Alloc>& ) +{ +} + +#endif + +int test() +{ +#ifndef DISABLE_BOOST_HAS_HASH_TEST + BOOST_STD_EXTENSION_NAMESPACE::hash_set<int> hs; + foo(hs); + BOOST_STD_EXTENSION_NAMESPACE::hash_map<int, long> hm; + foo(hm); +#endif + return 0; +} + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_has_int128.ipp b/src/boost/libs/config/test/boost_has_int128.ipp new file mode 100644 index 000000000..b7e10a40c --- /dev/null +++ b/src/boost/libs/config/test/boost_has_int128.ipp @@ -0,0 +1,75 @@ +// (C) Copyright John Maddock 2012. +// (C) Copyright Dynatrace 2017. +// 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_HAS_INT128 +// TITLE: __int128 +// DESCRIPTION: The platform supports __int128. + +#include <cstdlib> +#include <stdio.h> +#include <limits.h> + +namespace boost_has_int128{ + +#ifdef __GNUC__ +__extension__ typedef __int128 my_int128_t; +__extension__ typedef unsigned __int128 my_uint128_t; +#else +typedef __int128 my_int128_t; +typedef unsigned __int128 my_uint128_t; +#endif + +my_uint128_t volatile g_ui128 = 0; +unsigned long volatile g_ul = 0; + +int test() +{ + my_int128_t si128 = 0; + (void)&si128; + + // Some compilers have seriously broken __int128 implementations, so we need to do a little more than simply check if we can declare variables with __int128... + // #1: check __int128 size + if (sizeof(my_uint128_t) < (128 / CHAR_BIT)) + { + fputs("Type too small.", stderr); + return 1; + } + + // #2: check result of computation with __int128 + my_uint128_t p1 = 1; + my_uint128_t p2 = 1; + unsigned int i = 0; + for (; i < 180; i++) + { + g_ui128 = p1 + p2; + if (g_ui128 < p1) + { + fputs("Unexpected overflow.", stderr); + return 1; + } + p2 = p1; + p1 = g_ui128; + } + + g_ul = static_cast<unsigned long>((g_ui128 >> 92) & 0xFFFFFFFFUL); + g_ul -= 1216382273UL; + if (g_ul != 0) + { + fputs("Incorrect computation result.", stderr); + return 1; + } + + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_log1p.ipp b/src/boost/libs/config/test/boost_has_log1p.ipp new file mode 100644 index 000000000..9454d00be --- /dev/null +++ b/src/boost/libs/config/test/boost_has_log1p.ipp @@ -0,0 +1,24 @@ +// (C) Copyright John Maddock 2005. +// 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_HAS_LOG1P +// TITLE: log1p +// DESCRIPTION: The std lib has a C99-conforming log1p function. + +#include <math.h> + +namespace boost_has_log1p{ + +int test() +{ + double x = 0.5; + x = ::log1p(x); + (void)x; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_has_long_long.ipp b/src/boost/libs/config/test/boost_has_long_long.ipp new file mode 100644 index 000000000..651021b49 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_long_long.ipp @@ -0,0 +1,36 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_LONG_LONG +// TITLE: long long +// DESCRIPTION: The platform supports long long. + +#include <cstdlib> + + +namespace boost_has_long_long{ + +int test() +{ +#ifdef __GNUC__ + __extension__ long long lli = 0LL; + __extension__ unsigned long long ulli = 0uLL; +#else + long long lli = 0LL; + unsigned long long ulli = 0uLL; +#endif + (void)&lli; + (void)&ulli; + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_macro_use_facet.ipp b/src/boost/libs/config/test/boost_has_macro_use_facet.ipp new file mode 100644 index 000000000..0e0726df4 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_macro_use_facet.ipp @@ -0,0 +1,35 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_MACRO_USE_FACET +// TITLE: macro version of use_facet: _USE +// DESCRIPTION: The standard library lacks a conforming std::use_facet, +// but has a macro _USE(loc, Type) that does the job. +// This is primarily for the Dinkumware std lib. + +#include <locale> + +#ifndef _USE +#error "macro _USE not defined" +#endif + +namespace boost_has_macro_use_facet{ + +int test() +{ + std::locale l; + const std::ctype<char>& ct = std::_USE(l, std::ctype<char>); + return 0; +} + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_has_ms_int64.ipp b/src/boost/libs/config/test/boost_has_ms_int64.ipp new file mode 100644 index 000000000..c8b47826b --- /dev/null +++ b/src/boost/libs/config/test/boost_has_ms_int64.ipp @@ -0,0 +1,32 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_MS_INT64 +// TITLE: __int64 +// DESCRIPTION: The platform supports Microsoft style __int64. + +#include <cstdlib> + + +namespace boost_has_ms_int64{ + +int test() +{ + __int64 lli = 0i64; + unsigned __int64 ulli = 0ui64; + (void)lli; + (void)ulli; + return 0; +} + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_has_nanosleep.ipp b/src/boost/libs/config/test/boost_has_nanosleep.ipp new file mode 100644 index 000000000..9262c8cf5 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_nanosleep.ipp @@ -0,0 +1,36 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_NANOSLEEP +// TITLE: nanosleep +// DESCRIPTION: The platform supports POSIX API nanosleep. + +#include <time.h> + + +namespace boost_has_nanosleep{ + +void f() +{ + // this is never called, it just has to compile: + timespec ts = {0, 0}; + timespec rm; + int res = nanosleep(&ts, &rm); + (void) &res; +} + +int test() +{ + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_nl_types_h.ipp b/src/boost/libs/config/test/boost_has_nl_types_h.ipp new file mode 100644 index 000000000..e23f0a21e --- /dev/null +++ b/src/boost/libs/config/test/boost_has_nl_types_h.ipp @@ -0,0 +1,29 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_NL_TYPES_H +// TITLE: <nl_types.h> +// DESCRIPTION: The platform has an <nl_types.h>. + +#include <nl_types.h> + + +namespace boost_has_nl_types_h{ + +int test() +{ + nl_catd cat = catopen("foo", 0); + if(cat != (nl_catd)-1) catclose(cat); + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_nrvo.ipp b/src/boost/libs/config/test/boost_has_nrvo.ipp new file mode 100644 index 000000000..ad6f17f6f --- /dev/null +++ b/src/boost/libs/config/test/boost_has_nrvo.ipp @@ -0,0 +1,57 @@ +// (C) Copyright Terje Slettebo 2001. +// (C) Copyright John Maddock 2001. +// 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_HAS_NRVO +// TITLE: Named return value optimisation. +// DESCRIPTION: Named return value optimisation. + + +namespace boost_has_nrvo +{ + +class test_class +{ +public: + test_class() {} + test_class(const test_class&) + { + ++copy_count; + } + + static int copy_count; +}; + +int test_class::copy_count; + +test_class f() +{ + test_class nrv; + + return nrv; +} + +int test() +{ + test_class::copy_count=0; + + f(); + + return test_class::copy_count; +} + +} // namespace boost_has_nrvo + + + + + + + + + + diff --git a/src/boost/libs/config/test/boost_has_part_alloc.ipp b/src/boost/libs/config/test/boost_has_part_alloc.ipp new file mode 100644 index 000000000..fac5fed4e --- /dev/null +++ b/src/boost/libs/config/test/boost_has_part_alloc.ipp @@ -0,0 +1,67 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_PARTIAL_STD_ALLOCATOR +// TITLE: limited std::allocator support +// DESCRIPTION: The std lib has at least some kind of stanfard allocator +// with allocate/deallocate members and probably not much more. + +#include <memory> + +#if defined(__GNUC__) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 7))) +# define BOOST_UNUSED_ATTRIBUTE __attribute__((unused)) +#else +# define BOOST_UNUSED_ATTRIBUTE +#endif + +namespace boost_has_partial_std_allocator{ + +// +// test everything except rebind template members: +// + +template <class T> +int test_allocator(const T& i) +{ + typedef std::allocator<int> alloc1_t; +#if !((__cplusplus > 201700) || (defined(_MSVC_LANG) && (_MSVC_LANG > 201700))) + typedef typename alloc1_t::size_type size_type; + typedef typename alloc1_t::difference_type difference_type BOOST_UNUSED_ATTRIBUTE; + typedef typename alloc1_t::pointer pointer; + typedef typename alloc1_t::const_pointer const_pointer; + typedef typename alloc1_t::reference reference; + typedef typename alloc1_t::const_reference const_reference; + typedef typename alloc1_t::value_type value_type BOOST_UNUSED_ATTRIBUTE; +#endif + alloc1_t a1; + (void)i; +#if !((__cplusplus > 201700) || (defined(_MSVC_LANG) && (_MSVC_LANG > 201700))) + pointer p = a1.allocate(1); + const_pointer cp = p; + a1.construct(p,i); + size_type s = a1.max_size(); + (void)s; + reference r = *p; + const_reference cr = *cp; + if(p != a1.address(r)) return -1; + if(cp != a1.address(cr)) return -1; + a1.destroy(p); + a1.deallocate(p,1); +#endif + return 0; +} + + +int test() +{ + return test_allocator(0); +} + +} + +#undef BOOST_UNUSED_ATTRIBUTE + diff --git a/src/boost/libs/config/test/boost_has_pthread_delay_np.ipp b/src/boost/libs/config/test/boost_has_pthread_delay_np.ipp new file mode 100644 index 000000000..294d3db5b --- /dev/null +++ b/src/boost/libs/config/test/boost_has_pthread_delay_np.ipp @@ -0,0 +1,35 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_PTHREAD_DELAY_NP +// TITLE: pthread_delay_np +// DESCRIPTION: The platform supports non-standard pthread_delay_np API. + +#include <pthread.h> +#include <time.h> + + +namespace boost_has_pthread_delay_np{ + +void f() +{ + // this is never called, it just has to compile: + timespec ts; + int res = pthread_delay_np(&ts); +} + +int test() +{ + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_pthread_ma_st.ipp b/src/boost/libs/config/test/boost_has_pthread_ma_st.ipp new file mode 100644 index 000000000..0e985f2d8 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_pthread_ma_st.ipp @@ -0,0 +1,37 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_PTHREAD_MUTEXATTR_SETTYPE +// TITLE: pthread_mutexattr_settype +// DESCRIPTION: The platform supports POSIX API pthread_mutexattr_settype. + +#include <pthread.h> + + +namespace boost_has_pthread_mutexattr_settype{ + +void f() +{ + // this is never called, it just has to compile: + pthread_mutexattr_t attr; + pthread_mutexattr_init(&attr); + int type = 0; + pthread_mutexattr_settype(&attr, type); +} + +int test() +{ + return 0; +} + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_has_pthread_yield.ipp b/src/boost/libs/config/test/boost_has_pthread_yield.ipp new file mode 100644 index 000000000..37046d325 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_pthread_yield.ipp @@ -0,0 +1,34 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_PTHREAD_YIELD +// TITLE: pthread_yield +// DESCRIPTION: The platform supports non standard API pthread_yield. + +#include <pthread.h> + + +namespace boost_has_pthread_yield{ + +void f() +{ + // this is never called, it just has to compile: + int res = pthread_yield(); + (void)res; +} + +int test() +{ + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_pthreads.ipp b/src/boost/libs/config/test/boost_has_pthreads.ipp new file mode 100644 index 000000000..eeeff65fe --- /dev/null +++ b/src/boost/libs/config/test/boost_has_pthreads.ipp @@ -0,0 +1,64 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_PTHREADS +// TITLE: POSIX Threads +// DESCRIPTION: The platform supports POSIX style threads. + +#include <pthread.h> + + +namespace boost_has_pthreads{ + +extern "C" void* thread_proc(void* arg) +{ + return arg; +} + +int test() +{ + pthread_mutex_t mut; + int result = pthread_mutex_init(&mut, 0); + if(0 == result) + { + // + // Failure to be able to create and use a mutex + // is always a failure, even if the pthread + // library is just a non-functioning stub. + // + result |= pthread_mutex_lock(&mut); + result |= pthread_mutex_unlock(&mut); + result |= pthread_mutex_trylock(&mut); + result |= pthread_mutex_unlock(&mut); + result |= pthread_mutex_destroy(&mut); + // + // Try and create a thread, this is allowed + // to fail, in case we are linking to a pthread + // "stub" library. + // + pthread_t t; + int r = pthread_create(&t, 0, &thread_proc, 0); + // result |= r; + if(r == 0) + { + // + // If we can create a thread, then we must be able to join to it: + // + void* arg; + r = pthread_join(t, &arg); + result |= r; + } + } + return result; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_rvalue_refs.ipp b/src/boost/libs/config/test/boost_has_rvalue_refs.ipp new file mode 100644 index 000000000..f0ce174d7 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_rvalue_refs.ipp @@ -0,0 +1,26 @@ +// Copyright (C) 2007 Douglas Gregor +// 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_HAS_RVALUE_REFS +// TITLE: rvalue references +// DESCRIPTION: The compiler supports C++0x rvalue references + +namespace boost_has_rvalue_refs { + +void g(int&) {} + +template<typename F, typename T> +void forward(F f, T&& t) { f(static_cast<T&&>(t)); } + +int test() +{ + int x; + forward(g, x); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_has_sched_yield.ipp b/src/boost/libs/config/test/boost_has_sched_yield.ipp new file mode 100644 index 000000000..1302fbff2 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_sched_yield.ipp @@ -0,0 +1,34 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_SCHED_YIELD +// TITLE: sched_yield +// DESCRIPTION: The platform supports POSIX standard API sched_yield. + +#include <pthread.h> + + +namespace boost_has_sched_yield{ + +void f() +{ + // this is never called, it just has to compile: + int res = sched_yield(); + (void) &res; +} + +int test() +{ + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_sgi_type_traits.ipp b/src/boost/libs/config/test/boost_has_sgi_type_traits.ipp new file mode 100644 index 000000000..5848b68f5 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_sgi_type_traits.ipp @@ -0,0 +1,40 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_SGI_TYPE_TRAITS +// TITLE: SGI style <type_traits.h> +// DESCRIPTION: The standard library has it's own type_traits implementation. + +#include <type_traits.h> + + +namespace boost_has_sgi_type_traits{ + +struct foo_type{}; + +int test() +{ + ::__true_type t; + ::__false_type f; + typedef ::__type_traits<int>::has_trivial_destructor td; + typedef ::__type_traits<double>::has_trivial_assignment_operator ta; + typedef ::__type_traits<float>::has_trivial_copy_constructor tc; + typedef ::__type_traits<char>::has_trivial_default_constructor tdc; + typedef ::__type_traits<foo_type>::is_POD_type isp; + + (void) &t; // avoid "unused variable" warnings + (void) &f; + + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_sigaction.ipp b/src/boost/libs/config/test/boost_has_sigaction.ipp new file mode 100644 index 000000000..12170c1da --- /dev/null +++ b/src/boost/libs/config/test/boost_has_sigaction.ipp @@ -0,0 +1,36 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_SIGACTION +// TITLE: sigaction +// DESCRIPTION: The platform supports POSIX standard API sigaction. + +#include <signal.h> + + +namespace boost_has_sigaction{ + +void f() +{ + // this is never called, it just has to compile: + struct sigaction* sa1 = 0 ; + struct sigaction* sa2 = 0 ; + int res = sigaction(0, sa1, sa2); + (void) &res; +} + +int test() +{ + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_slist.ipp b/src/boost/libs/config/test/boost_has_slist.ipp new file mode 100644 index 000000000..f3c37d4c2 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_slist.ipp @@ -0,0 +1,44 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_SLIST +// TITLE: <slist> +// DESCRIPTION: The C++ implementation provides the (SGI) slist class. + +#if defined(__GLIBCXX__) || (defined(__GLIBCPP__) && __GLIBCPP__>=20020514) // GCC >= 3.1.0 +# define BOOST_STD_EXTENSION_NAMESPACE __gnu_cxx +#include <ext/slist> +#else +#include <slist> +#endif + +#ifndef BOOST_STD_EXTENSION_NAMESPACE +#define BOOST_STD_EXTENSION_NAMESPACE std +#endif + +namespace boost_has_slist{ + +template <class T, class Alloc> +void foo(const BOOST_STD_EXTENSION_NAMESPACE::slist<T,Alloc>& ) +{ +} + + +int test() +{ + BOOST_STD_EXTENSION_NAMESPACE::slist<int> l; + foo(l); + return 0; +} + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_has_static_assert.ipp b/src/boost/libs/config/test/boost_has_static_assert.ipp new file mode 100644 index 000000000..545938a0e --- /dev/null +++ b/src/boost/libs/config/test/boost_has_static_assert.ipp @@ -0,0 +1,20 @@ +// Copyright (C) 2007 Douglas Gregor +// 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_HAS_STATIC_ASSERT +// TITLE: static assertions +// DESCRIPTION: The compiler supports C++0x static assertions + +namespace boost_has_static_assert { + +int test() +{ + static_assert(true, "OK"); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_has_stdint_h.ipp b/src/boost/libs/config/test/boost_has_stdint_h.ipp new file mode 100644 index 000000000..c731f503f --- /dev/null +++ b/src/boost/libs/config/test/boost_has_stdint_h.ipp @@ -0,0 +1,48 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_STDINT_H +// TITLE: stdint.h +// DESCRIPTION: There are no 1998 C++ Standard headers <stdint.h> +// or <cstdint>, although the 1999 C Standard does +// include <stdint.h>. +// If <stdint.h> is present, <boost/stdint.h> can make +// good use of it, so a flag is supplied (signalling +// presence; thus the default is not present, conforming +// to the current C++ standard). + +# if defined(__hpux) || defined(__FreeBSD__) || defined(__IBMCPP__) +# include <inttypes.h> +# else +# include <stdint.h> +# endif + +namespace boost_has_stdint_h{ + +int test() +{ + int8_t i = 0; +#ifndef __QNX__ + // QNX has these under non-standard names, our cstdint.hpp will find them however: + int_fast8_t j = 0; + int_least8_t k = 0; + (void)j; + (void)k; +#endif + (void)i; + + return 0; +} + +} + + + + + + + diff --git a/src/boost/libs/config/test/boost_has_stlp_use_facet.ipp b/src/boost/libs/config/test/boost_has_stlp_use_facet.ipp new file mode 100644 index 000000000..5b61b7412 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_stlp_use_facet.ipp @@ -0,0 +1,31 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_STLP_USE_FACET +// TITLE: STLport version of use_facet +// DESCRIPTION: The standard library lacks a conforming std::use_facet, +// but has a workaound class-version that does the job. +// This is primarily for the STLport std lib. + +#include <locale> + + +namespace boost_has_stlp_use_facet{ + +int test() +{ + std::locale l; + const std::ctype<char>& ct = *std::_Use_facet<std::ctype<char> >(l); + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_unistd_h.ipp b/src/boost/libs/config/test/boost_has_unistd_h.ipp new file mode 100644 index 000000000..b082c4fee --- /dev/null +++ b/src/boost/libs/config/test/boost_has_unistd_h.ipp @@ -0,0 +1,26 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_UNISTD_H +// TITLE: <unistd.h> +// DESCRIPTION: The Platform provides <unistd.h>. + +#include <unistd.h> + +namespace boost_has_unistd_h{ + +int test() +{ + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_has_variadic_tmpl.ipp b/src/boost/libs/config/test/boost_has_variadic_tmpl.ipp new file mode 100644 index 000000000..539c512a9 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_variadic_tmpl.ipp @@ -0,0 +1,21 @@ +// Copyright (C) 2007 Douglas Gregor +// 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_HAS_VARIADIC_TMPL +// TITLE: variadic templates +// DESCRIPTION: The compiler supports C++0x variadic templates + +namespace boost_has_variadic_tmpl { + +template<typename... Elements> struct tuple {}; + +int test() +{ + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_has_vc6_mem_templ.ipp b/src/boost/libs/config/test/boost_has_vc6_mem_templ.ipp new file mode 100644 index 000000000..fbce17094 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_vc6_mem_templ.ipp @@ -0,0 +1,58 @@ +// (C) Copyright John Maddock 2001. +// 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_MSVC6_MEMBER_TEMPLATES +// TITLE: microsoft member templates +// DESCRIPTION: Microsoft Visual C++ 6.0 has enough member +// template idiosyncrasies (being polite) that +// BOOST_NO_MEMBER_TEMPLATES is defined for this compiler. +// BOOST_MSVC6_MEMBER_TEMPLATES is defined to allow +// compiler specific workarounds. +#ifndef BOOST_NESTED_TEMPLATE +#define BOOST_NESTED_TEMPLATE template +#endif + +namespace boost_msvc6_member_templates{ + +template <class T> +struct foo +{ + template <class U> + struct nested + { + typedef foo<U> other; + }; + template <class U> + void mfoo(const U&) + { + } +}; + +template <class T> +void vc6_mem_test(T i) +{ + foo<double> f1; + typedef foo<T> ifoo; + f1.mfoo(i); + typedef typename ifoo::BOOST_NESTED_TEMPLATE nested<double> bound_t; + typedef typename bound_t::other other; + other o; + (void)o; +} + +int test() +{ + int i = 0; + vc6_mem_test(i); + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_has_vc_iterator.ipp b/src/boost/libs/config/test/boost_has_vc_iterator.ipp new file mode 100644 index 000000000..e2fd5a6b4 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_vc_iterator.ipp @@ -0,0 +1,40 @@ +// (C) Copyright John Maddock 2001. +// 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_MSVC_STD_ITERATOR +// TITLE: microsoft's version of std::iterator +// DESCRIPTION: Microsoft's broken version of std::iterator +// is being used. + +#include <iterator> + +namespace boost_msvc_std_iterator{ + +int test() +{ + typedef std::iterator< + std::random_access_iterator_tag, + int + > iterator_type_2; + typedef std::reverse_iterator<const char*, const char> r_it; + + iterator_type_2::value_type v2 = 0; + iterator_type_2::iterator_category cat2; + // + // suppress some warnings: + // + (void)v2; + (void)cat2; + + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_has_winthreads.ipp b/src/boost/libs/config/test/boost_has_winthreads.ipp new file mode 100644 index 000000000..28ebff0c0 --- /dev/null +++ b/src/boost/libs/config/test/boost_has_winthreads.ipp @@ -0,0 +1,34 @@ +// (C) Copyright John Maddock 2001. +// 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_HAS_WINTHREADS +// TITLE: MS Windows threads +// DESCRIPTION: The platform supports MS Windows style threads. + +#include <windows.h> + + +namespace boost_has_winthreads{ + +int test() +{ + HANDLE h = CreateMutex(0, 0, 0); + if(h != NULL) + { + WaitForSingleObject(h, INFINITE); + ReleaseMutex(h); + CloseHandle(h); + } + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_adl_barrier.ipp b/src/boost/libs/config/test/boost_no_adl_barrier.ipp new file mode 100644 index 000000000..4065df096 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_adl_barrier.ipp @@ -0,0 +1,38 @@ +// (C) Copyright John Maddock 2008. +// 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_ADL_BARRIER +// TITLE: Working ADL barriers. +// DESCRIPTION: If the compiler correctly handles ADL. + +namespace boost_no_adl_barrier{ + +namespace xxx { + namespace nested { + struct aaa {}; + } + void begin(nested::aaa) {} +} + +namespace nnn { + void begin(xxx::nested::aaa) {} +} + +int test() +{ + using namespace nnn; + xxx::nested::aaa a; + begin(a); // ambiguous error in msvc-9.0 + + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_arg_dep_lookup.ipp b/src/boost/libs/config/test/boost_no_arg_dep_lookup.ipp new file mode 100644 index 000000000..d934d44aa --- /dev/null +++ b/src/boost/libs/config/test/boost_no_arg_dep_lookup.ipp @@ -0,0 +1,37 @@ +// (C) Copyright John Maddock 2001. +// 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_ARGUMENT_DEPENDENT_LOOKUP +// TITLE: Koenig lookup +// DESCRIPTION: Compiler does not implement +// argument-dependent lookup (also named Koenig lookup); +// see std::3.4.2 [basic.koenig.lookup] + + +namespace boost_no_argument_dependent_lookup{ + +namespace foobar{ + +struct test{}; + +void call_test(const test&) +{} + +} + +int test() +{ + foobar::test t; + call_test(t); + return 0; +} + + +} + + + diff --git a/src/boost/libs/config/test/boost_no_array_type_spec.ipp b/src/boost/libs/config/test/boost_no_array_type_spec.ipp new file mode 100644 index 000000000..3048669a5 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_array_type_spec.ipp @@ -0,0 +1,30 @@ +// (C) Copyright John Maddock 2001. +// (C) Copyright Aleksey Gurtovoy 2003. +// 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_ARRAY_TYPE_SPECIALIZATIONS +// TITLE: template specialisations of array types +// DESCRIPTION: If the compiler cannot handle template specialisations +// for array types + + +namespace boost_no_array_type_specializations{ + +template< typename T > struct is_array +{ +}; + +template< typename T, int N > struct is_array< T[N] > +{ +}; + +int test() +{ + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_auto_declarations.ipp b/src/boost/libs/config/test/boost_no_auto_declarations.ipp new file mode 100644 index 000000000..fa2fe268b --- /dev/null +++ b/src/boost/libs/config/test/boost_no_auto_declarations.ipp @@ -0,0 +1,26 @@ +// Copyright (C) 2009 Andrey Semashev +// Copyright (C) 2017 Dynatrace +// 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_AUTO_DECLARATIONS +// TITLE: C++0x auto declarators unavailable +// DESCRIPTION: The compiler does not support C++0x declarations of variables with automatically deduced type + +namespace boost_no_cxx11_auto_declarations { + +void check_f(short&) +{ +} + +int test() +{ + auto x = static_cast<short>(10); + check_f(x); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_auto_multidecl.ipp b/src/boost/libs/config/test/boost_no_auto_multidecl.ipp new file mode 100644 index 000000000..c55791d2e --- /dev/null +++ b/src/boost/libs/config/test/boost_no_auto_multidecl.ipp @@ -0,0 +1,26 @@ +// Copyright (C) 2009 Andrey Semashev +// Copyright (C) 2017 Dynatrace +// 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_AUTO_MULTIDECLARATIONS +// TITLE: C++0x auto multideclarators unavailable +// DESCRIPTION: The compiler does not support C++0x declarations of series of variables with automatically deduced type + +namespace boost_no_cxx11_auto_multideclarations { + +void check_f(short&, short*&) +{ +} + +int test() +{ + auto x = static_cast<short>(10), *y = &x; + check_f(x, y); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_auto_ptr.ipp b/src/boost/libs/config/test/boost_no_auto_ptr.ipp new file mode 100644 index 000000000..c86669cd6 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_auto_ptr.ipp @@ -0,0 +1,53 @@ +// (C) Copyright John Maddock 2001. +// 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_AUTO_PTR +// TITLE: std::auto_ptr +// DESCRIPTION: If the compiler / library supplies non-standard or broken +// std::auto_ptr. + +#include <memory> + +namespace boost_no_auto_ptr{ + +template <class T> +class my_ptr +{ + T* p; +public: + my_ptr(std::auto_ptr<T>& r) + { + p = r.release(); + } + my_ptr& operator=(std::auto_ptr<T>& r) + { + delete p; + p = r.release(); + return *this; + } + ~my_ptr() + { + delete p; + } +}; + + +int test() +{ + std::auto_ptr<int> ap1(new int); + my_ptr<int> mp(ap1); + std::auto_ptr<int> ap2(new int); + mp = ap2; + + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_bcb_partial_spec.ipp b/src/boost/libs/config/test/boost_no_bcb_partial_spec.ipp new file mode 100644 index 000000000..e78877c8e --- /dev/null +++ b/src/boost/libs/config/test/boost_no_bcb_partial_spec.ipp @@ -0,0 +1,53 @@ +// (C) Copyright Terje Slettebo 2002. +// 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) + + +// MACRO: BOOST_BCB_PARTIAL_SPECIALIZATION_BUG +// TITLE: Full partial specialization support. +// DESCRIPTION: Borland C++ Builder has some rather specific partial +// specialisation bugs which this code tests for. + + +#include <vector> + +namespace boost_bcb_partial_specialization_bug{ + + +template<class T1,class T2> +class Test +{ +}; + +template<class T1,class T2> +class Test<std::vector<T1>,T2> +{ +}; + +template<class T> +class Test<std::vector<int>,T> +{ +}; + +template <class T> +struct is_const{}; +template <class T> +struct is_const<T const>{}; + +int test() +{ + Test<std::vector<int>,double> v; + is_const<const int> ci; + (void)v; // warning suppression + (void)ci; + return 0; +} + + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_char16_t.ipp b/src/boost/libs/config/test/boost_no_char16_t.ipp new file mode 100644 index 000000000..4efff95e6 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_char16_t.ipp @@ -0,0 +1,32 @@ + +// (C) Copyright Beman Dawes 2008 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_CHAR16_T +// TITLE: C++0x char16_t unavailable +// DESCRIPTION: The compiler does not support C++0x char16_t + +namespace boost_no_cxx11_char16_t { + +// Microsoft VC++ 2010, and possibly other compilers, provides +// a typedef for char16_t rather than a new type. We want that +// to be an error, so provide an overloaded function that will +// be ambiguous if char16_t is just a typedef. +void f(const char16_t*){} +void f(const unsigned short*){} +void f(const unsigned int*){} +void f(const unsigned long*){} + +int test() +{ + const char16_t p(0); + f(&p); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_char32_t.ipp b/src/boost/libs/config/test/boost_no_char32_t.ipp new file mode 100644 index 000000000..9778bff03 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_char32_t.ipp @@ -0,0 +1,31 @@ +// (C) Copyright Beman Dawes 2008 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_CHAR32_T +// TITLE: C++0x char32_t unavailable +// DESCRIPTION: The compiler does not support C++0x char32_t + +namespace boost_no_cxx11_char32_t { + +// Microsoft VC++ 2010, and possibly other compilers, provides +// a typedef for char32_t rather than a new type. We want that +// to be an error, so provide an overloaded function that will +// be ambiguous if char16_t is just a typedef. +void f(const char32_t*){} +void f(const unsigned short*){} +void f(const unsigned int*){} +void f(const unsigned long*){} + +int test() +{ + const char32_t p(0); + f(&p); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_com_value_init.ipp b/src/boost/libs/config/test/boost_no_com_value_init.ipp new file mode 100644 index 000000000..47e9ff52a --- /dev/null +++ b/src/boost/libs/config/test/boost_no_com_value_init.ipp @@ -0,0 +1,1016 @@ +// (C) Copyright Niels Dekker 2010. +// 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_COMPLETE_VALUE_INITIALIZATION +// TITLE: No complete value-initialization +// DESCRIPTION: The C++ compiler does not to have implemented value-initialization completely. +// See also boost/libs/utility/value_init.htm#compiler_issues + +#include <iostream> + +// This test checks various forms of value-initialization: +// - doing subobject initialization inside a constructor +// - creating a temporary object by T() +// - creating a heap object by doing new T() +// It checks various DefaultConstructible types, including fundamental types, +// enum, union, pointer types, array types, POD and non-POD class types. For +// each type of object, a helper function is_value_initialized(const T&) tells +// whether the object is value-initialized. +// +// Note: It appeared insufficient to just check a single POD and a single +// non-POD class type, because some compilers correctly value-initialize some +// POD and some non-POD objects, while failing to value-initialize others. +// +// The test returns the number of encountered value-initialization failures. + +namespace boost_no_complete_value_initialization +{ + enum enum_type { negative_number = -1, magic_number = 42 }; + + class incomplete_class; + + typedef int (*function_ptr_type)(int); + typedef int (incomplete_class::*member_function_ptr_type)(int); + + // A POD struct. + struct pod_struct + { + enum_type e; + bool b; + char c; + unsigned char uc; + short s; + int i; + unsigned u; + long l; + float f; + double d; + long double ld; + void* p; + }; + + bool is_value_initialized(const pod_struct& arg) + { + return + arg.b == 0 && + arg.e == 0 && + arg.c == 0 && + arg.uc == 0 && + arg.s == 0 && + arg.i == 0 && + arg.u == 0 && + arg.l == 0 && + arg.f == 0 && + arg.d == 0 && + arg.p == 0; + } + + // A POD struct derived from another POD struct. + struct derived_pod_struct: pod_struct + { + int derived_data; + }; + + bool is_value_initialized(const derived_pod_struct& arg) + { + const pod_struct& base_subobject = arg; + return arg.derived_data == 0 && is_value_initialized(base_subobject); + } + + + struct empty_struct + { + }; + + + // A POD aggregate struct derived from an empty struct. + // Similar to struct Foo1 from Microsoft Visual C++ bug report 484295, + // "VC++ does not value-initialize members of derived classes without + // user-declared constructor", reported in 2009 by Sylvester Hesp: + // https://connect.microsoft.com/VisualStudio/feedback/details/484295 + struct derived_struct: empty_struct + { + int data; + }; + + bool is_value_initialized(const derived_struct& arg) + { + return arg.data == 0; + } + + + // A struct, having a bit-field. + struct bit_field_struct + { + bool b : 1; + char c : 7; + unsigned u: 8 * sizeof(unsigned) - 1; + }; + + bool is_value_initialized(const bit_field_struct& arg) + { + return arg.b == false && arg.c == '\0'&& arg.u == 0U; + } + + // A struct, having a function pointer. + struct function_ptr_struct + { + function_ptr_type data; + }; + + bool is_value_initialized(const function_ptr_struct& arg) + { + return arg.data == 0; + } + + // A struct, having a member function pointer. + struct member_function_ptr_struct + { + member_function_ptr_type data; + }; + + bool is_value_initialized(const member_function_ptr_struct& arg) + { + return arg.data == 0; + } + + struct int_pair_struct + { + int first; + int second; + }; + + typedef int int_pair_struct::*ptr_to_member_type; + + struct ptr_to_member_struct + { + ptr_to_member_type data; + }; + + bool is_value_initialized(const ptr_to_member_struct& arg) + { + return arg.data == 0; + } + + // A struct, having an int. Equivalent to the struct TData, from CodeGear bug + // report 51854, "Value-initialization: POD struct should be zero-initialized", + // reported by me (Niels Dekker, LKEB) in 2007: + // http://qc.embarcadero.com/wc/qcmain.aspx?d=51854 + struct int_struct + { + int data; + }; + + bool is_value_initialized(const int_struct& arg) + { + return arg.data == 0; + } + + + // A struct, having an int_struct. + struct int_struct_holder + { + int_struct data; + }; + + bool is_value_initialized(const int_struct_holder& arg) + { + return is_value_initialized(arg.data); + } + + + // A struct derived from int_struct. + struct derived_int_struct: int_struct + { + }; + + bool is_value_initialized(const derived_int_struct& arg) + { + return arg.data == 0; + } + + + struct char_array_struct + { + char data[42]; + }; + + bool is_value_initialized(const char_array_struct& arg) + { + for ( unsigned i = 0; i < sizeof(arg.data); ++i) + { + if ( arg.data[i] != 0 ) + { + return false; + } + } + return true; + } + + + class private_int_holder + { + private: + int m_data; + + friend bool is_value_initialized(const private_int_holder& arg) + { + return arg.m_data == 0; + } + }; + + + // Equivalent to the Stats class from GCC Bug 33916, + // "Default constructor fails to initialize array members", reported in 2007 by + // Michael Elizabeth Chastain: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33916 + class private_int_array_pair + { + friend bool is_value_initialized(const private_int_array_pair& arg); + private: + int first[12]; + int second[12]; + }; + + bool is_value_initialized(const private_int_array_pair& arg) + { + for ( unsigned i = 0; i < 12; ++i) + { + if ( (arg.first[i] != 0) || (arg.second[i] != 0) ) + { + return false; + } + } + return true; + } + + + union pod_struct_and_int_union + { + pod_struct first; + int second; + }; + + bool is_value_initialized(const pod_struct_and_int_union& arg) + { + // When a union is zero-initialized, its first non-static + // named data member is zero-initialized ([dcl.init]). + return is_value_initialized(arg.first); + } + + + union int_and_pod_struct_union + { + int first; + pod_struct second; + }; + + bool is_value_initialized(const int_and_pod_struct_union& arg) + { + return arg.first == 0; + } + + + // A class that holds a "magic" enum value. + // Note: This is not a POD class, because it has a user-defined + // default constructor. + class enum_holder + { + enum_type m_enum; + public: + + enum_holder() + : + m_enum(magic_number) + { + } + + bool is_value_initialized() const + { + return m_enum == magic_number; + } + }; + + bool is_value_initialized(const enum_holder& arg) + { + return arg.is_value_initialized(); + } + + + // An aggregate struct of a non-POD class and an int. + // Similar to struct A from Microsoft Visual C++ bug report 100744, + // "Value-initialization in new-expression", reported in 2005 by + // Pavel Kuznetsov (MetaCommunications Engineering): + // https://connect.microsoft.com/VisualStudio/feedback/details/100744 + struct enum_holder_and_int + { + enum_holder e; + int i; + }; + + bool is_value_initialized(const enum_holder_and_int& arg) + { + return arg.e.is_value_initialized() && arg.i == 0; + } + + class user_defined_copy_constructor_holder + { + public: + int data; + + user_defined_copy_constructor_holder() + : + data(0) + { + } + + user_defined_copy_constructor_holder(const user_defined_copy_constructor_holder& arg) + : + data(arg.data) + { + } + }; + + // An aggregate struct that has a data member which has a user-defined + // copy constructor and a data member of a scalar type. + // Similar to struct B from Microsoft Visual C++ bug report 499606, + // "Presence of copy constructor breaks member class initialization", + // reported in 2009 by Alex Vakulenko: + // https://connect.microsoft.com/VisualStudio/feedback/details/499606 + struct user_defined_copy_constructor_holder_and_int + { + user_defined_copy_constructor_holder first; + int second; + }; + + bool is_value_initialized(const user_defined_copy_constructor_holder_and_int& arg) + { + return arg.first.data == 0 && arg.second == 0; + } + + + // An class that has a private and a protected int data member. + class private_and_protected_int + { + private: + int private_int; + protected: + int protected_int; + public: + friend bool is_value_initialized(const private_and_protected_int& arg) + { + return arg.private_int == 0 && arg.protected_int == 0; + } + }; + + + class user_defined_destructor_holder + { + public: + int i; + ~user_defined_destructor_holder() + { + } + }; + + bool is_value_initialized(const user_defined_destructor_holder& arg) + { + return arg.i == 0; + } + + + class virtual_destructor_holder + { + public: + int i; + virtual ~virtual_destructor_holder() + { + } + }; + + bool is_value_initialized(const virtual_destructor_holder& arg) + { + return arg.i == 0; + } + + + // A class that is not a POD type. + class non_pod_class + { + private: + enum_holder m_enum_holder; + + public: + int i; + + virtual bool is_value_initialized() const + { + return m_enum_holder.is_value_initialized() && i == 0; + } + + virtual ~non_pod_class() {} + }; + + bool is_value_initialized(const non_pod_class& arg) + { + return arg.is_value_initialized(); + } + + + typedef char _2d_char_array_type[3][4]; + + bool is_value_initialized(const _2d_char_array_type& arg) + { + for(unsigned i = 0; i < sizeof(_2d_char_array_type); ++i) + { + if ((*arg)[i] != 0) + { + return false; + } + } + return true; + } + + typedef char _3d_char_array_type[5][6][7]; + + bool is_value_initialized(const _3d_char_array_type& arg) + { + for(unsigned i = 0; i < sizeof(_3d_char_array_type); ++i) + { + if ((**arg)[i] != 0) + { + return false; + } + } + return true; + } + + + + // Tells whether an object of a scalar type T is value-initialized. + template <class T> + bool is_value_initialized(const T& arg) + { + return arg == 0; + } + + + // Wraps a heap object that it has allocated by doing new T(). + template <class T> + class heap_object_wrapper + { + private: + T* const m_ptr; + + // The following function is intentionally left unimplemented + // (as if deleted, "= delete", in C++0x): + void operator=(heap_object_wrapper); + + public: + heap_object_wrapper() + : + m_ptr(new T()) + { + } + + ~heap_object_wrapper() + { + delete m_ptr; + } + + // The copy-constructor is intentionally left unimplemented. + heap_object_wrapper(const heap_object_wrapper&); + + bool is_wrapped_object_value_initialized() const + { + return (m_ptr != 0) && is_value_initialized(*m_ptr); + } + }; + + template <class T> + bool is_value_initialized(const heap_object_wrapper<T>& arg) + { + return arg.is_wrapped_object_value_initialized(); + } + + + // Returns zero when the specified object is value-initializated, and one otherwise. + // Prints a message to standard output if the value-initialization has failed. + template <class T> + unsigned failed_to_value_initialized(const T& object, const char *const object_name) + { + if ( is_value_initialized(object) ) + { + return 0u; + } + else + { + std::cout << "Note: Failed to value-initialize " << object_name << '.' << std::endl; + return 1u; + } + } + +// A macro that passed both the name and the value of the specified object to +// the function above here. +#define FAILED_TO_VALUE_INITIALIZE(value) failed_to_value_initialized(value, #value) + + + // value_initializer initializes each of its data members by means + // of an empty set of parentheses, and allows checking whether + // each of them is indeed value-initialized, as specified by + // the C++ Standard ([dcl.init]). + // + // Note: its base class, int_struct, is there to try to reproduce GCC Bug 30111, + // "Value-initialization of POD base class doesn't initialize members", reported + // by Jonathan Wakely in 2006: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30111 + class value_initializer: private int_struct + { + private: + enum_holder m_enum_holder; + enum_holder m_enum_holder_array[2]; + enum_type m_enum; + enum_type m_enum_array[2]; + bool m_bool; + bool m_bool_array[2]; + char m_char; + char m_char_array[2]; + _2d_char_array_type m_2d_char_array; + _3d_char_array_type m_3d_char_array; + unsigned char m_unsigned_char; + unsigned char m_unsigned_char_array[2]; + short m_short; + short m_short_array[2]; + int m_int; + int m_int_array[2]; + unsigned m_unsigned; + unsigned m_unsigned_array[2]; + long m_long; + long m_long_array[2]; + float m_float; + float m_float_array[2]; + double m_double; + double m_double_array[2]; + long double m_long_double; + long double m_long_double_array[2]; + void* m_void_ptr; + void* m_void_ptr_array[2]; + function_ptr_type m_function_ptr; + function_ptr_type m_function_ptr_array[2]; + function_ptr_struct m_function_ptr_struct; + function_ptr_struct m_function_ptr_struct_array[2]; + member_function_ptr_type m_member_function_ptr; + member_function_ptr_type m_member_function_ptr_array[2]; + member_function_ptr_struct m_member_function_ptr_struct; + member_function_ptr_struct m_member_function_ptr_struct_array[2]; + ptr_to_member_type m_ptr_to_member; + ptr_to_member_type m_ptr_to_member_array[2]; + ptr_to_member_struct m_ptr_to_member_struct; + ptr_to_member_struct m_ptr_to_member_struct_array[2]; + bit_field_struct m_bit_field_struct; + bit_field_struct m_bit_field_struct_array[2]; + int_struct m_int_struct; + int_struct m_int_struct_array[2]; + int_struct m_int_struct_holder; + int_struct m_int_struct_holder_array[2]; + pod_struct m_pod_struct; + pod_struct m_pod_struct_array[2]; + derived_pod_struct m_derived_pod_struct; + derived_pod_struct m_derived_pod_struct_array[2]; + derived_struct m_derived_struct; + derived_struct m_derived_struct_array[2]; + derived_int_struct m_derived_int_struct; + derived_int_struct m_derived_int_struct_array[2]; + private_int_holder m_private_int_holder; + private_int_holder m_private_int_holder_array[2]; + char_array_struct m_char_array_struct; + char_array_struct m_char_array_struct_array[2]; + private_int_array_pair m_private_int_array_pair; + private_int_array_pair m_private_int_array_pair_array[2]; + enum_holder_and_int m_enum_holder_and_int; + enum_holder_and_int m_enum_holder_and_int_array[2]; + private_and_protected_int m_private_and_protected_int; + private_and_protected_int m_private_and_protected_int_array[2]; + user_defined_copy_constructor_holder_and_int m_user_defined_copy_constructor_holder_and_int; + user_defined_copy_constructor_holder_and_int m_user_defined_copy_constructor_holder_and_int_array[2]; + user_defined_destructor_holder m_user_defined_destructor_holder; + user_defined_destructor_holder m_user_defined_destructor_holder_array[2]; + virtual_destructor_holder m_virtual_destructor_holder; + virtual_destructor_holder m_virtual_destructor_holder_array[2]; + non_pod_class m_non_pod; + non_pod_class m_non_pod_array[2]; + pod_struct_and_int_union m_pod_struct_and_int_union; + pod_struct_and_int_union m_pod_struct_and_int_union_array[2]; + int_and_pod_struct_union m_int_and_pod_struct_union; + int_and_pod_struct_union m_int_and_pod_struct_union_array[2]; + + public: + // Default constructor. Tries to value-initialize its base subobject and all + // of its data.members. + value_initializer() + : + // Note: CodeGear/Borland may produce a warning, W8039, for each data member + // whose type is an array type, saying "Constructor initializer list ignored". + // If it does, it probably won't value-initialize those arrays, as reported + // by me (Niels Dekker, LKEB) in 2010, report 83751, "Value-initialization: + // arrays should have each element value-initialized", + // http://qc.embarcadero.com/wc/qcmain.aspx?d=83751 + // On the other hand, Microsoft Visual C++ may produce warnings of type C4351, + // saying "new behavior: elements of array '...' will be default initialized", + // which is actually the right behavior! + int_struct(), + m_enum_holder(), + m_enum_holder_array(), + m_enum(), + m_enum_array(), + m_bool(), + m_bool_array(), + m_char(), + m_char_array(), + m_2d_char_array(), + m_3d_char_array(), + m_unsigned_char(), + m_unsigned_char_array(), + m_short(), + m_short_array(), + m_int(), + m_int_array(), + m_unsigned(), + m_unsigned_array(), + m_long(), + m_long_array(), + m_float(), + m_float_array(), + m_double(), + m_double_array(), + m_long_double(), + m_long_double_array(), + m_void_ptr(), + m_void_ptr_array(), + m_function_ptr(), + m_function_ptr_array(), + m_function_ptr_struct(), + m_function_ptr_struct_array(), + m_member_function_ptr(), + m_member_function_ptr_array(), + m_member_function_ptr_struct(), + m_member_function_ptr_struct_array(), + m_ptr_to_member(), + m_ptr_to_member_array(), + m_ptr_to_member_struct(), + m_ptr_to_member_struct_array(), + m_bit_field_struct(), + m_bit_field_struct_array(), + m_int_struct(), + m_int_struct_array(), + m_int_struct_holder(), + m_int_struct_holder_array(), + m_pod_struct(), + m_pod_struct_array(), + m_derived_pod_struct(), + m_derived_pod_struct_array(), + m_derived_struct(), + m_derived_struct_array(), + m_derived_int_struct(), + m_derived_int_struct_array(), + m_private_int_holder(), + m_private_int_holder_array(), + m_char_array_struct(), + m_char_array_struct_array(), + m_private_int_array_pair(), + m_private_int_array_pair_array(), + m_enum_holder_and_int(), + m_enum_holder_and_int_array(), + m_private_and_protected_int(), + m_private_and_protected_int_array(), + m_user_defined_copy_constructor_holder_and_int(), + m_user_defined_copy_constructor_holder_and_int_array(), + m_user_defined_destructor_holder(), + m_user_defined_destructor_holder_array(), + m_virtual_destructor_holder(), + m_virtual_destructor_holder_array(), + m_non_pod(), + m_non_pod_array(), + m_pod_struct_and_int_union(), + m_pod_struct_and_int_union_array(), + m_int_and_pod_struct_union(), + m_int_and_pod_struct_union_array() + { + } + + // Returns the number of failures. + unsigned check_value_initialization_of_subobjects() const + { + const unsigned num_failures = + FAILED_TO_VALUE_INITIALIZE(int_struct::data) + + FAILED_TO_VALUE_INITIALIZE(m_enum_holder) + + FAILED_TO_VALUE_INITIALIZE(m_enum_holder_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_enum_holder_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_enum) + + FAILED_TO_VALUE_INITIALIZE(m_enum_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_enum_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_bool) + + FAILED_TO_VALUE_INITIALIZE(m_bool_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_bool_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_char) + + FAILED_TO_VALUE_INITIALIZE(m_char_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_char_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_2d_char_array) + + FAILED_TO_VALUE_INITIALIZE(m_3d_char_array) + + FAILED_TO_VALUE_INITIALIZE(m_unsigned_char) + + FAILED_TO_VALUE_INITIALIZE(m_unsigned_char_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_unsigned_char_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_short) + + FAILED_TO_VALUE_INITIALIZE(m_short_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_short_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_int) + + FAILED_TO_VALUE_INITIALIZE(m_int_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_int_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_unsigned) + + FAILED_TO_VALUE_INITIALIZE(m_unsigned_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_unsigned_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_long) + + FAILED_TO_VALUE_INITIALIZE(m_long_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_long_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_float) + + FAILED_TO_VALUE_INITIALIZE(m_float_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_float_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_double) + + FAILED_TO_VALUE_INITIALIZE(m_double_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_double_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_long_double) + + FAILED_TO_VALUE_INITIALIZE(m_long_double_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_long_double_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_void_ptr) + + FAILED_TO_VALUE_INITIALIZE(m_void_ptr_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_void_ptr_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_function_ptr) + + FAILED_TO_VALUE_INITIALIZE(m_function_ptr_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_function_ptr_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_function_ptr_struct) + + FAILED_TO_VALUE_INITIALIZE(m_function_ptr_struct_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_function_ptr_struct_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_member_function_ptr) + + FAILED_TO_VALUE_INITIALIZE(m_member_function_ptr_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_member_function_ptr_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_member_function_ptr_struct) + + FAILED_TO_VALUE_INITIALIZE(m_member_function_ptr_struct_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_member_function_ptr_struct_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_ptr_to_member) + + FAILED_TO_VALUE_INITIALIZE(m_ptr_to_member_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_ptr_to_member_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_ptr_to_member_struct) + + FAILED_TO_VALUE_INITIALIZE(m_ptr_to_member_struct_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_ptr_to_member_struct_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_bit_field_struct) + + FAILED_TO_VALUE_INITIALIZE(m_bit_field_struct_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_bit_field_struct_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_int_struct) + + FAILED_TO_VALUE_INITIALIZE(m_int_struct_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_int_struct_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_int_struct_holder) + + FAILED_TO_VALUE_INITIALIZE(m_int_struct_holder_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_int_struct_holder_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_pod_struct) + + FAILED_TO_VALUE_INITIALIZE(m_pod_struct_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_pod_struct_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_derived_pod_struct) + + FAILED_TO_VALUE_INITIALIZE(m_derived_pod_struct_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_derived_pod_struct_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_derived_struct) + + FAILED_TO_VALUE_INITIALIZE(m_derived_struct_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_derived_struct_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_derived_int_struct) + + FAILED_TO_VALUE_INITIALIZE(m_derived_int_struct_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_derived_int_struct_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_private_int_holder) + + FAILED_TO_VALUE_INITIALIZE(m_private_int_holder_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_private_int_holder_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_char_array_struct) + + FAILED_TO_VALUE_INITIALIZE(m_char_array_struct_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_char_array_struct_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_private_int_array_pair) + + FAILED_TO_VALUE_INITIALIZE(m_private_int_array_pair_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_private_int_array_pair_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_enum_holder_and_int) + + FAILED_TO_VALUE_INITIALIZE(m_enum_holder_and_int_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_enum_holder_and_int_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_private_and_protected_int) + + FAILED_TO_VALUE_INITIALIZE(m_private_and_protected_int_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_private_and_protected_int_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_user_defined_copy_constructor_holder_and_int) + + FAILED_TO_VALUE_INITIALIZE(m_user_defined_copy_constructor_holder_and_int_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_user_defined_copy_constructor_holder_and_int_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_user_defined_destructor_holder) + + FAILED_TO_VALUE_INITIALIZE(m_user_defined_destructor_holder_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_user_defined_destructor_holder_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_virtual_destructor_holder) + + FAILED_TO_VALUE_INITIALIZE(m_virtual_destructor_holder_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_virtual_destructor_holder_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_non_pod) + + FAILED_TO_VALUE_INITIALIZE(m_non_pod_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_non_pod_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_pod_struct_and_int_union) + + FAILED_TO_VALUE_INITIALIZE(m_pod_struct_and_int_union_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_pod_struct_and_int_union_array[1]) + + FAILED_TO_VALUE_INITIALIZE(m_int_and_pod_struct_union) + + FAILED_TO_VALUE_INITIALIZE(m_int_and_pod_struct_union_array[0]) + + FAILED_TO_VALUE_INITIALIZE(m_int_and_pod_struct_union_array[1]); + return num_failures; + } + }; + + // Checks value-initialization of a number of small temporary objects. + // Returns the number of failures. + unsigned check_value_initialization_of_temporaries() + { + typedef long double long_double_type; + typedef unsigned char unsigned_char_type; + typedef void* void_ptr_type; + + const unsigned num_failures = + FAILED_TO_VALUE_INITIALIZE(enum_holder()) + + FAILED_TO_VALUE_INITIALIZE(enum_type()) + + FAILED_TO_VALUE_INITIALIZE(bool()) + + FAILED_TO_VALUE_INITIALIZE(char()) + + FAILED_TO_VALUE_INITIALIZE(unsigned_char_type()) + + FAILED_TO_VALUE_INITIALIZE(short()) + + FAILED_TO_VALUE_INITIALIZE(int()) + + FAILED_TO_VALUE_INITIALIZE(unsigned()) + + FAILED_TO_VALUE_INITIALIZE(long()) + + FAILED_TO_VALUE_INITIALIZE(float()) + + FAILED_TO_VALUE_INITIALIZE(double()) + + FAILED_TO_VALUE_INITIALIZE(long_double_type()) + + FAILED_TO_VALUE_INITIALIZE(void_ptr_type()) + + FAILED_TO_VALUE_INITIALIZE(bit_field_struct()) + + FAILED_TO_VALUE_INITIALIZE(function_ptr_type()) + + FAILED_TO_VALUE_INITIALIZE(function_ptr_struct()) + + FAILED_TO_VALUE_INITIALIZE(member_function_ptr_type()) + + FAILED_TO_VALUE_INITIALIZE(member_function_ptr_struct()) + + FAILED_TO_VALUE_INITIALIZE(ptr_to_member_type()) + + FAILED_TO_VALUE_INITIALIZE(ptr_to_member_struct()) + + FAILED_TO_VALUE_INITIALIZE(int_struct()) + + FAILED_TO_VALUE_INITIALIZE(int_struct_holder()) + + FAILED_TO_VALUE_INITIALIZE(pod_struct()) + + FAILED_TO_VALUE_INITIALIZE(derived_pod_struct()) + + FAILED_TO_VALUE_INITIALIZE(derived_struct()) + + FAILED_TO_VALUE_INITIALIZE(derived_int_struct()) + + FAILED_TO_VALUE_INITIALIZE(private_int_holder()) + + FAILED_TO_VALUE_INITIALIZE(char_array_struct()) + + FAILED_TO_VALUE_INITIALIZE(private_int_array_pair()) + + // IBM's XL V10.1.0.0 may fail to value-initialize a temporary of a non-POD + // type like enum_holder_and_int, virtual_destructor_holder, or non_pod_class, + // as appeared at the Boost Config/trunk regression page in April 2010. + // Michael Wong (IBM Canada Ltd) confirmed the issue to me (Niels Dekker, LKEB), + // and gave it high priority. + FAILED_TO_VALUE_INITIALIZE(enum_holder_and_int()) + + FAILED_TO_VALUE_INITIALIZE(private_and_protected_int()) + + FAILED_TO_VALUE_INITIALIZE(user_defined_copy_constructor_holder_and_int()) + + // The following line, doing user_defined_destructor_holder(), causes + // a compilation error on Embarcadero 2010 (Borland/CodeGear 6.21), + // as reported by me (Niels Dekker, LKEB) in 2010, bug report 83851, + // "Value-initialized temporary triggers internal backend error C1798", + // http://qc.embarcadero.com/wc/qcmain.aspx?d=83851 + FAILED_TO_VALUE_INITIALIZE(user_defined_destructor_holder()) + + FAILED_TO_VALUE_INITIALIZE(virtual_destructor_holder()) + + FAILED_TO_VALUE_INITIALIZE(non_pod_class()) + + FAILED_TO_VALUE_INITIALIZE(pod_struct_and_int_union()) + + FAILED_TO_VALUE_INITIALIZE(int_and_pod_struct_union()); + return num_failures; + } + + // Checks value-initialization of small heap objects. + // Returns the number of failures. + unsigned check_value_initialization_of_heap_objects() + { + const unsigned num_failures = + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<enum_holder>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<enum_type>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<bool>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<char>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<unsigned char>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<short>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<int>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<unsigned>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<long>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<float>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<double>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<long double>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<void*>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<function_ptr_type>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<function_ptr_struct>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<member_function_ptr_type>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<member_function_ptr_struct>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<ptr_to_member_type>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<ptr_to_member_struct>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<bit_field_struct>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<int_struct>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<int_struct>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<pod_struct>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<derived_pod_struct>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<derived_struct>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<derived_int_struct>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<char_array_struct>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<private_int_holder>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<private_int_array_pair>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<enum_holder_and_int>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<private_and_protected_int>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<user_defined_copy_constructor_holder_and_int>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<user_defined_destructor_holder>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<virtual_destructor_holder>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<non_pod_class>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<pod_struct_and_int_union>() ) + + FAILED_TO_VALUE_INITIALIZE( heap_object_wrapper<int_and_pod_struct_union>() ); + return num_failures; + } + + // Equivalent to the dirty_stack() function from GCC Bug 33916, + // "Default constructor fails to initialize array members", reported in 2007 by + // Michael Elizabeth Chastain: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33916 + void dirty_stack() + { + unsigned char array_on_stack[sizeof(value_initializer) + 256]; + for (unsigned i = 0; i < sizeof(array_on_stack); ++i) + { + array_on_stack[i] = 0x11; + } + } + + + // Checks value-initialization of the subobjects of a temporary object, + // an object on the stack, an object on the heap; furthermore it checks + // value-initialization of a number of smaller temporary objects and + // heap objects. + int test() + { + unsigned total_num_failures = 0; + + dirty_stack(); + const unsigned num_failures_of_subobjects_of_a_temporary = + value_initializer().check_value_initialization_of_subobjects(); + + total_num_failures += num_failures_of_subobjects_of_a_temporary; + if ( total_num_failures > 0 ) + { + std::cout << "- Number of subobject initialization failures of a temporary: " + << num_failures_of_subobjects_of_a_temporary << std::endl; + } + dirty_stack(); + value_initializer object_on_stack; + const unsigned num_failures_of_subobjects_on_stack = + object_on_stack.check_value_initialization_of_subobjects(); + + total_num_failures += num_failures_of_subobjects_on_stack; + if ( total_num_failures > 0 ) + { + std::cout << "- Number of subobject initialization failures on the stack: " + << num_failures_of_subobjects_on_stack << std::endl; + } + const value_initializer* const ptr = new value_initializer(); + const unsigned num_failures_of_subobjects_on_heap = ptr->check_value_initialization_of_subobjects(); + delete ptr; + + total_num_failures += num_failures_of_subobjects_on_heap; + if ( total_num_failures > 0 ) + { + std::cout << "- Number of subobject initialization failures on the heap: " + << num_failures_of_subobjects_on_heap << std::endl; + } + + dirty_stack(); + const unsigned num_failures_of_temporaries = check_value_initialization_of_temporaries(); + + total_num_failures += num_failures_of_temporaries; + if ( total_num_failures > 0 ) + { + std::cout << "- Number of initialization failures of temporary objects: " + << num_failures_of_temporaries << std::endl; + } + + const unsigned num_failures_of_heap_objects = check_value_initialization_of_heap_objects(); + + total_num_failures += num_failures_of_heap_objects; + if ( total_num_failures > 0 ) + { + std::cout << "- Number of failures of heap objects: " + << num_failures_of_heap_objects << std::endl; + } + + if ( total_num_failures > 0 ) + { + std::cout << "-- Total number of initialization failures (" + << num_failures_of_subobjects_of_a_temporary << '+' + << num_failures_of_subobjects_on_stack << '+' + << num_failures_of_subobjects_on_heap << '+' + << num_failures_of_temporaries << '+' + << num_failures_of_heap_objects << "): " + << total_num_failures + << "\nDetected by boost_no_complete_value_initialization::test() revision 32." + << std::endl; + } + return static_cast<int>(total_num_failures); + } + +} // End of namespace. diff --git a/src/boost/libs/config/test/boost_no_constexpr.ipp b/src/boost/libs/config/test/boost_no_constexpr.ipp new file mode 100644 index 000000000..1f3a96ee6 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_constexpr.ipp @@ -0,0 +1,88 @@ +// (C) Copyright Beman Dawes 2008 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_CONSTEXPR +// TITLE: C++0x constexpr unavailable +// DESCRIPTION: The compiler does not support C++0x constexpr + +namespace boost_no_cxx11_constexpr { + +void quiet_warning(int){} + +constexpr int square(int x) { return x * x; } // from N2235 + +// from 5.19: +constexpr const int* addr(const int& ir) { return &ir; } +static const int x = 5; +constexpr const int* xp = addr(x); + +struct A +{ + constexpr A(int i) : val(i) { } + constexpr operator int()const { return val; } + constexpr operator long()const { return 43; } +private: + int val; +}; + +template<int> struct X { }; + +constexpr const A a = 42; + +X<a> xx; // OK: unique conversion to int + +// virtual function +struct B +{ + virtual void vf() {} +}; +struct C : B +{ + constexpr C() {} +}; + +// aggregate initialization +struct D +{ + int val[2]; + constexpr D() : val() {} +}; + +// virtual base +struct E +{ +}; +struct F : virtual E +{ +}; +constexpr F& f(F& out) { return out; } + +namespace whatever{}; + +constexpr int factorial(int i) +{ + typedef int value_type; + using namespace whatever; + return i <= 1 ? 1 : i * factorial(value_type(i-1)); +} + +int test() +{ + constexpr int i = square(5) + factorial(10); + quiet_warning(i); + + switch (i) + { + case a: + break; + } + + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_ctype_functions.ipp b/src/boost/libs/config/test/boost_no_ctype_functions.ipp new file mode 100644 index 000000000..ec23d594a --- /dev/null +++ b/src/boost/libs/config/test/boost_no_ctype_functions.ipp @@ -0,0 +1,44 @@ +// (C) Copyright John Maddock 2001. +// 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_CTYPE_FUNCTIONS +// TITLE: functions in <ctype.h> +// DESCRIPTION: The Platform does not provide functions for the character- +// classifying operations in <ctype.h>. Some platforms provide +// macros and don't provide functions. Under C++ it's an error +// to provide the macros at all, but that's a separate issue. + +#include <ctype.h> + +namespace boost_no_ctype_functions { + +extern "C" { + typedef int (* character_classify_function)(int); +} + +void pass_function(character_classify_function) +{ +} + +int test() +{ + pass_function(isalpha); + pass_function(isalnum); + pass_function(iscntrl); + pass_function(isdigit); + pass_function(isgraph); + pass_function(islower); + pass_function(isprint); + pass_function(ispunct); + pass_function(isspace); + pass_function(isupper); + pass_function(isxdigit); + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_cv_spec.ipp b/src/boost/libs/config/test/boost_no_cv_spec.ipp new file mode 100644 index 000000000..d2fc6311b --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cv_spec.ipp @@ -0,0 +1,47 @@ +// (C) Copyright John Maddock 2001. +// 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_CV_SPECIALIZATIONS +// TITLE: template specialisations of cv-qualified types +// DESCRIPTION: If template specialisations for cv-qualified types +// conflict with a specialisation for a cv-unqualififed type. + + +namespace boost_no_cv_specializations{ + +template <class T> +struct is_int +{ +}; + +template <> +struct is_int<int> +{}; + +template <> +struct is_int<const int> +{}; + +template <> +struct is_int<volatile int> +{}; + +template <> +struct is_int<const volatile int> +{}; + +int test() +{ + return 0; +} + + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_cv_void_spec.ipp b/src/boost/libs/config/test/boost_no_cv_void_spec.ipp new file mode 100644 index 000000000..c3bc25481 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cv_void_spec.ipp @@ -0,0 +1,45 @@ +// (C) Copyright John Maddock 2001. +// 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_CV_VOID_SPECIALIZATIONS +// TITLE: template specialisations of cv-qualified void +// DESCRIPTION: If template specialisations for cv-void types +// conflict with a specialisation for void. + + +namespace boost_no_cv_void_specializations{ + +template <class T> +struct is_void +{ +}; + +template <> +struct is_void<void> +{}; + +template <> +struct is_void<const void> +{}; + +template <> +struct is_void<volatile void> +{}; + +template <> +struct is_void<const volatile void> +{}; + +int test() +{ + return 0; +} + +} + + + diff --git a/src/boost/libs/config/test/boost_no_cwchar.ipp b/src/boost/libs/config/test/boost_no_cwchar.ipp new file mode 100644 index 000000000..698dbd635 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cwchar.ipp @@ -0,0 +1,33 @@ +// (C) Copyright John Maddock 2001. +// 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_CWCHAR +// TITLE: <wchar.h> and <cwchar> +// DESCRIPTION: The Platform does not provide <wchar.h> and <cwchar>. + +#include <cwchar> +#include <wchar.h> + +namespace boost_no_cwchar{ + +int test() +{ + wchar_t c1[2] = { 0 }; + wchar_t c2[2] = { 0 }; + if(wcscmp(c1,c2) || wcslen(c1)) return -1; + //wcscpy(c1,c2); + wcsxfrm(c1,c2,0); + return 0; +} + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_no_cwctype.ipp b/src/boost/libs/config/test/boost_no_cwctype.ipp new file mode 100644 index 000000000..d6a7355a2 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cwctype.ipp @@ -0,0 +1,47 @@ +// (C) Copyright John Maddock 2001. +// 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_CWCTYPE +// TITLE: <wctype.h> and <cwctype> +// DESCRIPTION: The Platform does not provide <wctype.h> and <cwctype>. + +// +// Note that some platforms put these prototypes in the wrong headers, +// we have to include pretty well all the string headers on the chance that +// one of them will contain what we want! +// +#include <cwctype> +#include <wctype.h> +#include <cwchar> +#include <wchar.h> +#include <cctype> +#include <ctype.h> + +namespace boost_no_cwctype{ + +int test() +{ + if(!(iswalpha(L'a') && + iswcntrl(L'\r') && + iswdigit(L'2') && + iswlower(L'a') && + iswpunct(L',') && + iswspace(L' ') && + iswupper(L'A') && + iswxdigit(L'A') + )) return -1; + if(L'a' != towlower(L'A')) return -1; + return 0; +} + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_no_cxx11_addressof.ipp b/src/boost/libs/config/test/boost_no_cxx11_addressof.ipp new file mode 100644 index 000000000..4f0a5e3cd --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_addressof.ipp @@ -0,0 +1,28 @@ +// (C) Copyright John Maddock 2012 +// (C) Copyright Peter Dimov 2014 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_ADDRESSOF +// TITLE: C++11 <memory> doesn't have a working std::addressof +// DESCRIPTION: The compiler does not support the function std::addressof added to <memory> + +#include <memory> + +namespace boost_no_cxx11_addressof { + +void x3() +{ +} + +int test() +{ + int x1, x2[3]; + return std::addressof(x1) != &x1 || std::addressof(x2) != &x2 || std::addressof(x3) != &x3; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_alignas.ipp b/src/boost/libs/config/test/boost_no_cxx11_alignas.ipp new file mode 100644 index 000000000..afd428f63 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_alignas.ipp @@ -0,0 +1,36 @@ +// (C) Copyright Andrey Semashev 2013 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_ALIGNAS +// TITLE: C++11 alignas keyword. +// DESCRIPTION: The compiler does not support the C++11 alignment specification with alignas keyword. + +namespace boost_no_cxx11_alignas { + +struct alignas(16) my_data1 +{ + char data[10]; +}; + +struct alignas(double) my_data2 +{ + char data[16]; +}; + +my_data1 dummy1[2]; +my_data2 dummy2; +alignas(16) char dummy3[10]; +alignas(double) char dummy4[32]; + +int test() +{ + // TODO: Test that the data is actually aligned on platforms with uintptr_t + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_allocator.ipp b/src/boost/libs/config/test/boost_no_cxx11_allocator.ipp new file mode 100644 index 000000000..84ec78eec --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_allocator.ipp @@ -0,0 +1,44 @@ +// (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 more information. + +// MACRO: BOOST_NO_CXX11_ALLOCATOR +// TITLE: C++11 <memory> doesn't have C++0x allocator support +// DESCRIPTION: The compiler does not support the C++11 allocator features added to <memory> + +#include <memory> + +namespace boost_no_cxx11_allocator { + +int test() +{ + std::pointer_traits<char*>* p = 0; + (void) p; + //std::pointer_safety s = std::relaxed; + + //char* (*l_undeclare_reachable)(char *p) = std::undeclare_reachable; + //void (*l_declare_no_pointers)(char *p, size_t n) = std::declare_no_pointers; + //void (*l_undeclare_no_pointers)(char *p, size_t n) = std::undeclare_no_pointers; + //std::pointer_safety (*l_get_pointer_safety)() = std::get_pointer_safety; + //void* (*l_align)(std::size_t alignment, std::size_t size, void *&ptr, std::size_t& space) = std::align; + std::allocator_arg_t aat; + std::uses_allocator<int, std::allocator<int> > ua; + std::allocator_traits<std::allocator<int> > at; + std::allocator<int> ia; + std::allocator_traits<std::allocator<int> >::rebind_alloc<void*> ra(ia); + std::allocator<void*>* pva = &ra; + std::allocator_traits<std::allocator<int> >::rebind_traits<void*>::pointer pt; + + (void)aat; + (void)ua; + (void)at; + (void)pva; + (void)pt; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_atomic_sp.ipp b/src/boost/libs/config/test/boost_no_cxx11_atomic_sp.ipp new file mode 100644 index 000000000..42c9cb7f4 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_atomic_sp.ipp @@ -0,0 +1,36 @@ +// (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 more information. + +// MACRO: BOOST_NO_CXX11_ATOMIC_SMART_PTR +// TITLE: C++11 <memory> does not support atomic smart pointer operations +// DESCRIPTION: The compiler does not support the C++11 atomic smart pointer features added to <memory> + +#include <memory> + +namespace boost_no_cxx11_atomic_smart_ptr { + +int test() +{ + std::shared_ptr<int> spi(new int), spi2(new int); + spi = std::static_pointer_cast<int>(spi); + + atomic_is_lock_free(&spi); + atomic_load(&spi); + atomic_load_explicit(&spi, std::memory_order_relaxed); + atomic_store(&spi, spi2); + atomic_store_explicit(&spi, spi2, std::memory_order_relaxed); + atomic_exchange(&spi, spi2); + atomic_compare_exchange_weak(&spi, &spi2, spi); + atomic_compare_exchange_strong(&spi, &spi2, spi); + atomic_compare_exchange_weak_explicit(&spi, &spi2, spi, std::memory_order_relaxed, std::memory_order_relaxed); + atomic_compare_exchange_strong_explicit(&spi, &spi2, spi, std::memory_order_relaxed, std::memory_order_relaxed); + + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_defaulted_moves.ipp b/src/boost/libs/config/test/boost_no_cxx11_defaulted_moves.ipp new file mode 100644 index 000000000..9bf276336 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_defaulted_moves.ipp @@ -0,0 +1,25 @@ +// (C) Copyright Andrzej Krzemienski 2018 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_DEFAULTED_MOVES +// TITLE: C++0x defaulting of move constructor/assignment unavailable +// DESCRIPTION: The compiler does not support C++0x defaulting of move constructor/assignment + +namespace boost_no_cxx11_defaulted_moves { + + struct foo { + foo(foo&&) = default; + foo& operator=(foo&&) = default; + }; + + int test() + { + return 0; + } + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_exception.ipp b/src/boost/libs/config/test/boost_no_cxx11_exception.ipp new file mode 100644 index 000000000..543e58445 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_exception.ipp @@ -0,0 +1,47 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_EXCEPTION +// TITLE: C++11 header <exception> not compatible +// DESCRIPTION: The standard library does not provide a C++11 compatible version of <exception>. + +#include <exception> + +namespace boost_no_cxx11_hdr_exception { + + int test() + { +#ifdef BOOST_NO_EXCEPTIONS + using std::exception_ptr; + using std::current_exception; + using std::rethrow_exception; + return 0; +#else + std::exception_ptr ep; + try + { + throw 42; + } + catch (...) + { + ep = std::current_exception(); + } + try + { + std::rethrow_exception(ep); + } + catch (int i) + { + // return zero on success + return i == 42 ? 0 : 1; + } + return 1; +#endif + } + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_final.ipp b/src/boost/libs/config/test/boost_no_cxx11_final.ipp new file mode 100644 index 000000000..0a0073391 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_final.ipp @@ -0,0 +1,41 @@ +// (C) Copyright Agustin Berge 2014 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_FINAL +// TITLE: C++11 final class-virt-specifier +// DESCRIPTION: The compiler does not support the C++ class-virt-specifier final + +namespace boost_no_cxx11_final { + +struct X final {}; + +struct abstract +{ + virtual int f() = 0; +}; + +struct derived : public abstract +{ + virtual int f() final + { + return 0; + } +}; + +int check(abstract* pa) +{ + return pa->f(); +} + +int test() +{ + derived d; + return check(&d); +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_array.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_array.ipp new file mode 100644 index 000000000..7bbead1c1 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_array.ipp @@ -0,0 +1,23 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_ARRAY +// TITLE: C++0x header <array> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <array> + +#include <array> + +namespace boost_no_cxx11_hdr_array { + +int test() +{ + std::array<int, 3> a = {{ 1, 2, 3 }}; + return a.size() == 3 ? 0 : 1; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_atomic.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_atomic.ipp new file mode 100644 index 000000000..ceabb6507 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_atomic.ipp @@ -0,0 +1,98 @@ +// (C) Copyright John Maddock 2013 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_ATOMIC +// TITLE: C++11 <atomic> header is either not present or too broken to be used +// DESCRIPTION: The compiler does not support the C++11 header <atomic> + +#include <atomic> + +#if !defined(ATOMIC_BOOL_LOCK_FREE) || !defined(ATOMIC_CHAR_LOCK_FREE) || !defined(ATOMIC_CHAR16_T_LOCK_FREE) \ + || !defined(ATOMIC_CHAR32_T_LOCK_FREE) || !defined(ATOMIC_WCHAR_T_LOCK_FREE) || !defined(ATOMIC_SHORT_LOCK_FREE)\ + || !defined(ATOMIC_INT_LOCK_FREE) || !defined(ATOMIC_LONG_LOCK_FREE) || !defined(ATOMIC_LLONG_LOCK_FREE)\ + || !defined(ATOMIC_POINTER_LOCK_FREE) +# error "required macros not defined" +#endif + +namespace boost_no_cxx11_hdr_atomic { + + void consume(std::memory_order) + {} + + int test() + { + consume(std::memory_order_relaxed); + consume(std::memory_order_consume); + consume(std::memory_order_acquire); + consume(std::memory_order_release); + consume(std::memory_order_acq_rel); + consume(std::memory_order_seq_cst); + + std::atomic<int> a1; + std::atomic<unsigned> a2; + std::atomic<int*> a3; + a1.is_lock_free(); + a1.store(1); + a1.load(); + a1.exchange(2); + int v; + a1.compare_exchange_weak(v, 2, std::memory_order_relaxed, std::memory_order_relaxed); + a1.compare_exchange_strong(v, 2, std::memory_order_relaxed, std::memory_order_relaxed); + a1.fetch_add(2); + a1.fetch_sub(3); + a1.fetch_and(3); + a1.fetch_or(1); + a1.fetch_xor(1); + a1++; + ++a1; + a1--; + --a1; + a1 += 2; + a1 -= 2; + a1 &= 1; + a1 |= 2; + a1 ^= 3; + + a2 = 0u; + + a3.store(&v); + a3.fetch_add(1); + a3.fetch_sub(1); + ++a3; + --a3; + a3++; + a3--; + a3 += 1; + a3 -= 1; + + std::atomic_is_lock_free(&a1); + // This produces linker errors on Mingw32 for some reason, probably not required anyway for most uses?? + //std::atomic_init(&a1, 2); + std::atomic_store(&a1, 3); + std::atomic_store_explicit(&a1, 3, std::memory_order_relaxed); + std::atomic_load(&a1); + std::atomic_load_explicit(&a1, std::memory_order_relaxed); + std::atomic_exchange(&a1, 3); + std::atomic_compare_exchange_weak(&a1, &v, 2); + std::atomic_compare_exchange_strong(&a1, &v, 2); + std::atomic_compare_exchange_weak_explicit(&a1, &v, 2, std::memory_order_relaxed, std::memory_order_relaxed); + std::atomic_compare_exchange_strong_explicit(&a1, &v, 2, std::memory_order_relaxed, std::memory_order_relaxed); + + std::atomic_flag f = ATOMIC_FLAG_INIT; + f.test_and_set(std::memory_order_relaxed); + f.test_and_set(); + f.clear(std::memory_order_relaxed); + f.clear(); + + std::atomic_thread_fence(std::memory_order_relaxed); + std::atomic_signal_fence(std::memory_order_relaxed); + + return 0; + } + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_chrono.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_chrono.ipp new file mode 100644 index 000000000..701b024e7 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_chrono.ipp @@ -0,0 +1,31 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_CHRONO +// TITLE: C++0x header <chrono> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <chrono> + +#include <chrono> + +namespace boost_no_cxx11_hdr_chrono { + +int test() +{ + using std::chrono::nanoseconds; + using std::chrono::microseconds; + using std::chrono::milliseconds; + using std::chrono::seconds; + using std::chrono::minutes; + using std::chrono::hours; + using std::chrono::system_clock; + using std::chrono::steady_clock; + using std::chrono::high_resolution_clock; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_codecvt.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_codecvt.ipp new file mode 100644 index 000000000..428fbb4e1 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_codecvt.ipp @@ -0,0 +1,29 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_CODECVT +// TITLE: C++0x header <codecvt> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <codecvt> + +#include <codecvt> +#include <locale> // for wstring_convert + +namespace boost_no_cxx11_hdr_codecvt { + +int test() +{ + using std::codecvt_utf8; + using std::codecvt_utf16; + using std::codecvt_utf8_utf16; +#ifndef BOOST_NO_CXX11_CHAR16_T + std::wstring_convert<std::codecvt_utf8<char16_t>, char16_t> test; +#endif + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_condition_variable.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_condition_variable.ipp new file mode 100644 index 000000000..d266e8de5 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_condition_variable.ipp @@ -0,0 +1,24 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_CONDITION_VARIABLE +// TITLE: C++0x header <condition_variable> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <condition_variable> + +#include <condition_variable> + +namespace boost_no_cxx11_hdr_condition_variable { + +int test() +{ + using std::condition_variable; + using std::condition_variable_any; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_forward_list.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_forward_list.ipp new file mode 100644 index 000000000..0ef465d86 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_forward_list.ipp @@ -0,0 +1,23 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_FORWARD_LIST +// TITLE: C++0x header <forward_list> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <forward_list> + +#include <forward_list> + +namespace boost_no_cxx11_hdr_forward_list { + +int test() +{ + std::forward_list<int> l(2u, 2); + return *l.begin() == 2 ? 0 : 1; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_future.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_future.ipp new file mode 100644 index 000000000..b19302d0e --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_future.ipp @@ -0,0 +1,34 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_FUTURE +// TITLE: C++0x header <future> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <future> + +#include <future> + +namespace boost_no_cxx11_hdr_future { + +int test() +{ + using std::is_error_code_enum; + using std::make_error_code; + using std::make_error_condition; + using std::future_category; + using std::future_error; + using std::promise; + using std::promise; + using std::promise; + using std::future; + using std::shared_future; + using std::packaged_task; // undefined + using std::async; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_initializer_list.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_initializer_list.ipp new file mode 100644 index 000000000..e7ee83894 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_initializer_list.ipp @@ -0,0 +1,27 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_INITIALIZER_LIST +// TITLE: C++0x header <initializer_list> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <initializer_list> + +#include <initializer_list> + +namespace boost_no_cxx11_hdr_initializer_list { + +void foo(const std::initializer_list<const char*>&) +{ +} + +int test() +{ + foo( { "a", "b", "c" } ); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_mutex.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_mutex.ipp new file mode 100644 index 000000000..acc1b1e92 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_mutex.ipp @@ -0,0 +1,26 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_MUTEX +// TITLE: C++0x header <mutex> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <mutex> + +#include <mutex> + +namespace boost_no_cxx11_hdr_mutex { + +int test() +{ + using std::mutex; + using std::recursive_mutex; + using std::timed_mutex; + using std::recursive_timed_mutex; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_random.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_random.ipp new file mode 100644 index 000000000..acc139576 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_random.ipp @@ -0,0 +1,31 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_RANDOM +// TITLE: C++0x header <random> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <random> + +#include <random> + +namespace boost_no_cxx11_hdr_random { + +int test() +{ + using std::minstd_rand0; + using std::mt19937; + using std::mt19937_64; + using std::ranlux24_base; + using std::ranlux48_base; + using std::ranlux24; + using std::ranlux48; + using std::knuth_b; + using std::default_random_engine; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_ratio.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_ratio.ipp new file mode 100644 index 000000000..f17dd5dea --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_ratio.ipp @@ -0,0 +1,37 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_RATIO +// TITLE: C++0x header <ratio> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <ratio> + +#include <ratio> + +namespace boost_no_cxx11_hdr_ratio { + +int test() +{ + using std::atto; + using std::femto; + using std::pico; + using std::nano; + using std::micro; + using std::milli; + using std::centi; + using std::deci; + using std::deca; + using std::hecto; + using std::kilo; + using std::mega; + using std::tera; + using std::peta; + using std::exa; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_regex.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_regex.ipp new file mode 100644 index 000000000..1901482cd --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_regex.ipp @@ -0,0 +1,29 @@ +// (C) Copyright Beman Dawes 2009 +// Copyright (c) Microsoft Corporation +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_REGEX +// TITLE: C++0x header <regex> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <regex> + +#include <regex> + +namespace boost_no_cxx11_hdr_regex { + +int test() +{ + using std::regex; + using std::wregex; + + regex e("\\d+"); + wregex we(L"\\d+"); + std::string s("123456"); + std::wstring ws(L"123456"); + return regex_match(s, e) && regex_match(ws, we) ? 0 : 1; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_system_error.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_system_error.ipp new file mode 100644 index 000000000..50ced6c1e --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_system_error.ipp @@ -0,0 +1,26 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_SYSTEM_ERROR +// TITLE: C++0x header <system_error> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <system_error> + +#include <system_error> + +namespace boost_no_cxx11_hdr_system_error { + +int test() +{ + using std::error_category; + using std::error_code; + using std::error_condition; + using std::system_error; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_thread.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_thread.ipp new file mode 100644 index 000000000..612ddc33a --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_thread.ipp @@ -0,0 +1,27 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_THREAD +// TITLE: C++0x header <thread> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <thread> + +#include <thread> + +namespace boost_no_cxx11_hdr_thread { + +int test() +{ + using std::thread; + using std::this_thread::get_id; + using std::this_thread::yield; + using std::this_thread::sleep_until; + using std::this_thread::sleep_for; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_tuple.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_tuple.ipp new file mode 100644 index 000000000..6911ee345 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_tuple.ipp @@ -0,0 +1,24 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_TUPLE +// TITLE: C++0x header <tuple> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <tuple> + +#include <tuple> + +namespace boost_no_cxx11_hdr_tuple { + +int test() +{ + std::tuple<int, int, long> t(0, 1, 2); + (void)t; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_type_traits.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_type_traits.ipp new file mode 100644 index 000000000..d4862a0c8 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_type_traits.ipp @@ -0,0 +1,109 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_TYPE_TRAITS +// TITLE: C++0x header <type_traits> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <type_traits> + +#include <type_traits> + +namespace boost_no_cxx11_hdr_type_traits { + +int test() +{ + using std::integral_constant; + using std::true_type; + using std::false_type; + using std::is_void; + using std::is_integral; + using std::is_floating_point; + using std::is_array; + using std::is_pointer; + using std::is_lvalue_reference; + using std::is_rvalue_reference; + using std::is_member_object_pointer; + using std::is_member_function_pointer; + using std::is_enum; + using std::is_union; + using std::is_class; + using std::is_function; + using std::is_reference; + using std::is_arithmetic; + using std::is_fundamental; + using std::is_object; + using std::is_scalar; + using std::is_compound; + using std::is_member_pointer; + using std::is_const; + using std::is_volatile; + using std::is_trivial; + using std::is_trivially_copyable; + using std::is_standard_layout; + using std::is_pod; +#if !((__cplusplus > 201700) || (defined(_MSVC_LANG) && (_MSVC_LANG > 201700))) + // deprecated in C++ 17: + using std::is_literal_type; + using std::result_of; +#endif + using std::is_empty; + using std::is_polymorphic; + using std::is_abstract; + using std::is_constructible; + using std::is_nothrow_constructible; + using std::is_default_constructible; + using std::is_copy_constructible; + using std::is_copy_assignable; + using std::is_move_constructible; + using std::is_move_assignable; + using std::is_destructible; + using std::is_trivially_default_constructible; + using std::is_trivially_copy_constructible; + using std::is_trivially_move_constructible; + using std::is_trivially_copy_assignable; + using std::is_trivially_move_assignable; + using std::is_trivially_destructible; + using std::is_nothrow_default_constructible; + using std::is_nothrow_copy_constructible; + using std::is_nothrow_move_constructible; + using std::is_nothrow_copy_assignable; + using std::is_nothrow_move_assignable; + using std::has_virtual_destructor; + using std::is_signed; + using std::is_unsigned; + using std::alignment_of; + using std::rank; + using std::extent; + using std::is_same; + using std::is_base_of; + using std::is_convertible; + using std::remove_const; + using std::remove_volatile; + using std::remove_cv; + using std::add_const; + using std::add_volatile; + using std::add_cv; + using std::remove_reference; + using std::add_lvalue_reference; + using std::add_rvalue_reference; + using std::make_signed; + using std::make_unsigned; + using std::remove_extent; + using std::remove_all_extents; + using std::remove_pointer; + using std::add_pointer; + using std::aligned_storage; + using std::aligned_union; + using std::decay; + using std::enable_if; + using std::conditional; + using std::common_type; + using std::underlying_type; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_typeindex.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_typeindex.ipp new file mode 100644 index 000000000..5ebe7bc29 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_typeindex.ipp @@ -0,0 +1,33 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_TYPEINDEX +// TITLE: C++0x header <typeindex> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <typeindex> + +#include <typeindex> + +namespace boost_no_cxx11_hdr_typeindex { + +int test() +{ +#if defined( BOOST_NO_TYPEID ) + std::type_index * p1; + std::hash<std::type_index> h; + (void)p1; + (void)h; + return 0; +#else + std::type_index t1 = typeid(int); + std::type_index t2 = typeid(double); + std::hash<std::type_index> h; + return (t1 != t2) && (h(t1) != h(t2)) ? 0 : 1; +#endif +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_unordered_map.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_unordered_map.ipp new file mode 100644 index 000000000..08e94ec05 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_unordered_map.ipp @@ -0,0 +1,24 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_UNORDERED_MAP +// TITLE: C++0x header <unordered_map> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <unordered_map> + +#include <unordered_map> + +namespace boost_no_cxx11_hdr_unordered_map { + +int test() +{ + std::unordered_map<int, long> s1; + std::unordered_multimap<int, long> s2; + return s1.empty() && s2.empty() ? 0 : 1; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_hdr_unordered_set.ipp b/src/boost/libs/config/test/boost_no_cxx11_hdr_unordered_set.ipp new file mode 100644 index 000000000..f36f15f0e --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_hdr_unordered_set.ipp @@ -0,0 +1,24 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_UNORDERED_SET +// TITLE: C++0x header <unordered_set> unavailable +// DESCRIPTION: The standard library does not supply C++0x header <unordered_set> + +#include <unordered_set> + +namespace boost_no_cxx11_hdr_unordered_set { + +int test() +{ + std::unordered_set<int> s1; + std::unordered_multiset<int> s2; + return s1.empty() && s2.empty() ? 0 : 1; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_inline_namespaces.ipp b/src/boost/libs/config/test/boost_no_cxx11_inline_namespaces.ipp new file mode 100644 index 000000000..5b76da865 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_inline_namespaces.ipp @@ -0,0 +1,30 @@ +// (C) Copyright Andrey Semashev 2013 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_INLINE_NAMESPACES +// TITLE: C++11 inline namespaces. +// DESCRIPTION: The compiler does not support C++11 inline namespaces. + +namespace boost_no_cxx11_inline_namespaces { + +inline namespace my_ns { + +int data = 0; + +} // namespace my_ns + +int test() +{ + data = 1; + if (&data == &my_ns::data) + return 0; + else + return 1; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_non_pub_def_fun.ipp b/src/boost/libs/config/test/boost_no_cxx11_non_pub_def_fun.ipp new file mode 100644 index 000000000..8089c751f --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_non_pub_def_fun.ipp @@ -0,0 +1,38 @@ +// (C) Copyright Andrey Semashev 2014 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS +// TITLE: C++11 non-public defaulted functions unavailable +// DESCRIPTION: The compiler does not support C++11 defaulted functions in access control sections other than public + +#if defined(__GNUC__) && !defined(__GXX_EXPERIMENTAL_CXX0X__) && !defined(BOOST_INTEL_STDCXX0X) +# error Non-public defaulted functions are not supported in non-C++11 mode +#endif + +namespace boost_no_cxx11_non_public_defaulted_functions { + +struct foo +{ +protected: + foo() = default; + foo& operator= (foo const&) = default; +}; + +struct bar +{ +private: + bar() = default; + bar& operator= (bar const&) = default; +}; + +int test() +{ + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_numeric_limits.ipp b/src/boost/libs/config/test/boost_no_cxx11_numeric_limits.ipp new file mode 100644 index 000000000..29b1fc847 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_numeric_limits.ipp @@ -0,0 +1,31 @@ +// (C) Copyright Vicente J. Botet Escriba 2010. +// 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_NUMERIC_LIMITS +// TITLE: static function lowest() in numeric_limits class <limits> +// DESCRIPTION: static function numeric_limits<T>::lowest() are not available for use. + +#include <limits> + +namespace boost_no_cxx11_numeric_limits{ + +int f() +{ + // this is never called, it just has to compile: + return std::numeric_limits<int>::lowest(); +} + +int test() +{ + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_cxx11_pointer_traits.ipp b/src/boost/libs/config/test/boost_no_cxx11_pointer_traits.ipp new file mode 100644 index 000000000..3d1bb1f87 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_pointer_traits.ipp @@ -0,0 +1,37 @@ +/* +Copyright 2017 Glen Joseph Fernandes +(glenjofe@gmail.com) + +Distributed under Boost Software License, Version 1.0. +(See accompanying file LICENSE_1_0.txt or copy at +http://www.boost.org/LICENSE_1_0.txt) +*/ + +// MACRO: BOOST_NO_CXX11_POINTER_TRAITS +// TITLE: C++11 <memory> lacks a correct std::pointer_traits +// DESCRIPTION: The standard library lacks a working std::pointer_traits. + +#include <memory> + +namespace boost_no_cxx11_pointer_traits { + +template<class T> +struct pointer { + template<class U> + using rebind = pointer<U>; +}; + +template<class T> +struct result { }; + +template<> +struct result<pointer<bool> > { + static const int value = 0; +}; + +int test() +{ + return result<std::pointer_traits<pointer<int> >::rebind<bool> >::value; +} + +} /* boost_no_cxx11_pointer_traits */ diff --git a/src/boost/libs/config/test/boost_no_cxx11_ref_qualifiers.ipp b/src/boost/libs/config/test/boost_no_cxx11_ref_qualifiers.ipp new file mode 100644 index 000000000..77d1234a8 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_ref_qualifiers.ipp @@ -0,0 +1,33 @@ +// (C) Copyright Andrzej Krzemienski 2014 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_REF_QUALIFIERS +// TITLE: C++11 ref-qualifiers on member functions. +// DESCRIPTION: The compiler does not support the C++11 ref-qualifiers on member functions as described in N2439. + +namespace boost_no_cxx11_ref_qualifiers { + +struct G +{ + char get() & { return 'l'; } + char get() && { return 'r'; } + char get() const& { return 'c'; } +}; + +int test() +{ + G m; + const G c = G(); + + if (m.get() != 'l') return 1; + if (c.get() != 'c') return 1; + if (G().get() != 'r') return 1; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_sfinae_expr.ipp b/src/boost/libs/config/test/boost_no_cxx11_sfinae_expr.ipp new file mode 100644 index 000000000..79cd7a854 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_sfinae_expr.ipp @@ -0,0 +1,46 @@ +/* +Copyright 2017 Glen Joseph Fernandes +(glenjofe@gmail.com) + +Distributed under Boost Software License, Version 1.0. +(See accompanying file LICENSE_1_0.txt or copy at +http://www.boost.org/LICENSE_1_0.txt) +*/ + +// MACRO: BOOST_NO_CXX11_SFINAE_EXPR +// TITLE: C++11 SFINAE for expressions +// DESCRIPTION: C++11 SFINAE for expressions not supported. + +namespace boost_no_cxx11_sfinae_expr { + +template<class> +struct ignore { + typedef void type; +}; + +template<class T> +T& object(); + +template<class T, class E = void> +struct trait { + static const int value = 0; +}; + +template<class T> +struct trait<T, typename ignore<decltype(&object<T>())>::type> { }; + +template<class T> +struct result { + static const int value = T::value; +}; + +class type { + void operator&() const { } +}; + +int test() +{ + return result<trait<type> >::value; +} + +} /* boost_no_cxx11_sfinae_expr */ diff --git a/src/boost/libs/config/test/boost_no_cxx11_smart_ptr.ipp b/src/boost/libs/config/test/boost_no_cxx11_smart_ptr.ipp new file mode 100644 index 000000000..5b563df7f --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_smart_ptr.ipp @@ -0,0 +1,35 @@ +// (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 more information. + +// MACRO: BOOST_NO_CXX11_SMART_PTR +// TITLE: C++11 <memory> has no shared_ptr and unique_ptr +// DESCRIPTION: The compiler does not support the C++11 smart pointer features added to <memory> + +#include <memory> +// Hash functions for shared pointers should be in <memory> +// but with some std lib's we have to include <functional> as well... +#include <functional> + +namespace boost_no_cxx11_smart_ptr { + +int test() +{ + std::unique_ptr<int> upi(new int); + std::shared_ptr<int> spi(new int), spi2(new int); + spi = std::static_pointer_cast<int>(spi); + + std::hash<std::shared_ptr<int> > h1; + std::hash<std::unique_ptr<int> > h2; + + (void)h1; + (void)h2; + + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_std_align.ipp b/src/boost/libs/config/test/boost_no_cxx11_std_align.ipp new file mode 100644 index 000000000..145e24c6d --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_std_align.ipp @@ -0,0 +1,34 @@ +// (C) Copyright John Maddock 2012 +// (C) Copyright Peter Dimov 2014 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_STD_ALIGN +// TITLE: C++11 <memory> doesn't have a working std::align +// DESCRIPTION: The compiler does not support the function std::align added to <memory> + +#include <memory> + +namespace boost_no_cxx11_std_align { + +int test() +{ + char buffer[ 32 ]; + + void * ptr = buffer + 1; + std::size_t space = sizeof( buffer ) - 1; + + void * p2 = std::align( 4, 2, ptr, space ); + + if( p2 == 0 ) return 1; + if( p2 != ptr ) return 1; + if( (size_t)p2 % 4 ) return 1; + + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_thread_local.ipp b/src/boost/libs/config/test/boost_no_cxx11_thread_local.ipp new file mode 100644 index 000000000..0f4281fed --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_thread_local.ipp @@ -0,0 +1,36 @@ +// (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 <string> + + +namespace boost_no_cxx11_thread_local{ + +template <class T> +int check_local(int n) +{ + static thread_local T s(n, ' '); + static thread_local int size = s.size(); + if(size != n) + { + s = T(n, ' '); + size = n; + } + return size; +} + +int test() +{ + return check_local<std::string>(5) == 5 ? 0 : 1; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_cxx11_trailing_result_types.ipp b/src/boost/libs/config/test/boost_no_cxx11_trailing_result_types.ipp new file mode 100644 index 000000000..17012048e --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_trailing_result_types.ipp @@ -0,0 +1,26 @@ +// (C) Copyright Andrey Semashev 2013 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_TRAILING_RESULT_TYPES +// TITLE: C++11 trailing function result types syntax. +// DESCRIPTION: The compiler does not support the new C++11 function result types specification syntax. + +namespace boost_no_cxx11_trailing_result_types { + +template< typename T > +auto foo(T const& t) -> T +{ + return t; +} + +int test() +{ + return foo(0); +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_unrestricted_union.ipp b/src/boost/libs/config/test/boost_no_cxx11_unrestricted_union.ipp new file mode 100644 index 000000000..2b7adaf84 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_unrestricted_union.ipp @@ -0,0 +1,55 @@ +// (C) Copyright Edward Diener 2019 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_UNRESTRICTED_UNION +// TITLE: C++11 unrestricted union +// DESCRIPTION: The compiler does not support the C++11 unrestricted union + +#include <new> + +namespace boost_no_cxx11_unrestricted_union { + +struct HoldsShort + { + short i; + HoldsShort(); + }; + +HoldsShort::HoldsShort() : i(1) + { + } + +union with_static_data + { + int a; + long b; + HoldsShort o; + with_static_data(); + static int sd; + }; + +with_static_data::with_static_data() : + a(0) + { + } + +int with_static_data::sd = 0; + +int test() +{ + with_static_data wsd; + wsd.a = 24; + wsd.b = 48L; + new(&wsd.o) HoldsShort; + wsd.o.i = 2; + with_static_data::sd = 1; + bool b = (wsd.o.i == 2 && with_static_data::sd == 1); + return b ? 0 : 1; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx11_user_lit.ipp b/src/boost/libs/config/test/boost_no_cxx11_user_lit.ipp new file mode 100644 index 000000000..090e0c036 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx11_user_lit.ipp @@ -0,0 +1,67 @@ +// (C) Copyright John Maddock 2013 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_USER_DEFINED_LITERALS +// TITLE: C++11 user defined literals. +// DESCRIPTION: The compiler does not support the C++11 literals including user-defined suffixes. + +#include <memory> + +namespace boost_no_cxx11_user_defined_literals { + +struct my_literal +{ + my_literal() : val(0) {} + my_literal(int i) : val(i) {} + my_literal(const my_literal& a) : val(a.val) {} + bool operator==(const my_literal& a) const { return val == a.val; } + int val; +}; + +template <unsigned base, unsigned long long val, char... Digits> +struct parse_int +{ + // The default specialization is also the termination condition: + // it gets invoked only when sizeof...Digits == 0. + static_assert(base<=16u,"only support up to hexadecimal"); + static constexpr unsigned long long value{ val }; +}; + +template <unsigned base, unsigned long long val, char c, char... Digits> +struct parse_int<base, val, c, Digits...> +{ + static constexpr unsigned long long char_value = (c >= '0' && c <= '9') + ? c - '0' + : (c >= 'a' && c <= 'f') + ? c - 'a' + : (c >= 'A' && c <= 'F') + ? c - 'A' + : 400u; + static_assert(char_value < base, "Encountered a digit out of range"); + static constexpr unsigned long long value{ parse_int<base, val * base + +char_value, Digits...>::value }; +}; + +my_literal operator "" _suf1(unsigned long long v) +{ + return my_literal(v); +} +template <char...PACK> +my_literal operator "" _bin() +{ + return parse_int<2, 0, PACK...>::value; +} + +int test() +{ + my_literal a = 0x23_suf1; + my_literal b = 1001_bin; + return ((a == my_literal(0x23)) && (b == my_literal(9))) ? 0 : 1; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx14_binary_literals.ipp b/src/boost/libs/config/test/boost_no_cxx14_binary_literals.ipp new file mode 100644 index 000000000..326d5b03e --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx14_binary_literals.ipp @@ -0,0 +1,23 @@ + +// (C) Copyright Kohei Takahashi 2014 + +// 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 more information. + +// MACRO: BOOST_NO_CXX14_BINARY_LITERALS +// TITLE: C++14 binary literals unavailable +// DESCRIPTION: The compiler does not support C++14 binary literals + +namespace boost_no_cxx14_binary_literals +{ + +int test() +{ + return ((int)0b01000010 == (int)0x42) ? 0 : 1; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_cxx14_constexpr.ipp b/src/boost/libs/config/test/boost_no_cxx14_constexpr.ipp new file mode 100644 index 000000000..cc6552700 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx14_constexpr.ipp @@ -0,0 +1,72 @@ + +// (C) Copyright Kohei Takahashi 2014,2016 + +// 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 more information. + +// MACRO: BOOST_NO_CXX14_CONSTEXPR +// TITLE: C++14 relaxed constexpr unavailable +// DESCRIPTION: The compiler does not support C++14 relaxed constexpr + +namespace boost_no_cxx14_constexpr +{ + +namespace detail +{ + template <class> struct void_ { typedef void type; }; + + struct non_tmpl + { + constexpr int foo() const { return 1; } + constexpr int foo() { return 0; } + }; + + template <typename T> + struct tmpl : non_tmpl { }; +} + +// Test relaxed constexpr with dependent type; for more details, see comment of +// BOOST_CXX14_CONSTEXPR definition in boost/config/compiler/clang.hpp . +template <class T> +constexpr typename detail::void_<T>::type decrement(T &value) +{ + --value; +} + +constexpr int non_cv_member(detail::non_tmpl x) +{ + return x.foo(); +} + +template <typename T> +constexpr int non_cv_member(detail::tmpl<T> x) +{ + return x.foo(); +} + +constexpr int zero() +{ + int ret = 1; + decrement(ret); + return ret; +} + +template <int v> struct compile_time_value +{ + static constexpr int value = v; +}; + +int test() +{ + return compile_time_value< + zero() + + non_cv_member(detail::non_tmpl()) + + non_cv_member(detail::tmpl<int>()) + >::value; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_cxx14_decltype_auto.ipp b/src/boost/libs/config/test/boost_no_cxx14_decltype_auto.ipp new file mode 100644 index 000000000..4f538dcc0 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx14_decltype_auto.ipp @@ -0,0 +1,33 @@ + +// (C) Copyright Kohei Takahashi 2014 + +// 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 more information. + +// MACRO: BOOST_NO_CXX14_DECLTYPE_AUTO +// TITLE: C++14 decltype(auto) unavailable +// DESCRIPTION: The compiler does not support C++14 decltype(auto) + +namespace boost_no_cxx14_decltype_auto +{ + +void quiet_warning(int){} + +const int &foo(const int &x) +{ + return x; +} + +int test() +{ + int j; + decltype(auto) x = foo(j); + quiet_warning(x); + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_cxx14_digit_separator.ipp b/src/boost/libs/config/test/boost_no_cxx14_digit_separator.ipp new file mode 100644 index 000000000..ed4bcf236 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx14_digit_separator.ipp @@ -0,0 +1,23 @@ + +// (C) Copyright Kohei Takahashi 2014 + +// 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 more information. + +// MACRO: BOOST_NO_CXX14_DIGIT_SEPARATORS +// TITLE: C++14 digit separator unavailable +// DESCRIPTION: The compiler does not support C++14 digit separator + +namespace boost_no_cxx14_digit_separators +{ + +int test() +{ + return 0'0; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_cxx14_generic_lambda.ipp b/src/boost/libs/config/test/boost_no_cxx14_generic_lambda.ipp new file mode 100644 index 000000000..e271ef5b4 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx14_generic_lambda.ipp @@ -0,0 +1,23 @@ + +// (C) Copyright Kohei Takahashi 2014 + +// 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 more information. + +// MACRO: BOOST_NO_CXX14_GENERIC_LAMBDAS +// TITLE: C++14 generic lambda unavailable +// DESCRIPTION: The compiler does not support C++14 generic lambda + +namespace boost_no_cxx14_generic_lambdas +{ + +int test() +{ + return [](auto ret) { return ret; } (0); +} + +} + diff --git a/src/boost/libs/config/test/boost_no_cxx14_hdr_shared_mutex.ipp b/src/boost/libs/config/test/boost_no_cxx14_hdr_shared_mutex.ipp new file mode 100644 index 000000000..ceae56590 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx14_hdr_shared_mutex.ipp @@ -0,0 +1,27 @@ +// (C) Copyright Edward Diener 2015 + +// 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 more information. + +// MACRO: BOOST_NO_CXX14_HDR_SHARED_MUTEX +// TITLE: C++0y header <shared_mutex> unavailable +// DESCRIPTION: The standard library does not supply C++0y header <shared_mutex> + +#include <shared_mutex> + +namespace boost_no_cxx14_hdr_shared_mutex { + +int test() +{ + // + // We should probably test __cpp_lib_shared_timed_mutex here, but since neither + // MSVC/Dinkumware, nor clang/libc++ bother to set it (as of July 2015), there's + // not much point.... + using std::shared_timed_mutex; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx14_lambda_capture.ipp b/src/boost/libs/config/test/boost_no_cxx14_lambda_capture.ipp new file mode 100644 index 000000000..a78873662 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx14_lambda_capture.ipp @@ -0,0 +1,23 @@ + +// (C) Copyright Kohei Takahashi 2014 + +// 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 more information. + +// MACRO: BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES +// TITLE: C++14 initialized lambda capture unavailable +// DESCRIPTION: The compiler does not support C++14 initialized lambda capture + +namespace boost_no_cxx14_initialized_lambda_captures +{ + +int test() +{ + return [ret = 0] { return ret; } (); +} + +} + diff --git a/src/boost/libs/config/test/boost_no_cxx14_member_init.ipp b/src/boost/libs/config/test/boost_no_cxx14_member_init.ipp new file mode 100644 index 000000000..2b6c77b4c --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx14_member_init.ipp @@ -0,0 +1,30 @@ + +// (C) Copyright Kohei Takahashi 2014 + +// 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 more information. + +// MACRO: BOOST_NO_CXX14_AGGREGATE_NSDMI +// TITLE: C++14 member initializers unavailable +// DESCRIPTION: The compiler does not support C++14 member initializers + +namespace boost_no_cxx14_aggregate_nsdmi +{ + +struct S +{ + int x; + int y = 0; +}; + +int test() +{ + S s[] = { { 0x72 }, { 0x42 } }; + return s[1].x - 0x42; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_cxx14_return_type_ded.ipp b/src/boost/libs/config/test/boost_no_cxx14_return_type_ded.ipp new file mode 100644 index 000000000..376567311 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx14_return_type_ded.ipp @@ -0,0 +1,29 @@ + +// (C) Copyright Kohei Takahashi 2014 + +// 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 more information. + +// MACRO: BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION +// TITLE: C++14 return type deduction unavailable +// DESCRIPTION: The compiler does not support C++14 return type deduction + +namespace boost_no_cxx14_return_type_deduction +{ + +template<typename T> +auto deduced_abs(T x) +{ + return x > 0 ? x : -x; +} + +int test() +{ + return deduced_abs(2) - deduced_abs(-2); +} + +} + diff --git a/src/boost/libs/config/test/boost_no_cxx14_std_exchange.ipp b/src/boost/libs/config/test/boost_no_cxx14_std_exchange.ipp new file mode 100644 index 000000000..111abd9cc --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx14_std_exchange.ipp @@ -0,0 +1,23 @@ +// (C) Copyright Oliver Kowalke 2016. +// 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_CXX14_STD_EXCHANGE +// TITLE: apply +// DESCRIPTION: The compiler supports the std::exchange() function. + +#include <utility> + +namespace boost_no_cxx14_std_exchange { + +int test() { + int * i = new int( 1); + int * j = std::exchange( i, nullptr); + delete j; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx14_var_templ.ipp b/src/boost/libs/config/test/boost_no_cxx14_var_templ.ipp new file mode 100644 index 000000000..7162dac75 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx14_var_templ.ipp @@ -0,0 +1,26 @@ + +// (C) Copyright Kohei Takahashi 2014 + +// 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 more information. + +// MACRO: BOOST_NO_CXX14_VARIABLE_TEMPLATES +// TITLE: C++14 variable templates unavailable +// DESCRIPTION: The compiler does not support C++14 variable templates + +namespace boost_no_cxx14_variable_templates +{ + +template <class T> +T zero = static_cast<T>(0); + +int test() +{ + return zero<int>; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_cxx17_fold_expressions.ipp b/src/boost/libs/config/test/boost_no_cxx17_fold_expressions.ipp new file mode 100644 index 000000000..7566a066c --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx17_fold_expressions.ipp @@ -0,0 +1,27 @@ +/* +Copyright 2017 Glen Joseph Fernandes +(glenjofe@gmail.com) + +Distributed under Boost Software License, Version 1.0. +(See accompanying file LICENSE_1_0.txt or copy at +http://www.boost.org/LICENSE_1_0.txt) +*/ + +// MACRO: BOOST_NO_CXX17_FOLD_EXPRESSIONS +// TITLE: C++17 fold expressions +// DESCRIPTION: C++17 fold expressions are not supported. + +namespace boost_no_cxx17_fold_expressions { + +template<class... Args> +auto sum(Args&&... args) +{ + return (args + ... + 0); +} + +int test() +{ + return sum(1, -1, 1, 1, -1, -1); +} + +} /* boost_no_cxx17_fold_expressions */ diff --git a/src/boost/libs/config/test/boost_no_cxx17_hdr_optional.ipp b/src/boost/libs/config/test/boost_no_cxx17_hdr_optional.ipp new file mode 100644 index 000000000..86d799efe --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx17_hdr_optional.ipp @@ -0,0 +1,23 @@ +// (C) Copyright John Maddock 2018 + +// 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 more information. + +// MACRO: BOOST_NO_CXX17_HDR_OPTIONAL +// TITLE: C++17 header <optional> unavailable +// DESCRIPTION: The standard library does not supply C++17 header <optional> + +#include <optional> + +namespace boost_no_cxx17_hdr_optional { + +int test() +{ + using std::optional; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx17_hdr_string_view.ipp b/src/boost/libs/config/test/boost_no_cxx17_hdr_string_view.ipp new file mode 100644 index 000000000..11589dab6 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx17_hdr_string_view.ipp @@ -0,0 +1,26 @@ +// (C) Copyright John Maddock 2018 + +// 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 more information. + +// MACRO: BOOST_NO_CXX17_HDR_STRING_VIEW +// TITLE: C++17 header <string_view> unavailable +// DESCRIPTION: The standard library does not supply C++17 header <string_view> + +#include <string_view> + +namespace boost_no_cxx17_hdr_string_view { + +int test() +{ + using std::string_view; + using std::wstring_view; + using std::u16string_view; + using std::u32string_view; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx17_hdr_variant.ipp b/src/boost/libs/config/test/boost_no_cxx17_hdr_variant.ipp new file mode 100644 index 000000000..a23ac2d79 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx17_hdr_variant.ipp @@ -0,0 +1,32 @@ +// (C) Copyright John Maddock 2019 + +// 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 more information. + +// MACRO: BOOST_NO_CXX17_HDR_VARIANT +// TITLE: C++17 header <variant> unavailable +// DESCRIPTION: The standard library does not supply C++17 header <variant> + +#include <variant> + +namespace boost_no_cxx17_hdr_variant { + +int test() +{ + using std::variant; + using std::visit; + using std::holds_alternative; + using std::get; + using std::get_if; + using std::monostate; + using std::bad_variant_access; + using std::variant_size; + using std::variant_alternative; + using std::variant_npos; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx17_if_constexpr.ipp b/src/boost/libs/config/test/boost_no_cxx17_if_constexpr.ipp new file mode 100644 index 000000000..3392ee73f --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx17_if_constexpr.ipp @@ -0,0 +1,45 @@ +/* +Copyright 2018 T. Zachary Laine +(whatwasthataddress@gmail.com) + +Distributed under Boost Software License, Version 1.0. +(See accompanying file LICENSE_1_0.txt or copy at +http://www.boost.org/LICENSE_1_0.txt) +*/ + +// MACRO: BOOST_NO_CXX17_IF_CONSTEXPR +// TITLE: C++17 if constexpr +// DESCRIPTION: C++17 if constexpr are not supported. + +namespace boost_no_cxx17_if_constexpr { + +template <typename T, typename U> +struct same +{ + static constexpr bool value = false; +}; + +template <typename T> +struct same<T, T> +{ + static constexpr bool value = true; +}; + +int test() +{ + if constexpr (true) { + if constexpr (1 != 0) { + if constexpr (same<int, double>::value) { + static_assert(!same<int, double>::value, ""); + return 1; + } else if constexpr (false) { + return 1; + } else { + return 0; + } + } + } + return 1; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx17_inline_variables.ipp b/src/boost/libs/config/test/boost_no_cxx17_inline_variables.ipp new file mode 100644 index 000000000..d144ed9ad --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx17_inline_variables.ipp @@ -0,0 +1,27 @@ +/* +Copyright 2017 Glen Joseph Fernandes +(glenjofe@gmail.com) + +Distributed under Boost Software License, Version 1.0. +(See accompanying file LICENSE_1_0.txt or copy at +http://www.boost.org/LICENSE_1_0.txt) +*/ + +// MACRO: BOOST_NO_CXX17_INLINE_VARIABLES +// TITLE: C++17 inline variables +// DESCRIPTION: C++17 inline variables are not supported. + +namespace boost_no_cxx17_inline_variables { + +inline const int Value = 1; + +struct Type { + static inline const int value = 1; +}; + +int test() +{ + return Type::value - Value; +} + +} /* boost_no_cxx17_inline_variables */ diff --git a/src/boost/libs/config/test/boost_no_cxx17_iterator_traits.ipp b/src/boost/libs/config/test/boost_no_cxx17_iterator_traits.ipp new file mode 100644 index 000000000..cef88c058 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx17_iterator_traits.ipp @@ -0,0 +1,54 @@ +// Copyright (c) Andrey Semashev 2017. +// 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_CXX17_ITERATOR_TRAITS +// TITLE: C++17 std::iterator_traits +// DESCRIPTION: The compiler does not support SFINAE-friendly std::iterator_traits defined in C++17. + +#include <iterator> + +namespace boost_no_cxx17_iterator_traits { + +struct iterator +{ + typedef std::random_access_iterator_tag iterator_category; + typedef char value_type; + typedef std::ptrdiff_t difference_type; + typedef char* pointer; + typedef char& reference; + + reference operator*()const; + iterator operator++(); +}; + +struct non_iterator {}; + +template< typename T > +struct void_type { typedef void type; }; + +template< typename Traits, typename Void = void > +struct has_iterator_category +{ + enum { value = false }; +}; + +template< typename Traits > +struct has_iterator_category< Traits, typename void_type< typename Traits::iterator_category >::type > +{ + enum { value = true }; +}; + +int test() +{ + static_assert(has_iterator_category< std::iterator_traits< boost_no_cxx17_iterator_traits::iterator > >::value, "has_iterator_category failed"); + + static_assert(!has_iterator_category< std::iterator_traits< boost_no_cxx17_iterator_traits::non_iterator > >::value, "has_iterator_category negative check failed"); + + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx17_std_apply.ipp b/src/boost/libs/config/test/boost_no_cxx17_std_apply.ipp new file mode 100644 index 000000000..c657c0391 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx17_std_apply.ipp @@ -0,0 +1,28 @@ +// (C) Copyright Oliver Kowalke 2016. +// 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_CXX17_STD_APPLY +// TITLE: apply +// DESCRIPTION: The compiler supports the std::apply() function. + +#include <functional> +#include <tuple> + +namespace boost_no_cxx17_std_apply { + +int foo( int i, int j) { + return i + j; +} + +int test() { + int i = 1, j = 2; + std::apply( foo, std::make_tuple( i, j) ); + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_cxx17_std_invoke.ipp b/src/boost/libs/config/test/boost_no_cxx17_std_invoke.ipp new file mode 100644 index 000000000..7de7e6aed --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx17_std_invoke.ipp @@ -0,0 +1,27 @@ +// (C) Copyright Oliver Kowalke 2016. +// 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_CXX17_STD_INVOKE +// TITLE: invoke +// DESCRIPTION: The compiler supports the std::invoke() function. + +#include <functional> + +namespace boost_no_cxx17_std_invoke { + +int foo( int i, int j) { + return i + j; +} + +int test() { + int i = 1, j = 2; + typename std::invoke_result<int(&)(int,int), int, int>::type t = std::invoke( foo, i, j); + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_cxx17_structured_bindings.ipp b/src/boost/libs/config/test/boost_no_cxx17_structured_bindings.ipp new file mode 100644 index 000000000..c5c725980 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx17_structured_bindings.ipp @@ -0,0 +1,36 @@ +/* +Copyright 2017 Glen Joseph Fernandes +(glenjofe@gmail.com) + +Distributed under Boost Software License, Version 1.0. +(See accompanying file LICENSE_1_0.txt or copy at +http://www.boost.org/LICENSE_1_0.txt) +*/ + +// MACRO: BOOST_NO_CXX17_STRUCTURED_BINDINGS +// TITLE: C++17 structured bindings +// DESCRIPTION: C++17 structured bindings are not supported. + +#include <tuple> + +namespace boost_no_cxx17_structured_bindings { + +struct P { + int x; + int y; +}; + +int test() +{ + auto [c, d] = std::make_tuple(1, 2); + if (c != 1 || d != 2) { + return 1; + } + auto [a, b] = P{1, 2}; + if (a != 1 || b != 2) { + return 1; + } + return 0; +} + +} /* boost_no_cxx17_structured_bindings */ diff --git a/src/boost/libs/config/test/boost_no_cxx98_binders.ipp b/src/boost/libs/config/test/boost_no_cxx98_binders.ipp new file mode 100644 index 000000000..c287e35cc --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx98_binders.ipp @@ -0,0 +1,30 @@ +// (C) Copyright John Maddock 2017. +// 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_CXX98_BINDERS +// TITLE: std::bind1st, prt_fun and mem_fun +// DESCRIPTION: The std lib has C++98 binders and adaptors. + +#include <functional> + +namespace boost_no_cxx98_binders{ + +int f2(int a, int b) { return a + b; } + +struct A +{ + int f1(int a) { return a; } +}; + + +int test() +{ + A a; + return std::bind1st(std::ptr_fun(f2), 0)(0) + std::bind1st(std::mem_fun(&A::f1), &a)(0); +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx98_function_base.ipp b/src/boost/libs/config/test/boost_no_cxx98_function_base.ipp new file mode 100644 index 000000000..6bc897b33 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx98_function_base.ipp @@ -0,0 +1,28 @@ +// (C) Copyright John Maddock 2017. +// 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_CXX98_FUNCTION_BASE +// TITLE: std::unary_function and std::binary_function +// DESCRIPTION: The std lib has unary_function and binary_function. + +#include <functional> + +namespace boost_no_cxx98_function_base{ + +struct A : public std::unary_function<int, int>{}; +struct B : public std::binary_function<int, int, int>{}; + +int test() +{ + A a; + B b; + (void)a; + (void)b; + return static_cast<B::result_type>(0); +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx98_random_shuffle.ipp b/src/boost/libs/config/test/boost_no_cxx98_random_shuffle.ipp new file mode 100644 index 000000000..abef913fa --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx98_random_shuffle.ipp @@ -0,0 +1,23 @@ +// (C) Copyright John Maddock 2017. +// 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_CXX98_RANDOM_SHUFFLE +// TITLE: std::random_shuffle +// DESCRIPTION: The std lib has random_shuffle. + +#include <algorithm> + +namespace boost_no_cxx98_random_shuffle{ + +int test() +{ + int my_array[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; + std::random_shuffle(&my_array[0], &my_array[9] ); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_cxx_hdr_functional.ipp b/src/boost/libs/config/test/boost_no_cxx_hdr_functional.ipp new file mode 100644 index 000000000..fbcc46b01 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_cxx_hdr_functional.ipp @@ -0,0 +1,43 @@ +// (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 more information. + +// MACRO: BOOST_NO_CXX11_HDR_FUNCTIONAL +// TITLE: C++11 <functional> unavailable +// DESCRIPTION: The compiler does not support the C++11 features added to <functional> + +#include <functional> + +void f(int, float){} + +namespace boost_no_cxx11_hdr_functional { + +int test() +{ + int i = 0; + std::ref(i); + std::cref(i); + + std::bit_and<int> b1; + std::bit_or<int> b2; + std::bit_xor<int> b3; + + std::hash<short> hs; + + (void)b1; + (void)b2; + (void)b3; + (void)hs; + + std::bind(f, std::placeholders::_1, 0.0f); + + std::function<void(int, float)> fun(f); + + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_decltype.ipp b/src/boost/libs/config/test/boost_no_decltype.ipp new file mode 100644 index 000000000..0b0592439 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_decltype.ipp @@ -0,0 +1,54 @@ + +// (C) Copyright Beman Dawes 2008 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_DECLTYPE +// TITLE: C++0x decltype unavailable +// DESCRIPTION: The compiler does not support C++0x decltype + +namespace boost_no_cxx11_decltype { + +void quiet_warning(int){} + +struct test_class +{ + test_class() {} +}; + +test_class get_test_class() +{ + return test_class(); +} + +template<typename F> +void baz(F f) +{ + // + // Strangely VC-10 deduces the return type of F + // to be "test_class&". Remove the constructor + // from test_class and then decltype does work OK!! + // + typedef decltype(f()) res; + res r; +} + +int test() +{ + int i; + decltype(i) j(0); + quiet_warning(j); + decltype(get_test_class()) k; + #ifndef _MSC_VER + // Although the VC++ decltype is buggy, we none the less enable support, + // so don't test the bugs for now! + baz(get_test_class); + #endif + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_decltype_n3276.ipp b/src/boost/libs/config/test/boost_no_decltype_n3276.ipp new file mode 100644 index 000000000..9173bb381 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_decltype_n3276.ipp @@ -0,0 +1,137 @@ + +// (C) Copyright Eric Niebler 2011 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_DECLTYPE_N3276 +// TITLE: C++0x decltype v1.1 unavailable +// DESCRIPTION: The compiler does not support extensions to C++0x +// decltype as described in N3276 and accepted in Madrid, +// March 2011: +// <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3276.pdf> + +namespace boost_no_cxx11_decltype_n3276 { + +// A simplified result_of implementation. +// that uses decltype. +template<typename Sig> +struct result_of; + +template<typename T> +T& declvar(); + +// use decltype +template<typename Fun, typename T> +struct result_of<Fun(T)> +{ + typedef decltype(declvar<Fun>()(declvar<T>())) type; +}; + +template<typename Fun, typename T, typename U> +struct result_of<Fun(T, U)> +{ + typedef decltype(declvar<Fun>()(declvar<T>(), declvar<U>())) type; +}; + +// simple tuple type +template<typename A0 = void, typename A1 = void, typename A2 = void> +struct tuple; + +template<typename A0> +struct tuple<A0, void, void> +{ + A0 a0_; + + tuple(A0 const &a0) + : a0_(a0) + {} +}; + +template<typename A0, typename A1> +struct tuple<A0, A1> +{ + A0 a0_; + A1 a1_; + + tuple(A0 const &a0, A1 const & a1) + : a0_(a0) + , a1_(a1) + {} +}; + +// A node in an expression tree +template<class Tag, class Args> // Args is a tuple. +struct Expr; + +// A function object that builds expression nodes +template<class Tag> +struct MakeExpr +{ + template<class T> + Expr<Tag, tuple<T> > operator()(T const & t) const + { + return Expr<Tag, tuple<T> >(tuple<T>(t)); + } + + template<class T, typename U> + Expr<Tag, tuple<T, U> > operator()(T const & t, U const & u) const + { + return Expr<Tag, tuple<T, U> >(tuple<T, U>(t, u)); + } +}; + +// Here are tag types that encode in an expression node +// what operation created the node. +struct Terminal; +struct BinaryPlus; +struct FunctionCall; + +typedef MakeExpr<Terminal> MakeTerminal; +typedef MakeExpr<BinaryPlus> MakeBinaryPlus; +typedef MakeExpr<FunctionCall> MakeFunctionCall; + +template<class Tag, class Args> +struct Expr +{ + Args args_; + + explicit Expr(Args const & t) : args_(t) {} + + // An overloaded operator+ that creates a binary plus node + template<typename RTag, typename RArgs> + typename result_of<MakeBinaryPlus(Expr, Expr<RTag, RArgs>)>::type + operator+(Expr<RTag, RArgs> const &right) const + { + return MakeBinaryPlus()(*this, right); + } + + // An overloaded function call operator that creates a unary + // function call node + typename result_of<MakeFunctionCall(Expr)>::type + operator()() const + { + return MakeFunctionCall()(*this); + } +}; + +int test() +{ + // This is a terminal in an expression tree + Expr<Terminal, tuple<int> > i = MakeTerminal()(42); + + i + i; // OK, this creates a binary plus node. + + i(); // OK, this creates a unary function-call node. + // NOTE: If N3276 has not been implemented, this + // line will set off an infinite cascade of template + // instantiations that will run the compiler out of + // memory. + + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_ded_typename.ipp b/src/boost/libs/config/test/boost_no_ded_typename.ipp new file mode 100644 index 000000000..ef58d272a --- /dev/null +++ b/src/boost/libs/config/test/boost_no_ded_typename.ipp @@ -0,0 +1,40 @@ +// (C) Copyright John Maddock and Dave Abrahams 2002. +// 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_DEDUCED_TYPENAME +// TITLE: deduced typenames +// DESCRIPTION: Some compilers can't use the typename keyword in deduced contexts. + +#ifndef BOOST_DEDUCED_TYPENAME +#define BOOST_DEDUCED_TYPENAME typename +#endif + + +namespace boost_deduced_typename{ + +template <class T> +int f(T const volatile*, BOOST_DEDUCED_TYPENAME T::type* = 0) +{ + return 0; +} + +struct X { typedef int type; }; + +int test() +{ + return f((X*)0); +} + +} + + + + + + + + diff --git a/src/boost/libs/config/test/boost_no_defaulted_functions.ipp b/src/boost/libs/config/test/boost_no_defaulted_functions.ipp new file mode 100644 index 000000000..5c4c7d021 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_defaulted_functions.ipp @@ -0,0 +1,28 @@ +// (C) Copyright Beman Dawes 2008 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_DEFAULTED_FUNCTIONS +// TITLE: C++0x defaulted functions unavailable +// DESCRIPTION: The compiler does not support C++0x defaulted functions + +#if defined(__GNUC__) && !defined(__GXX_EXPERIMENTAL_CXX0X__) && !defined(BOOST_INTEL_STDCXX0X) +# error Defaulted functions are not supported in non-C++0x mode +#endif + +namespace boost_no_cxx11_defaulted_functions { + + struct foo { + foo() = default; + }; + +int test() +{ + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_deleted_functions.ipp b/src/boost/libs/config/test/boost_no_deleted_functions.ipp new file mode 100644 index 000000000..4d3f0a907 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_deleted_functions.ipp @@ -0,0 +1,28 @@ +// (C) Copyright Beman Dawes 2008 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_DELETED_FUNCTIONS +// TITLE: C++0x =delete functions unavailable +// DESCRIPTION: The compiler does not support C++0x =delete functions + +#if defined(__GNUC__) && !defined(__GXX_EXPERIMENTAL_CXX0X__) && !defined(BOOST_INTEL_STDCXX0X) +# error Deleted functions are not supported in non-C++0x mode +#endif + +namespace boost_no_cxx11_deleted_functions { + + struct foo { + foo() = delete; + }; + +int test() +{ + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_dep_nested_class.ipp b/src/boost/libs/config/test/boost_no_dep_nested_class.ipp new file mode 100644 index 000000000..42c575030 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_dep_nested_class.ipp @@ -0,0 +1,58 @@ +// (C) Copyright John Maddock 2001. +// 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_DEPENDENT_NESTED_DERIVATIONS +// TITLE: dependent nested template classes +// DESCRIPTION: The compiler fails to compile +// a nested class that has a dependent base class: +// template<typename T> +// struct foo : { +// template<typename U> +// struct bar : public U {}; +// }; +#ifndef BOOST_NESTED_TEMPLATE +#define BOOST_NESTED_TEMPLATE template +#endif + + +namespace boost_no_dependent_nested_derivations{ + +struct UDT1{}; +struct UDT2{}; + +template<typename T> +struct foo +{ + template<typename U> + struct bar : public foo<U> + {}; +}; + +template <class T> +void foo_test(T) +{ + typedef foo<T> foo_type; + typedef typename foo_type::BOOST_NESTED_TEMPLATE bar<UDT2> bar_type; + foo<T> ft; + bar_type bt; + (void) &bt; + (void) &ft; +} + +int test() +{ + foo_test(UDT1()); + return 0; +} + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_no_dep_val_param.ipp b/src/boost/libs/config/test/boost_no_dep_val_param.ipp new file mode 100644 index 000000000..759bef058 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_dep_val_param.ipp @@ -0,0 +1,37 @@ +// (C) Copyright John Maddock 2001. +// 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_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS +// TITLE: dependent non-type template parameters +// DESCRIPTION: Template value parameters cannot have a dependent +// type, for example: +// template<class T, typename T::type value> +// class X { ... }; + + +namespace boost_no_dependent_types_in_template_value_parameters{ + +template <class T, typename T::type value = 0> +class X +{}; + +template <class T> +struct typifier +{ + typedef T type; +}; + +int test() +{ + X<typifier<int> > x; + (void) &x; // avoid "unused variable" warning + return 0; +} + +} + + diff --git a/src/boost/libs/config/test/boost_no_excep_std.ipp b/src/boost/libs/config/test/boost_no_excep_std.ipp new file mode 100644 index 000000000..10d48f470 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_excep_std.ipp @@ -0,0 +1,35 @@ +// (C) Copyright John Maddock 2001. +// 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_EXCEPTION_STD_NAMESPACE +// TITLE: <exception> is in namespace std +// DESCRIPTION: Some std libs don't put the contents of +// <exception> in namespace std. + +#include <exception> + +namespace boost_no_exception_std_namespace{ + +int t(int i) +{ + if(i) + std::terminate(); + return 0; +} + +int test() +{ + return t(0); +} + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_no_exceptions.ipp b/src/boost/libs/config/test/boost_no_exceptions.ipp new file mode 100644 index 000000000..862088f5e --- /dev/null +++ b/src/boost/libs/config/test/boost_no_exceptions.ipp @@ -0,0 +1,43 @@ +// (C) Copyright John Maddock 2001. +// 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_EXCEPTIONS +// TITLE: exception handling support +// DESCRIPTION: The compiler in its current translation mode supports +// exception handling. + + +namespace boost_no_exceptions{ + +void throw_it(int i) +{ + throw i; +} + +int test() +{ + try + { + throw_it(2); + } + catch(int i) + { + return (i == 2) ? 0 : -1; + } + catch(...) + { + return -1; + } + return -1; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_exp_func_tem_arg.ipp b/src/boost/libs/config/test/boost_no_exp_func_tem_arg.ipp new file mode 100644 index 000000000..3333b22b6 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_exp_func_tem_arg.ipp @@ -0,0 +1,55 @@ +// (C) Copyright John Maddock 2001. +// 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_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS +// TITLE: non-deduced function template parameters +// DESCRIPTION: Can only use deduced template arguments when +// calling function template instantiations. + +#if defined(BOOST_MSVC) && (BOOST_MSVC <= 1200) +#error "This is known to be buggy under VC6" +#endif + + +namespace boost_no_explicit_function_template_arguments{ + +struct foo +{ + template<class T> int bar(){return 0;} + template<int I> int bar(){return 1;} +}; + +int test_0() +{ + return 0; +} + + +template <int i> +bool foo_17041(int j) +{ + return (i == j); +} + +int test() +{ + foo f; + int a = f.bar<char>(); + int b = f.bar<2>(); + if((a !=0) || (b != 1))return -1; + + if(0 == foo_17041<8>(8)) return -1; + if(0 == foo_17041<4>(4)) return -1; + if(0 == foo_17041<5>(5)) return -1; + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_explicit_cvt_ops.ipp b/src/boost/libs/config/test/boost_no_explicit_cvt_ops.ipp new file mode 100644 index 000000000..8b187c0f0 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_explicit_cvt_ops.ipp @@ -0,0 +1,33 @@ +// (C) Copyright Beman Dawes 2008 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS +// TITLE: C++0x explicit conversion operators unavailable +// DESCRIPTION: The compiler does not support C++0x explicit conversion operators + +#if defined(__GNUC__) && !defined(__GXX_EXPERIMENTAL_CXX0X__) && !defined(BOOST_INTEL_STDCXX0X) +# error This feature is not available in non-C++0x mode +#endif + +namespace boost_no_cxx11_explicit_conversion_operators { + +void quiet_warning(int){} + + struct foo { + explicit operator int() { return 1; } + }; + +int test() +{ + foo f; + int i = int(f); + quiet_warning(i); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_extern_template.ipp b/src/boost/libs/config/test/boost_no_extern_template.ipp new file mode 100644 index 000000000..c5e2ca099 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_extern_template.ipp @@ -0,0 +1,41 @@ +// (C) Copyright Beman Dawes 2008 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_EXTERN_TEMPLATE +// TITLE: C++0x extern template unavailable +// DESCRIPTION: The compiler does not support C++0x extern template + +namespace boost_no_cxx11_extern_template { + +template<class T, class U> void f(T const* p, U const* q) +{ + p = q; +} + +template <class T> +class must_not_compile +{ +public: + void f(T const* p, int const* q); +}; + +template <class T> +void must_not_compile<T>::f(T const* p, int const* q) +{ + p = q; +} + +extern template void f<>(int const*, float const*); +extern template class must_not_compile<int>; + +int test() +{ + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_fenv_h.ipp b/src/boost/libs/config/test/boost_no_fenv_h.ipp new file mode 100644 index 000000000..b1e014ccc --- /dev/null +++ b/src/boost/libs/config/test/boost_no_fenv_h.ipp @@ -0,0 +1,58 @@ +// (C) Copyright John Maddock 2001. +// (C) Copyright Bryce Lelbach 2010. +// 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_FENV_H +// TITLE: fenv.h +// DESCRIPTION: There is no standard <fenv.h> available. If <fenv.h> is +// available, <boost/detail/fenv.hpp> should be included +// instead of directly including <fenv.h>. + +#include <fenv.h> + +namespace boost_no_fenv_h { + +int test() +{ + /// C++0x required typedefs + typedef ::fenv_t has_fenv_t; + typedef ::fexcept_t has_fexcept_t; + + /// C++0x required macros + #if !defined(FE_DIVBYZERO) + #error platform does not define FE_DIVBYZERO + #endif + + #if !defined(FE_INEXACT) + #error platform does not define FE_INEXACT + #endif + + #if !defined(FE_ALL_EXCEPT) + #error platform does not define FE_ALL_EXCEPT + #endif + + int i; + has_fexcept_t fe; + has_fenv_t env; + + i = feclearexcept(FE_ALL_EXCEPT); + i += fetestexcept(FE_ALL_EXCEPT); // All flags should be zero + i += fegetexceptflag(&fe, FE_ALL_EXCEPT); + i += fesetexceptflag(&fe, FE_ALL_EXCEPT); + i += feraiseexcept(0); + i += fesetround(fegetround()); + i += fegetenv(&env); + i += fesetenv(&env); + i += feholdexcept(&env); + if(i) + i += feupdateenv(&env); + + return i; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_fixed_len_variadic_templates.ipp b/src/boost/libs/config/test/boost_no_fixed_len_variadic_templates.ipp new file mode 100644 index 000000000..9baf6319b --- /dev/null +++ b/src/boost/libs/config/test/boost_no_fixed_len_variadic_templates.ipp @@ -0,0 +1,26 @@ +// Copyright (C) 2007 Douglas Gregor +// 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_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS +// TITLE: C++0x variadic templates unavailable +// DESCRIPTION: The compiler does not support C++0x variadic templates + +namespace boost_no_cxx11_fixed_length_variadic_template_expansion_packs { + +template<char one, char two, char... Others> struct char_tuple {}; + +template<char... Args> struct super_class : public char_tuple<Args...> {}; + +int test() +{ + super_class<'a', 'b', 'c', 'd'> sc; + (void)sc; + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_func_tmp_order.ipp b/src/boost/libs/config/test/boost_no_func_tmp_order.ipp new file mode 100644 index 000000000..ab6986514 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_func_tmp_order.ipp @@ -0,0 +1,49 @@ +// (C) Copyright John Maddock 2001. +// 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_FUNCTION_TEMPLATE_ORDERING +// TITLE: no function template ordering +// DESCRIPTION: The compiler does not perform +// function template ordering or its function +// template ordering is incorrect. +// +// template<typename T> void f(T); // #1 +// template<typename T, typename U> void f(T (*)(U)); // #2 +// void bar(int); +// f(&bar); // should choose #2. + + +namespace boost_no_function_template_ordering{ + +template<typename T> +bool f(T) +{ + return false; +} + +template<typename T, typename U> +bool f(T (*)(U)) +{ + return true; +} + +void bar(int) +{ +} + +int test() +{ + int i = 0; + return f(i) || !f(&bar); +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_function_template_default_args.ipp b/src/boost/libs/config/test/boost_no_function_template_default_args.ipp new file mode 100644 index 000000000..cb0c7500c --- /dev/null +++ b/src/boost/libs/config/test/boost_no_function_template_default_args.ipp @@ -0,0 +1,38 @@ +// (C) Copyright Mathias Gaunard 2009. +// 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. + +// MACRO: BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS +// TITLE: Default template arguments for function templates +// DESCRIPTION: Default template arguments for function templates are not supported. + +namespace boost_no_cxx11_function_template_default_args +{ + +template<typename T = int> +T foo() +{ + return 0; +} + +template<typename T, typename U> +bool is_same(T, U) +{ + return false; +} + +template<typename T> +bool is_same(T, T) +{ + return true; +} + +int test() +{ + return !is_same(foo<>(), 0) || is_same(foo<>(), 0L); +} + +} // namespace boost_no_function_template_default_args diff --git a/src/boost/libs/config/test/boost_no_function_type_spec.ipp b/src/boost/libs/config/test/boost_no_function_type_spec.ipp new file mode 100644 index 000000000..d91d0fb4e --- /dev/null +++ b/src/boost/libs/config/test/boost_no_function_type_spec.ipp @@ -0,0 +1,44 @@ +// (C) Copyright John Maddock 2001. +// (C) Copyright Aleksey Gurtovoy 2003. +// (C) Copyright Alisdair Meredith 2006. +// 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_FUNCTION_TYPE_SPECIALIZATIONS +// TITLE: template specialisations of function types +// DESCRIPTION: If the compiler cannot handle template specialisations +// for function types + + +namespace boost_no_function_type_specializations{ + +template< typename T > struct is_function +{ +}; + +struct X {}; +enum Y { value }; + +// Tesst can declare specializations +typedef is_function< int( int ) > scalar_types; +typedef is_function< X( X ) > user_defined_type; +typedef is_function< int( Y ) > check_enum; +typedef is_function< X( X, int ) > multiple_arguments; + +// Partial specialization test +// confirm const, volatile, pointers and references in args +template< typename X, typename Y, typename Z > +struct is_function< X( Y const &, volatile Z * ) > +{ +}; + + +int test() +{ + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_i64_limits.ipp b/src/boost/libs/config/test/boost_no_i64_limits.ipp new file mode 100644 index 000000000..b82bf2f58 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_i64_limits.ipp @@ -0,0 +1,29 @@ +// (C) Copyright John Maddock 2001. +// 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_MS_INT64_NUMERIC_LIMITS +// TITLE: std::numeric_limits<__int64> +// DESCRIPTION: The C++ implementation does not provide the a specialisation +// for std::numeric_limits<__int64>. + +#include <limits> + +namespace boost_no_ms_int64_numeric_limits{ + +int test() +{ + if(0 == std::numeric_limits<__int64>::is_specialized) return -1; + if(0 == std::numeric_limits<unsigned __int64>::is_specialized) return -1; + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_inline_memb_init.ipp b/src/boost/libs/config/test/boost_no_inline_memb_init.ipp new file mode 100644 index 000000000..4ccacbe37 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_inline_memb_init.ipp @@ -0,0 +1,62 @@ +// (C) Copyright John Maddock 2001. +// 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_INCLASS_MEMBER_INITIALIZATION +// TITLE: inline member constant initialisation +// DESCRIPTION: Compiler violates std::9.4.2/4. + + +namespace boost_no_inclass_member_initialization{ + +struct UDT{}; + + +template <bool b1, bool b2, bool b3, bool b4, bool b5, bool b6, bool b7> +struct ice_or_helper +{ + static const bool value = true; +}; +template <> +struct ice_or_helper<false, false, false, false, false, false, false> +{ + static const bool value = false; +}; + +template <bool b1, bool b2, bool b3 = false, bool b4 = false, bool b5 = false, bool b6 = false, bool b7 = false> +struct ice_or +{ + static const bool value = ice_or_helper<b1, b2, b3, b4, b5, b6, b7>::value; +}; + +template <class T> +struct is_int +{ + static const bool value = false; +}; + +template <> +struct is_int<int> +{ + static const bool value = true; +}; + +#if defined(__GNUC__) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 7))) +# define BOOST_UNUSED_ATTRIBUTE __attribute__((unused)) +#else +# define BOOST_UNUSED_ATTRIBUTE +#endif + + +int test() +{ + typedef int a1[ice_or< is_int<int>::value, is_int<UDT>::value>::value ? 1 : -1] BOOST_UNUSED_ATTRIBUTE; + return 0; +} + +} + +#undef BOOST_UNUSED_ATTRIBUTE diff --git a/src/boost/libs/config/test/boost_no_integral_int64_t.ipp b/src/boost/libs/config/test/boost_no_integral_int64_t.ipp new file mode 100644 index 000000000..eb11640a8 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_integral_int64_t.ipp @@ -0,0 +1,54 @@ +// (C) Copyright John Maddock 2001. +// 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_INTEGRAL_INT64_T +// TITLE: long long and integral constant expressions +// DESCRIPTION: The platform supports long long in integral constant expressions. + +#include <cstdlib> + + +namespace boost_no_integral_int64_t{ + +#ifdef BOOST_NO_INCLASS_MEMBER_INITIALIZATION +enum{ mask = 1uLL << 50 }; + +template <unsigned long long m> +struct llt +{ + enum{ value = m }; +}; +#else +#ifdef __GNUC__ +__extension__ +#endif +static const unsigned long long mask = 1uLL << 50; + +#ifdef __GNUC__ +__extension__ +#endif +template <unsigned long long m> +struct llt +{ +#ifdef __GNUC__ +__extension__ +#endif + static const unsigned long long value = m; +}; +#endif + +int test() +{ + return llt<mask>::value != (1uLL << 50); +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_iosfwd.ipp b/src/boost/libs/config/test/boost_no_iosfwd.ipp new file mode 100644 index 000000000..86ac42e62 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_iosfwd.ipp @@ -0,0 +1,23 @@ +// (C) Copyright Peter Dimov 2007. +// 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_IOSFWD +// TITLE: <iosfwd> +// DESCRIPTION: The <iosfwd> header is missing + +#include <iosfwd> + +namespace boost_no_iosfwd +{ + +int test() +{ + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_iostream.ipp b/src/boost/libs/config/test/boost_no_iostream.ipp new file mode 100644 index 000000000..abaceac33 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_iostream.ipp @@ -0,0 +1,25 @@ +// (C) Copyright Peter Dimov 2007. +// 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_IOSTREAM +// TITLE: No iostream support +// DESCRIPTION: The <iostream>, <istream>, <ostream> headers are missing + +#include <iostream> +#include <istream> +#include <ostream> + +namespace boost_no_iostream +{ + +int test() +{ + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_is_abstract.ipp b/src/boost/libs/config/test/boost_no_is_abstract.ipp new file mode 100644 index 000000000..257318eef --- /dev/null +++ b/src/boost/libs/config/test/boost_no_is_abstract.ipp @@ -0,0 +1,53 @@ +// (C) Copyright John Maddock and Dave Abrahams 2002. +// 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_IS_ABSTRACT +// TITLE: is_abstract implementation technique +// DESCRIPTION: Some compilers can't handle the code used for is_abstract even if they support SFINAE. + + +namespace boost_no_is_abstract{ + +#if defined(__CODEGEARC__) +template<class T> +struct is_abstract_test +{ + enum{ value = __is_abstract(T) }; +}; +#else +template<class T> +struct is_abstract_test +{ + // Deduction fails if T is void, function type, + // reference type (14.8.2/2)or an abstract class type + // according to review status issue #337 + // + template<class U> + static double check_sig(U (*)[1]); + template<class U> + static char check_sig(...); + +#ifdef __GNUC__ + enum{ s1 = sizeof(is_abstract_test<T>::template check_sig<T>(0)) }; +#else + enum{ s1 = sizeof(check_sig<T>(0)) }; +#endif + + enum{ value = (s1 == sizeof(char)) }; +}; +#endif + +struct non_abstract{}; +struct abstract{ virtual void foo() = 0; }; + +int test() +{ + return static_cast<bool>(is_abstract_test<non_abstract>::value) == static_cast<bool>(is_abstract_test<abstract>::value); +} + +} + diff --git a/src/boost/libs/config/test/boost_no_iter_construct.ipp b/src/boost/libs/config/test/boost_no_iter_construct.ipp new file mode 100644 index 000000000..e87a76fc4 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_iter_construct.ipp @@ -0,0 +1,38 @@ +// (C) Copyright John Maddock 2001. +// 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_TEMPLATED_ITERATOR_CONSTRUCTORS +// TITLE: template iterator-constructors +// DESCRIPTION: The standard library does not provide +// templated iterator constructors for its containers. + +#include <vector> +#include <deque> +#include <list> + +namespace boost_no_templated_iterator_constructors{ + +int test() +{ + std::vector<int> v1; + std::deque<int> d1; + std::list<char> l1; + + // + // now try constructors: + std::vector<long> v2(d1.begin(), d1.end()); + std::deque<long> d2(v1.begin(), v1.end()); + std::list<long> l2(d1.begin(), d1.end()); + + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_lambdas.ipp b/src/boost/libs/config/test/boost_no_lambdas.ipp new file mode 100644 index 000000000..edd3341a8 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_lambdas.ipp @@ -0,0 +1,30 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_LAMBDAS +// TITLE: C++0x lambda feature unavailable +// DESCRIPTION: The compiler does not support the C++0x lambda feature + +#if defined(__GNUC__) && !defined(__GXX_EXPERIMENTAL_CXX0X__) && !defined(BOOST_INTEL_STDCXX0X) +# error This feature is not available in non-C++0x mode +#endif + +namespace boost_no_cxx11_lambdas { + +template <class Func> +int f(Func f) +{ + return f(); +} + +int test() +{ + return f([](){ return 0; }); +} + +} diff --git a/src/boost/libs/config/test/boost_no_limits.ipp b/src/boost/libs/config/test/boost_no_limits.ipp new file mode 100644 index 000000000..e7a011b88 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_limits.ipp @@ -0,0 +1,34 @@ +// (C) Copyright John Maddock 2001. +// 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_LIMITS +// TITLE: <limits> +// DESCRIPTION: The C++ implementation does not provide the <limits> header. + +#include <limits> + +namespace boost_no_limits{ + +int test() +{ + if(0 == std::numeric_limits<int>::is_specialized) return -1; + if(0 == std::numeric_limits<long>::is_specialized) return -1; + if(0 == std::numeric_limits<char>::is_specialized) return -1; + if(0 == std::numeric_limits<unsigned char>::is_specialized) return -1; + if(0 == std::numeric_limits<signed char>::is_specialized) return -1; + if(0 == std::numeric_limits<float>::is_specialized) return -1; + if(0 == std::numeric_limits<double>::is_specialized) return -1; + if(0 == std::numeric_limits<long double>::is_specialized) return -1; + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_limits_const_exp.ipp b/src/boost/libs/config/test/boost_no_limits_const_exp.ipp new file mode 100644 index 000000000..8438f7eae --- /dev/null +++ b/src/boost/libs/config/test/boost_no_limits_const_exp.ipp @@ -0,0 +1,42 @@ +// (C) Copyright John Maddock 2001. +// 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_LIMITS_COMPILE_TIME_CONSTANTS +// TITLE: compile time constants in <limits> +// DESCRIPTION: constants such as numeric_limits<T>::is_signed +// are not available for use at compile-time. + +#include <limits> + +namespace boost_no_limits_compile_time_constants{ + +struct UDT{}; + +template <int i> +struct assert_ice +{ + enum { value = i }; +}; + +int test() +{ + assert_ice< ::std::numeric_limits<int>::is_signed > one; + assert_ice< ::std::numeric_limits<double>::is_specialized > two; + assert_ice< ::std::numeric_limits<UDT>::is_specialized > three; + assert_ice< ::std::numeric_limits<UDT>::is_signed > four; + (void)one; + (void)two; + (void)three; + (void)four; + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_ll_limits.ipp b/src/boost/libs/config/test/boost_no_ll_limits.ipp new file mode 100644 index 000000000..8f7db7dca --- /dev/null +++ b/src/boost/libs/config/test/boost_no_ll_limits.ipp @@ -0,0 +1,37 @@ +// (C) Copyright John Maddock 2001. +// 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_LONG_LONG_NUMERIC_LIMITS +// TITLE: std::numeric_limits<long long> +// DESCRIPTION: The C++ implementation does not provide the a specialisation +// for std::numeric_limits<long long>. + +#include <limits> + +namespace boost_no_long_long_numeric_limits{ + +int test() +{ +#ifdef __GNUC__ +__extension__ +#endif + typedef long long llt; +#ifdef __GNUC__ +__extension__ +#endif + typedef unsigned long long ullt; + if(0 == std::numeric_limits<llt>::is_specialized) return -1; + if(0 == std::numeric_limits<ullt>::is_specialized) return -1; + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_long_long.ipp b/src/boost/libs/config/test/boost_no_long_long.ipp new file mode 100644 index 000000000..52ee3edcf --- /dev/null +++ b/src/boost/libs/config/test/boost_no_long_long.ipp @@ -0,0 +1,36 @@ +// (C) Copyright John Maddock 2001. +// 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_LONG_LONG +// TITLE: C++0x long long unavailable +// DESCRIPTION: The platform does not support C++0x long long. + +#include <cstdlib> + + +namespace boost_no_long_long{ + +int test() +{ +#ifdef __GNUC__ + __extension__ long long lli = 0LL; + __extension__ unsigned long long ulli = 0uLL; +#else + long long lli = 0LL; + unsigned long long ulli = 0uLL; +#endif + (void)&lli; + (void)&ulli; + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_mem_func_spec.ipp b/src/boost/libs/config/test/boost_no_mem_func_spec.ipp new file mode 100644 index 000000000..96cf92a27 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_mem_func_spec.ipp @@ -0,0 +1,62 @@ +// (C) Copyright John Maddock 2002. +// 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_MEMBER_FUNCTION_SPECIALIZATIONS +// TITLE: Specialisation of individual member functions. +// DESCRIPTION: Verify that specializations of individual members +// of template classes work OK. + + +namespace boost_no_member_function_specializations{ + + +template<class T> +class foo +{ +public: + foo(); + foo(const T&); + ~foo(); + int bar(); +}; + +// declare specialisations: +template<> foo<int>::foo(); +template<> foo<int>::foo(const int&); +template<> foo<int>::~foo(); +template<> int foo<int>::bar(); + +// provide defaults: +template<class T> foo<T>::foo(){} +template<class T> foo<T>::foo(const T&){} +template<class T> foo<T>::~foo(){} +template<class T> int foo<T>::bar(){ return 0; } + +// provide defs: +template<> foo<int>::foo(){} +template<> foo<int>::foo(const int&){} +template<> foo<int>::~foo(){} +template<> int foo<int>::bar(){ return 1; } + + +int test() +{ + foo<double> f1; + foo<int> f2; + f1.bar(); + f2.bar(); + return 0; +} + + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_no_mem_tem_keyword.ipp b/src/boost/libs/config/test/boost_no_mem_tem_keyword.ipp new file mode 100644 index 000000000..4f0901fc5 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_mem_tem_keyword.ipp @@ -0,0 +1,69 @@ +// (C) Copyright John Maddock 2001. +// 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_MEMBER_TEMPLATE_KEYWORD +// TITLE: member templates keyword +// DESCRIPTION: Member template keyword not supported. + +namespace boost_no_member_template_keyword{ + +#ifndef BOOST_NO_MEMBER_TEMPLATES + +template <class T> +struct foo +{ + template <class U> + struct nested + { + typedef foo<U> other; + }; + template <class U> + void mfoo(const U&); +}; + +template <class T> +template <class U> +void foo<T>::mfoo(const U&) +{ +} + +template <class T> +void test_proc(T i) +{ + foo<double> f1; + typedef foo<T> ifoo; + f1.mfoo(i); + f1.template mfoo<T>(i); + typedef typename ifoo::template nested<double> bound_t; + typedef typename bound_t::other other; + other o; + (void) &o; // avoid "unused variable" warning +} + +#else +template <class T> +void test_proc(T) +{ +} +#endif + +int test() +{ + test_proc(0); + return 0; +} + + +} + + + + + + + + diff --git a/src/boost/libs/config/test/boost_no_mem_tem_pnts.ipp b/src/boost/libs/config/test/boost_no_mem_tem_pnts.ipp new file mode 100644 index 000000000..ad9662027 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_mem_tem_pnts.ipp @@ -0,0 +1,50 @@ +// Copyright (C) Joaquin M Lopez Munoz 2004. +// 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_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS +// TITLE: pointers to members as template arguments +// DESCRIPTION: Non-type template parameters which take pointers +// to members, fail to work correctly. + + +namespace boost_no_pointer_to_member_template_parameters{ + +struct pair +{ + int x, y; + + pair(int x_,int y_) + : x(x_), y(y_) + {} +}; + +template<int pair::* PtrToPairMember> +struct foo +{ + int bar(pair& p) + { + return p.*PtrToPairMember; + } +}; + +int test() +{ + pair p(0,1); + foo<&pair::x> fx; + foo<&pair::y> fy; + + if((fx.bar(p) != 0) || (fy.bar(p) != 1)) + return 1; + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_mem_templ_frnds.ipp b/src/boost/libs/config/test/boost_no_mem_templ_frnds.ipp new file mode 100644 index 000000000..c1c1b6308 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_mem_templ_frnds.ipp @@ -0,0 +1,72 @@ +// (C) Copyright John Maddock 2001. +// 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_MEMBER_TEMPLATE_FRIENDS +// TITLE: member template friends +// DESCRIPTION: Member template friend syntax +// ("template<class P> friend class frd;") +// described in the C++ Standard, +// 14.5.3, not supported. + + +namespace boost_no_member_template_friends{ + +template <class T> +class foobar; + +template <class T> +class foo; + +template <class T> +bool must_be_friend_proc(const foo<T>& f); + +template <class T> +class foo +{ +private: + template<typename Y> friend class foobar; + template<typename Y> friend class foo; + template<typename Y> friend bool must_be_friend_proc(const foo<Y>& f); + int i; +public: + foo(){ i = 0; } + template <class U> + foo(const foo<U>& f){ i = f.i; } +}; + +template <class T> +bool must_be_friend_proc(const foo<T>& f) +{ return f.i != 0; } + +template <class T> +class foobar +{ + int i; +public: + template <class U> + foobar(const foo<U>& f) + { i = f.i; } +}; + + +int test() +{ + foo<int> fi; + foo<double> fd(fi); + must_be_friend_proc(fd); + foobar<long> fb(fi); + (void) &fb; // avoid "unused variable" warning + return 0; +} + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_no_mem_templates.ipp b/src/boost/libs/config/test/boost_no_mem_templates.ipp new file mode 100644 index 000000000..873580f3c --- /dev/null +++ b/src/boost/libs/config/test/boost_no_mem_templates.ipp @@ -0,0 +1,64 @@ +// (C) Copyright John Maddock 2001. +// 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_MEMBER_TEMPLATES +// TITLE: member templates +// DESCRIPTION: Member template functions not fully supported. + +#ifndef BOOST_NESTED_TEMPLATE +#define BOOST_NESTED_TEMPLATE template +#endif + + +namespace boost_no_member_templates{ + +template <class T> +struct foo +{ + template <class U> + struct nested + { + typedef foo<U> other; + }; + template <class U> + void mfoo(const U&); +}; + +template <class T> +template <class U> +void foo<T>::mfoo(const U&) +{ +} + +template <class T> +void test_proc(T i) +{ + foo<double> f1; + typedef foo<T> ifoo; + f1.mfoo(i); + //f1.template mfoo<T>(i); + typedef typename ifoo::BOOST_NESTED_TEMPLATE nested<double> bound_t; + typedef typename bound_t::other other; + other o; + (void) &o; +} + +int test() +{ + test_proc(0); + return 0; +} + + +} + + + + + + + diff --git a/src/boost/libs/config/test/boost_no_nested_friendship.ipp b/src/boost/libs/config/test/boost_no_nested_friendship.ipp new file mode 100644 index 000000000..7ff9cc42f --- /dev/null +++ b/src/boost/libs/config/test/boost_no_nested_friendship.ipp @@ -0,0 +1,44 @@ +// Copyright (C) 2008 N. Musatti +// 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_NESTED_FRIENDSHIP +// TITLE: Access to private members from nested classes +// DESCRIPTION: If the compiler fails to support access to private members +// from nested classes + +namespace boost_no_nested_friendship { + +class A { +public: + A() {} + struct B { + int f(A& a) + { + a.f1(); + a.f2(a); + return a.b; + } + }; + +private: + static int b; + static void f1(){} + template <class T> + static void f2(const T&){} +}; + +int A::b = 0; + +int test() +{ + A a; + A::B b; + return b.f(a); +} + +} + diff --git a/src/boost/libs/config/test/boost_no_noexcept.ipp b/src/boost/libs/config/test/boost_no_noexcept.ipp new file mode 100644 index 000000000..878658f11 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_noexcept.ipp @@ -0,0 +1,26 @@ +// Copyright (C) 2011 Takaya Saito +// 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_NOEXCEPT +// TITLE: C++0x noexcept unavailable +// DESCRIPTION: The compiler does not support C++0x noexcept + +namespace boost_no_cxx11_noexcept { + +void quiet_warning(bool){} + +int f() noexcept ; +int g() noexcept( noexcept( f() ) ) ; + +int test() +{ + bool b = noexcept( g() ); + quiet_warning(b); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_nullptr.ipp b/src/boost/libs/config/test/boost_no_nullptr.ipp new file mode 100644 index 000000000..5fc12fb62 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_nullptr.ipp @@ -0,0 +1,24 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_NULLPTR +// TITLE: C++0x nullptr feature unavailable +// DESCRIPTION: The compiler does not support the C++0x nullptr feature + +namespace boost_no_cxx11_nullptr { + +void quiet_warning(const int*){} + +int test() +{ + int * p = nullptr; + quiet_warning(p); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_ops_in_namespace.ipp b/src/boost/libs/config/test/boost_no_ops_in_namespace.ipp new file mode 100644 index 000000000..895d9bae0 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_ops_in_namespace.ipp @@ -0,0 +1,73 @@ +// (C) Copyright Jeremy Siek 1999. +// (C) Copyright David Abrahams 1999. +// (C) Copyright John Maddock 2001. +// 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_OPERATORS_IN_NAMESPACE +// TITLE: friend operators in namespace +// DESCRIPTION: Compiler requires inherited operator +// friend functions to be defined at namespace scope, +// then using'ed to boost. +// Probably GCC specific. See boost/operators.hpp for example. + +namespace boost{ + +// +// the following is taken right out of <boost/operators.hpp> +// +template <class T> +struct addable1 +{ + friend T operator+(T x, const T& y) { return x += y; } + friend bool operator != (const T& a, const T& b) { return !(a == b); } +}; + +struct spoiler1 +{}; + +spoiler1 operator+(const spoiler1&,const spoiler1&); +bool operator !=(const spoiler1&, const spoiler1&); + + +} // namespace boost + +namespace boost_no_operators_in_namespace{ + +struct spoiler2 +{}; + +spoiler2 operator+(const spoiler2&,const spoiler2&); +bool operator !=(const spoiler2&, const spoiler2&); + + +class add : public boost::addable1<add> +{ + int val; +public: + add(int i) { val = i; } + add(const add& a){ val = a.val; } + add& operator+=(const add& a) { val += a.val; return *this; } + bool operator==(const add& a)const { return val == a.val; } +}; + +int test() +{ + add a1(2); + add a2(3); + add a3(0); + a3 = a1 + a2; + bool b1 = (a1 == a2); + b1 = (a1 != a2); + (void)b1; + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_part_spec_def_args.ipp b/src/boost/libs/config/test/boost_no_part_spec_def_args.ipp new file mode 100644 index 000000000..91ef53768 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_part_spec_def_args.ipp @@ -0,0 +1,46 @@ +// (C) Copyright John Maddock 2008. +// 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_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS +// TITLE: Default arguments in partial specialization +// DESCRIPTION: The compiler chokes if a partial specialization relies on default arguments in the primary template. + +namespace boost_no_partial_specialization_implicit_default_args{ + +template <class T> +struct one +{ +}; + +template <class T1, class T2 = void> +struct tag +{ +}; + +template <class T1> +struct tag<one<T1> > +{ +}; + +template <class T> +void consume_variable(T const&){} + +int test() +{ + tag<int> t1; + consume_variable(t1); + tag<one<int> > t2; + consume_variable(t2); + tag<int, double> t3; + consume_variable(t3); + tag<one<int>, double> t4; + consume_variable(t4); + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_partial_spec.ipp b/src/boost/libs/config/test/boost_no_partial_spec.ipp new file mode 100644 index 000000000..036744eb5 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_partial_spec.ipp @@ -0,0 +1,56 @@ +// (C) Copyright John Maddock 2001. +// 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_TEMPLATE_PARTIAL_SPECIALIZATION +// TITLE: partial specialisation +// DESCRIPTION: Class template partial specialization +// (14.5.4 [temp.class.spec]) not supported. + + +namespace boost_no_template_partial_specialization{ + +template <class T> +struct partial1 +{ + typedef T& type; +}; + +template <class T> +struct partial1<T&> +{ + typedef T& type; +}; + +template <class T, bool b> +struct partial2 +{ + typedef T& type; +}; + +template <class T> +struct partial2<T,true> +{ + typedef T type; +}; + + +int test() +{ + int i = 0; + partial1<int&>::type p1 = i; + partial2<int&,true>::type p2 = i; + (void)p1; + (void)p2; + (void)i; + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_priv_aggregate.ipp b/src/boost/libs/config/test/boost_no_priv_aggregate.ipp new file mode 100644 index 000000000..ca1aee785 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_priv_aggregate.ipp @@ -0,0 +1,39 @@ +// (C) Copyright John Maddock 2001. +// 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_PRIVATE_IN_AGGREGATE +// TITLE: private in aggregate types +// DESCRIPTION: The compiler misreads 8.5.1, treating classes +// as non-aggregate if they contain private or +// protected member functions. + + +namespace boost_no_private_in_aggregate{ + +struct t +{ +private: + void foo(){ i = j; } +public: + void uncallable(); // silences warning from GCC + int i; + int j; +}; + + +int test() +{ + t inst = { 0, 0, }; + (void) &inst; // avoid "unused variable" warning + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_ptr_mem_const.ipp b/src/boost/libs/config/test/boost_no_ptr_mem_const.ipp new file mode 100644 index 000000000..f1069669c --- /dev/null +++ b/src/boost/libs/config/test/boost_no_ptr_mem_const.ipp @@ -0,0 +1,84 @@ +// Copyright (c) 2000 +// Cadenza New Zealand Ltd +// +// (C) Copyright John Maddock 2001. +// +// 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. + +// MACRO: BOOST_NO_POINTER_TO_MEMBER_CONST +// TITLE: pointers to const member functions +// DESCRIPTION: The compiler does not correctly handle +// pointers to const member functions, preventing use +// of these in overloaded function templates. +// See boost/functional.hpp for example. + +namespace boost_no_pointer_to_member_const{ + +template <class S, class T> +class const_mem_fun_t +{ +public: + explicit const_mem_fun_t(S (T::*p)() const) + : + ptr(p) + {} + S operator()(const T* p) const + { + return (p->*ptr)(); + } +private: + S (T::*ptr)() const; +}; + +template <class S, class T, class A> +class const_mem_fun1_t +{ +public: + explicit const_mem_fun1_t(S (T::*p)(A) const) + : + ptr(p) + {} + S operator()(const T* p, const A& x) const + { + return (p->*ptr)(x); + } +private: + S (T::*ptr)(A) const; +}; + +template<class S, class T> +inline const_mem_fun_t<S,T> mem_fun(S (T::*f)() const) +{ + return const_mem_fun_t<S,T>(f); +} + +template<class S, class T, class A> +inline const_mem_fun1_t<S,T,A> mem_fun(S (T::*f)(A) const) +{ + return const_mem_fun1_t<S,T,A>(f); +} + +class tester +{ +public: + void foo1()const{} + int foo2(int i)const{ return i*2; } +}; + + +int test() +{ + boost_no_pointer_to_member_const::mem_fun(&tester::foo1); + boost_no_pointer_to_member_const::mem_fun(&tester::foo2); + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_range_based_for.ipp b/src/boost/libs/config/test/boost_no_range_based_for.ipp new file mode 100644 index 000000000..15468ec46 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_range_based_for.ipp @@ -0,0 +1,23 @@ +// Copyright Beman Dawes 2012 + +// Distributed under the Boost Software License, Version 1.0. +// See http://www.boost.org/LICENSE_1_0.txt + +// See http://www.boost.org/libs/config for more information. + +// MACRO: BOOST_NO_CXX11_RANGE_BASED_FOR +// TITLE: C++11 ranged-based for statement unavailable +// DESCRIPTION: The compiler does not support the C++11 range-based for statement + +namespace boost_no_cxx11_range_based_for { + +int test() +{ + // example from 6.5.4 The range-based for statement [stmt.ranged] + int array[5] = { 1, 2, 3, 4, 5 }; + for (int& x : array) + x *= 2; + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_raw_literals.ipp b/src/boost/libs/config/test/boost_no_raw_literals.ipp new file mode 100644 index 000000000..c3ead77bc --- /dev/null +++ b/src/boost/libs/config/test/boost_no_raw_literals.ipp @@ -0,0 +1,27 @@ +// (C) Copyright Beman Dawes 2008 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_RAW_LITERALS +// TITLE: C++0x raw string literals unavailable +// DESCRIPTION: The compiler does not support C++0x raw string literals + +namespace boost_no_cxx11_raw_literals { + +void quiet_warning(const char*){} +void quiet_warning(const wchar_t*){} + +int test() +{ + const char* s = R"(abc)"; + quiet_warning(s); + const wchar_t* ws = LR"(abc)"; + quiet_warning(ws); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_restrict_references.ipp b/src/boost/libs/config/test/boost_no_restrict_references.ipp new file mode 100644 index 000000000..548984d28 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_restrict_references.ipp @@ -0,0 +1,47 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_RESTRICT_REFERENCES +// TITLE: We cannot apply BOOST_RESTRICT to a reference type. +// DESCRIPTION: We cannot apply BOOST_RESTRICT to a reference type + +#include <boost/config.hpp> + +namespace boost_no_restrict_references { + +#ifdef _MSC_VER +#pragma warning(error:4227) +#endif + + +void sum2(int (& BOOST_RESTRICT a)[4], int (& BOOST_RESTRICT b)[4], int (&c)[4], int (&d)[4]) { + int i; + for (i = 0; i < 4; i++) { + a[i] = b[i] + c[i]; + c[i] = b[i] + d[i]; + } +} + +int test() +{ + int a[4] = { 1, 2, 3, 4 }; + int b[4] = { 3, 4, 5, 6 }; + int c[4] = { 0, 1, 3, 5 }; + int d[4] = { 2, 4, 6, 8 }; + + sum2(a, b, c, d); + + return 0; +} + +#ifdef _MSC_VER +#pragma warning(default:4227) +#endif + + +} diff --git a/src/boost/libs/config/test/boost_no_ret_det.ipp b/src/boost/libs/config/test/boost_no_ret_det.ipp new file mode 100644 index 000000000..e57c9ed73 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_ret_det.ipp @@ -0,0 +1,43 @@ +// (C) Copyright John Maddock 2001. +// 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. + +// MACRO: BOOST_NO_UNREACHABLE_RETURN_DETECTION +// TITLE: detection of unreachable returns +// DESCRIPTION: If a return is unreachable, then no return +// statement should be required, however some +// compilers insist on it, while other issue a +// bunch of warnings if it is in fact present. + +#if defined( BOOST_NO_EXCEPTIONS ) +# include <stdlib.h> +#endif + +namespace boost_no_unreachable_return_detection{ + +int checker() +{ +#if defined( BOOST_NO_EXCEPTIONS ) && (!defined( _MSC_VER ) || defined(__clang__)) + abort(); +#else + throw 0; +#endif + // no return statement: we don't ever get here... +} + +int check = 0; + +int test() +{ + if(check) + return checker(); + return 0; +} + +} + + + diff --git a/src/boost/libs/config/test/boost_no_rtti.ipp b/src/boost/libs/config/test/boost_no_rtti.ipp new file mode 100644 index 000000000..4295d70cc --- /dev/null +++ b/src/boost/libs/config/test/boost_no_rtti.ipp @@ -0,0 +1,64 @@ +// (C) Copyright John Maddock 2008. +// 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_RTTI +// TITLE: RTTI unavailable +// DESCRIPTION: The compiler does not support RTTI in this mode + +#include <typeinfo> + +class A +{ +public: + A(){} + virtual void t(); +}; + +void A::t() +{ +} + +class B : public A +{ +public: + B(){} + virtual void t(); +}; + +void B::t() +{ +} + +namespace boost_no_rtti +{ + +int check_f(const A& a) +{ + return typeid(a) == typeid(B) ? 0 : 1; +} + +int test() +{ +#if defined( BOOST_NO_EXCEPTIONS ) + { + B b; + return check_f(b); + } +#else + try{ + B b; + return check_f(b); + } + catch(...) + { + return 1; + } +#endif +} + +} + diff --git a/src/boost/libs/config/test/boost_no_rvalue_references.ipp b/src/boost/libs/config/test/boost_no_rvalue_references.ipp new file mode 100644 index 000000000..219a7173a --- /dev/null +++ b/src/boost/libs/config/test/boost_no_rvalue_references.ipp @@ -0,0 +1,26 @@ +// Copyright (C) 2007 Douglas Gregor +// 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_RVALUE_REFERENCES +// TITLE: C++0x rvalue references unavailable +// DESCRIPTION: The compiler does not support C++0x rvalue references + +namespace boost_no_cxx11_rvalue_references { + +void g(int&) {} + +template<typename F, typename T> +void forward(F f, T&& t) { f(static_cast<T&&>(t)); } + +int test() +{ + int x; + forward(g, x); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_scoped_enums.ipp b/src/boost/libs/config/test/boost_no_scoped_enums.ipp new file mode 100644 index 000000000..f1d9dc56a --- /dev/null +++ b/src/boost/libs/config/test/boost_no_scoped_enums.ipp @@ -0,0 +1,28 @@ +// (C) Copyright Beman Dawes 2008 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_SCOPED_ENUMS +// TITLE: C++0x scoped enum unavailable +// DESCRIPTION: The compiler does not support C++0x scoped enum + +namespace boost_no_cxx11_scoped_enums { + +int test() +{ + enum class scoped_enum { yes, no, maybe }; + // This tests bug http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38064 + bool b = (scoped_enum::yes == scoped_enum::yes) + && (scoped_enum::yes != scoped_enum::no) + && (scoped_enum::yes < scoped_enum::no) + && (scoped_enum::yes <= scoped_enum::no) + && (scoped_enum::no > scoped_enum::yes) + && (scoped_enum::no >= scoped_enum::yes); + return b ? 0 : 1; +} + +} diff --git a/src/boost/libs/config/test/boost_no_sfinae.ipp b/src/boost/libs/config/test/boost_no_sfinae.ipp new file mode 100644 index 000000000..57dad2825 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_sfinae.ipp @@ -0,0 +1,68 @@ +// (C) Copyright Eric Friedman 2003. +// Some modifications by Jeremiah Willcock and Jaakko Jarvi. +// Use, modification, and distribution is 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) + +// MACRO: BOOST_NO_SFINAE +// TITLE: SFINAE (substitution failure is not an error) +// DESCRIPTION: SFINAE not supported. + + +namespace boost_no_sfinae { + +namespace f1_a { +template <typename T> +int f1(T*, float) +{ + return 0; +} +} using f1_a::f1; + +namespace f1_b { +template <typename T> +int f1(T*, int, typename T::int_* = 0) +{ + return 1; +} +} using f1_b::f1; + +namespace f2_a { +template <typename T> +int f2(T*, float) +{ + return 2; +} +} using f2_a::f2; + +namespace f2_b { +template <typename T> +typename T::int_ f2(T*, int) +{ + return 3; +} +} using f2_b::f2; + +struct test_t +{ + typedef int int_; +}; + +struct test2_t {}; + +int test() +{ + test_t* t = 0; + test2_t* t2 = 0; + bool correct = + (f1(t, 0) == 1) && + (f1(t2, 0) == 0) && + (f2(t, 0) == 3) && + (f2(t2, 0) == 2); + return !correct; +} + +} + + + diff --git a/src/boost/libs/config/test/boost_no_sfinae_expr.ipp b/src/boost/libs/config/test/boost_no_sfinae_expr.ipp new file mode 100644 index 000000000..c3ce89e81 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_sfinae_expr.ipp @@ -0,0 +1,37 @@ +// (C) Copyright Mathias Gaunard 2009. +// 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. + +// MACRO: BOOST_NO_SFINAE_EXPR +// TITLE: SFINAE for expressions +// DESCRIPTION: SFINAE for expressions not supported. + +namespace boost_no_sfinae_expr +{ + +template<typename T> +struct has_foo +{ + typedef char NotFound; + struct Found { char x[2]; }; + + template<int> struct dummy {}; + + template<class X> static Found test(dummy< sizeof((*(X*)0).foo(), 0) >*); + template<class X> static NotFound test( ... ); + + static const bool value = (sizeof(Found) == sizeof(test<T>(0))); +}; + +struct test1 {}; +struct test2 { void foo(); }; + +int test() +{ + return has_foo<test1>::value || !has_foo<test2>::value; +} + +} // namespace boost_no_sfinae_expr diff --git a/src/boost/libs/config/test/boost_no_sstream.ipp b/src/boost/libs/config/test/boost_no_sstream.ipp new file mode 100644 index 000000000..6d06b11a6 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_sstream.ipp @@ -0,0 +1,29 @@ +// (C) Copyright John Maddock 2001. +// 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. + +// MACRO: BOOST_NO_STRINGSTREAM +// TITLE: <sstream> +// DESCRIPTION: The C++ implementation does not provide the <sstream> header. + +#include <sstream> +#include <string> + +namespace boost_no_stringstream{ + +int test() +{ + std::stringstream ss; + ss << "abc"; + std::string s = ss.str(); + return (s != "abc"); +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_static_assert.ipp b/src/boost/libs/config/test/boost_no_static_assert.ipp new file mode 100644 index 000000000..38ca2967f --- /dev/null +++ b/src/boost/libs/config/test/boost_no_static_assert.ipp @@ -0,0 +1,20 @@ +// Copyright (C) 2007 Douglas Gregor +// 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_STATIC_ASSERT +// TITLE: C++0x static_assert unavailable +// DESCRIPTION: The compiler does not support C++0x static assertions + +namespace boost_no_cxx11_static_assert { + +int test() +{ + static_assert(true, "OK"); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_std_allocator.ipp b/src/boost/libs/config/test/boost_no_std_allocator.ipp new file mode 100644 index 000000000..920bf1de8 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_std_allocator.ipp @@ -0,0 +1,88 @@ +// (C) Copyright John Maddock 2001. +// 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. + +// MACRO: BOOST_NO_STD_ALLOCATOR +// TITLE: std::allocator +// DESCRIPTION: The C++ standard library does not provide +// a standards conforming std::allocator. + +#ifndef BOOST_NESTED_TEMPLATE +#define BOOST_NESTED_TEMPLATE template +#endif + +#include <memory> + +namespace boost_no_std_allocator{ + +#if defined(__GNUC__) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 7))) +# define BOOST_UNUSED_ATTRIBUTE __attribute__((unused)) +#else +# define BOOST_UNUSED_ATTRIBUTE +#endif + +template <class T> +int test_allocator(const T& i) +{ + typedef std::allocator<int> alloc1_t; +#if !((__cplusplus > 201700) || (defined(_MSVC_LANG) && (_MSVC_LANG > 201700))) + // stuff deprecated in C++17: + typedef typename alloc1_t::size_type size_type; + typedef typename alloc1_t::difference_type difference_type BOOST_UNUSED_ATTRIBUTE; + typedef typename alloc1_t::pointer pointer; + typedef typename alloc1_t::const_pointer const_pointer; + typedef typename alloc1_t::reference reference; + typedef typename alloc1_t::const_reference const_reference; + #endif + typedef typename alloc1_t::value_type value_type BOOST_UNUSED_ATTRIBUTE; + + alloc1_t a1; + alloc1_t a2(a1); + (void)i; +#if !((__cplusplus > 201700) || (defined(_MSVC_LANG) && (_MSVC_LANG > 201700))) + // stuff deprecated in C++17: + typedef typename alloc1_t::BOOST_NESTED_TEMPLATE rebind<double> binder_t; + typedef typename binder_t::other alloc2_t; + alloc2_t a3(a1); + // this chokes early versions of the MSL library + // and isn't currently required by anything in boost + // so don't test for now... + // a3 = a2; + + (void)a2; +#endif + +#if !((__cplusplus > 201700) || (defined(_MSVC_LANG) && (_MSVC_LANG > 201700))) + pointer p = a1.allocate(1); + const_pointer cp = p; + a1.construct(p,i); + size_type s = a1.max_size(); + (void)s; + reference r = *p; + const_reference cr = *cp; + if(p != a1.address(r)) return -1; + if(cp != a1.address(cr)) return -1; + a1.destroy(p); +#else + auto p = a1.allocate(1); +#endif + a1.deallocate(p,1); + + return 0; +} + + +int test() +{ + return test_allocator(0); +} + +} + +#undef BOOST_UNUSED_ATTRIBUTE + + + diff --git a/src/boost/libs/config/test/boost_no_std_distance.ipp b/src/boost/libs/config/test/boost_no_std_distance.ipp new file mode 100644 index 000000000..93affff7a --- /dev/null +++ b/src/boost/libs/config/test/boost_no_std_distance.ipp @@ -0,0 +1,31 @@ +// (C) Copyright John Maddock 2001. +// 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. + +// MACRO: BOOST_NO_STD_DISTANCE +// TITLE: std::distance +// DESCRIPTION: The platform does not have a conforming version of std::distance. + +#include <algorithm> +#include <iterator> + + +namespace boost_no_std_distance{ + +int test() +{ + const char* begin = 0; + const char* end = 0; + if(std::distance(begin, end)) return -1; + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_std_iter_traits.ipp b/src/boost/libs/config/test/boost_no_std_iter_traits.ipp new file mode 100644 index 000000000..31a9394d5 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_std_iter_traits.ipp @@ -0,0 +1,80 @@ +// (C) Copyright John Maddock 2001. +// 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. + +// MACRO: BOOST_NO_STD_ITERATOR_TRAITS +// TITLE: std::iterator_traits +// DESCRIPTION: The compiler does not provide a standard +// compliant implementation of std::iterator_traits. +// Note that the compiler may still have a non-standard +// implementation. + +#include <iterator> +#include <stddef.h> + +namespace boost_no_std_iterator_traits{ + +struct UDT_iterator +{ + typedef int value_type; + typedef ptrdiff_t difference_type; + typedef int* pointer; + typedef int& reference; + typedef std::input_iterator_tag iterator_category; +}; + +struct UDT{}; + + +int test() +{ + std::iterator_traits<UDT_iterator>::value_type v = 0; + std::iterator_traits<UDT_iterator>::difference_type d = 0; + std::iterator_traits<UDT_iterator>::pointer p = &v; + std::iterator_traits<UDT_iterator>::reference r = v; + std::iterator_traits<UDT_iterator>::iterator_category cat; + + std::iterator_traits<UDT*>::value_type v2; + std::iterator_traits<UDT*>::difference_type d2 = 0; + std::iterator_traits<UDT*>::pointer p2 = &v2; + std::iterator_traits<UDT*>::reference r2 = v2; + std::iterator_traits<UDT*>::iterator_category cat2; + + std::iterator_traits<const UDT*>::value_type v3; + std::iterator_traits<const UDT*>::difference_type d3 = 0; + std::iterator_traits<const UDT*>::pointer p3 = &v3; + std::iterator_traits<const UDT*>::reference r3 = v3; + std::iterator_traits<const UDT*>::iterator_category cat3; + + // + // suppress some warnings: + // + (void) &v; + (void) &d; + (void) &p; + (void) &r; + (void) &cat; + + (void) &v2; + (void) &d2; + (void) &p2; + (void) &r2; + (void) &cat2; + + (void) &v3; + (void) &d3; + (void) &p3; + (void) &r3; + (void) &cat3; + + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_std_iterator.ipp b/src/boost/libs/config/test/boost_no_std_iterator.ipp new file mode 100644 index 000000000..e5332ef35 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_std_iterator.ipp @@ -0,0 +1,67 @@ +// (C) Copyright John Maddock 2001. +// 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. + +// MACRO: BOOST_NO_STD_ITERATOR +// TITLE: std::iterator +// DESCRIPTION: The C++ implementation fails to provide the +// std::iterator class. + +#include <iterator> +#include <stddef.h> + +namespace boost_no_std_iterator{ + + +int test() +{ + typedef std::iterator< + std::random_access_iterator_tag, + int, + ptrdiff_t, + int*, + int& + > iterator_type; + + iterator_type::value_type v = 0; + iterator_type::difference_type d = 0; + iterator_type::pointer p = &v; + iterator_type::reference r = v; + iterator_type::iterator_category cat; + + typedef std::iterator< + std::random_access_iterator_tag, + int + > iterator_type_2; + + iterator_type_2::value_type v2 = 0; + iterator_type_2::difference_type d2 = 0; + iterator_type_2::pointer p2 = &v2; + iterator_type_2::reference r2 = v2; + iterator_type_2::iterator_category cat2; + // + // suppress some warnings: + // + (void) &v; + (void) &d; + (void) &p; + (void) &r; + (void) &cat; + + (void) &v2; + (void) &d2; + (void) &p2; + (void) &r2; + (void) &cat2; + + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_std_locale.ipp b/src/boost/libs/config/test/boost_no_std_locale.ipp new file mode 100644 index 000000000..29d8e3232 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_std_locale.ipp @@ -0,0 +1,36 @@ +// (C) Copyright John Maddock 2001. +// 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. + +// MACRO: BOOST_NO_STD_LOCALE +// TITLE: std::locale +// DESCRIPTION: The standard library lacks std::locale. + +#include <locale> + +namespace boost_no_std_locale{ + +int test() +{ + std::locale l1; + // + // ideally we would construct a locale from a facet, + // but that requires template member functions which + // may not be available, instead just check that we can + // construct a pointer to a facet: + // + const std::ctype<char>* pct = 0; + (void) &l1; + (void) &pct; + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_std_messages.ipp b/src/boost/libs/config/test/boost_no_std_messages.ipp new file mode 100644 index 000000000..3fbd6f07e --- /dev/null +++ b/src/boost/libs/config/test/boost_no_std_messages.ipp @@ -0,0 +1,39 @@ +// (C) Copyright John Maddock 2001. +// 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. + +// MACRO: BOOST_NO_STD_MESSAGES +// TITLE: std::messages<charT> +// DESCRIPTION: The standard library lacks a conforming std::messages facet. + +#include <locale> + + +namespace boost_no_std_messages{ + +// +// this just has to complile, not run: +// +void test_messages(const std::messages<char>& m) +{ + static const std::locale l; + static const std::string name("foobar"); + m.close(m.open(name, l)); +} + +int test() +{ + const std::messages<char>* pmf = 0; + (void) &pmf; + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_std_min_max.ipp b/src/boost/libs/config/test/boost_no_std_min_max.ipp new file mode 100644 index 000000000..a8260062b --- /dev/null +++ b/src/boost/libs/config/test/boost_no_std_min_max.ipp @@ -0,0 +1,33 @@ +// (C) Copyright John Maddock 2001. +// 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. + +// MACRO: BOOST_NO_STD_MIN_MAX +// TITLE: std::min and std::max +// DESCRIPTION: The C++ standard library does not provide +// the (min)() and (max)() template functions that +// should be in <algorithm>. + +#include <algorithm> + +namespace boost_no_std_min_max{ + + +int test() +{ + int i = 0; + int j = 2; + if((std::min)(i,j) != 0) return -1; + if((std::max)(i,j) != 2) return -1; + + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_std_oi_assign.ipp b/src/boost/libs/config/test/boost_no_std_oi_assign.ipp new file mode 100644 index 000000000..9d5061442 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_std_oi_assign.ipp @@ -0,0 +1,42 @@ +// (C) Copyright John Maddock 2001. +// 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. + +// MACRO: BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN +// TITLE: That the std output iterators are assignable +// DESCRIPTION: Some std lib output iterators are not assignable +// even this is required by the standard. + +#include <iterator> +#include <list> +#include <iostream> + + +namespace boost_no_std_output_iterator_assign { + +int test() +{ + std::list<int> l; + std::back_insert_iterator<std::list<int> > bi1(l); + std::back_insert_iterator<std::list<int> > bi2(l); + bi1 = bi2; + + std::front_insert_iterator<std::list<int> > fi1(l); + std::front_insert_iterator<std::list<int> > fi2(l); + fi1 = fi2; + + std::ostream_iterator<char> osi1(std::cout); + std::ostream_iterator<char> osi2(std::cout); + osi1 = osi2; + + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/boost_no_std_typeinfo.ipp b/src/boost/libs/config/test/boost_no_std_typeinfo.ipp new file mode 100644 index 000000000..a55a94d81 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_std_typeinfo.ipp @@ -0,0 +1,26 @@ +// (C) Copyright Peter Dimov 2007. +// 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_STD_TYPEINFO +// TITLE: type_info not in namespace std +// DESCRIPTION: The <typeinfo> header declares type_info in the global namespace instead of std + +#include <typeinfo> + +namespace boost_no_std_typeinfo +{ +void quiet_warning(const std::type_info*){} + +int test() +{ + std::type_info * p = 0; + quiet_warning(p); + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_std_use_facet.ipp b/src/boost/libs/config/test/boost_no_std_use_facet.ipp new file mode 100644 index 000000000..c207af7d3 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_std_use_facet.ipp @@ -0,0 +1,29 @@ +// (C) Copyright John Maddock 2001. +// 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. + +// MACRO: BOOST_NO_STD_USE_FACET +// TITLE: std::use_facet +// DESCRIPTION: The standard library lacks a conforming std::use_facet. + +#include <locale> + +namespace boost_no_std_use_facet{ + +int test() +{ + std::locale l; + const std::ctype<char>& ct = std::use_facet<std::ctype<char> >(l); + (void)ct; + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_std_wstreambuf.ipp b/src/boost/libs/config/test/boost_no_std_wstreambuf.ipp new file mode 100644 index 000000000..45de2426f --- /dev/null +++ b/src/boost/libs/config/test/boost_no_std_wstreambuf.ipp @@ -0,0 +1,108 @@ +// (C) Copyright John Maddock 2001. +// 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_STD_WSTREAMBUF +// TITLE: std::basic_streambuf<wchar_t> +// DESCRIPTION: The standard library lacks std::basic_streambuf<wchar_t>. + +#include <iostream> +#include <streambuf> +#include <string> + +namespace boost_no_std_wstreambuf{ + +template <class charT, + class traits = ::std::char_traits<charT> > +class parser_buf : public ::std::basic_streambuf<charT, traits> +{ + typedef ::std::basic_streambuf<charT, traits> base_type; + typedef typename base_type::int_type int_type; + typedef typename base_type::char_type char_type; + typedef typename base_type::pos_type pos_type; + typedef ::std::streamsize streamsize; + typedef typename base_type::off_type off_type; +public: + parser_buf() : base_type() { setbuf(0, 0); } + const charT* getnext() { return this->gptr(); } +protected: + std::basic_streambuf<charT, traits>* setbuf(char_type* s, streamsize n); + typename parser_buf<charT, traits>::pos_type seekpos(pos_type sp, ::std::ios_base::openmode which); + typename parser_buf<charT, traits>::pos_type seekoff(off_type off, ::std::ios_base::seekdir way, ::std::ios_base::openmode which); +private: + parser_buf& operator=(const parser_buf&) + { return *this; }; + parser_buf(const parser_buf&); +}; + +template<class charT, class traits> +std::basic_streambuf<charT, traits>* +parser_buf<charT, traits>::setbuf(char_type* s, streamsize n) +{ + this->setg(s, s, s + n); + return this; +} + +template<class charT, class traits> +typename parser_buf<charT, traits>::pos_type +parser_buf<charT, traits>::seekoff(off_type off, ::std::ios_base::seekdir way, ::std::ios_base::openmode which) +{ + typedef typename parser_buf<charT, traits>::pos_type pos_type; + if(which & ::std::ios_base::out) + return pos_type(off_type(-1)); + int size = this->egptr() - this->eback(); + int pos = this->gptr() - this->eback(); + charT* g = this->eback(); + switch((int)way) + { + case ::std::ios_base::beg: + if((off < 0) || (off > size)) + return pos_type(off_type(-1)); + else + this->setg(g, g + off, g + size); + case ::std::ios_base::end: + if((off < 0) || (off > size)) + return pos_type(off_type(-1)); + else + this->setg(g, g + size - off, g + size); + case ::std::ios_base::cur: + { + int newpos = pos + off; + if((newpos < 0) || (newpos > size)) + return pos_type(off_type(-1)); + else + this->setg(g, g + newpos, g + size); + } + } + return static_cast<pos_type>(this->gptr() - this->eback()); +} + +template<class charT, class traits> +typename parser_buf<charT, traits>::pos_type +parser_buf<charT, traits>::seekpos(pos_type sp, ::std::ios_base::openmode which) +{ + if(which & ::std::ios_base::out) + return pos_type(off_type(-1)); + int size = this->egptr() - this->eback(); + charT* g = this->eback(); + if(off_type(sp) <= size) + { + this->setg(g, g + off_type(sp), g + size); + } + return pos_type(off_type(-1)); +} + + +int test() +{ + return 0; +} + +template class parser_buf<char>; +template class parser_buf<wchar_t>; + +} + diff --git a/src/boost/libs/config/test/boost_no_std_wstring.ipp b/src/boost/libs/config/test/boost_no_std_wstring.ipp new file mode 100644 index 000000000..d79fd95fa --- /dev/null +++ b/src/boost/libs/config/test/boost_no_std_wstring.ipp @@ -0,0 +1,28 @@ +// (C) Copyright John Maddock 2001. +// 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_STD_WSTRING +// TITLE: std::wstring +// DESCRIPTION: The standard library lacks std::wstring. + +#include <string> + +namespace boost_no_std_wstring{ + +int test() +{ + std::wstring s; + if(*s.c_str() || (s.begin() != s.end()) || s.size() || (sizeof(std::wstring::value_type) != sizeof(wchar_t))) return -1; + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_stdc_namespace.ipp b/src/boost/libs/config/test/boost_no_stdc_namespace.ipp new file mode 100644 index 000000000..3ff3f4948 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_stdc_namespace.ipp @@ -0,0 +1,43 @@ +// (C) Copyright John Maddock 2001. +// 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_STDC_NAMESPACE +// TITLE: std:: namespace for C API's +// DESCRIPTION: The contents of C++ standard headers for C library +// functions (the <c...> headers) have not been placed +// in namespace std. This test is difficult - some libraries +// "fake" the std C functions by adding using declarations +// to import them into namespace std, unfortunately they don't +// necessarily catch all of them... + +#include <cstring> +#include <cctype> +#include <ctime> + +#undef isspace +#undef isalpha +#undef ispunct + +namespace boost_no_stdc_namespace{ + + +int test() +{ + char c = 0; +#ifndef BOOST_NO_CTYPE_FUNCTIONS + (void)std::isspace(c); + (void)std::isalpha(c); + (void)std::ispunct(c); +#endif + (void)std::strlen(&c); + (void)std::clock(); + + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_swprintf.ipp b/src/boost/libs/config/test/boost_no_swprintf.ipp new file mode 100644 index 000000000..4b3a460f8 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_swprintf.ipp @@ -0,0 +1,31 @@ +// (C) Copyright John Maddock 2001. +// 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_SWPRINTF +// TITLE: swprintf +// DESCRIPTION: The platform does not have a conforming version of swprintf. + +#include <wchar.h> +#include <stdio.h> + + +namespace boost_no_swprintf{ + +int test() +{ + wchar_t buf[10]; + swprintf(buf, 10, L"%d", 10); + return 0; +} + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_no_tem_local_classes.ipp b/src/boost/libs/config/test/boost_no_tem_local_classes.ipp new file mode 100644 index 000000000..876980ec3 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_tem_local_classes.ipp @@ -0,0 +1,33 @@ + +// Copyright (C) 2009-2012 Lorenzo Caminiti +// Distributed under the Boost Software License, Version 1.0 +// (see accompanying file LICENSE_1_0.txt or a copy at +// http://www.boost.org/LICENSE_1_0.txt) +// Home at http://www.boost.org/libs/config + +// MACRO: BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS +// TITLE: local classes as template parameters +// DESCRIPTION: Local classes cannot be passed as template parameters. + +// NOTE: Local classes cannot be passed as template parameters in C++03 (even +// if some C++03 compilers, like MSVC and older GCC, allow it). Local classes +// can instead be passed as template parameters in C++11 (see also N2657, note +// that this macro does not check if unnamed types can also be passed as +// template parameters but it is intentionally limited to local named classes +// because some non C++11 compilers might only support local named classes as +// template parameters which is still very useful to program local functors). +namespace boost_no_cxx11_local_class_template_parameters { + +template<typename T> struct a { void use() {} }; +template<typename T> void f(T) {} + +int test() { + class local_class {} local_obj; + a<local_class> a1; + a1.use(); // Avoid unused variable warning. + f(local_obj); + return 0; +} + +} // namespace + diff --git a/src/boost/libs/config/test/boost_no_template_aliases.ipp b/src/boost/libs/config/test/boost_no_template_aliases.ipp new file mode 100644 index 000000000..90451e0ea --- /dev/null +++ b/src/boost/libs/config/test/boost_no_template_aliases.ipp @@ -0,0 +1,22 @@ +// (C) Copyright Beman Dawes 2009 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_TEMPLATE_ALIASES +// TITLE: C++0x template_aliases feature unavailable +// DESCRIPTION: The compiler does not support the C++0x template_aliases feature + +namespace boost_no_cxx11_template_aliases { + +using PINT = void (*)(int); // using plus C-style type + +int test() +{ + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_template_streams.ipp b/src/boost/libs/config/test/boost_no_template_streams.ipp new file mode 100644 index 000000000..bb24e132c --- /dev/null +++ b/src/boost/libs/config/test/boost_no_template_streams.ipp @@ -0,0 +1,29 @@ +// (C) Copyright John Maddock 2008. +// 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_TEMPLATED_IOSTREAMS +// TITLE: basic_iostream<> +// DESCRIPTION: The platform supports "new style" templated iostreams. + +#include <iostream> + + +namespace boost_no_templated_iostreams{ + +int test() +{ + std::basic_ostream<char, std::char_traits<char> >& osr = std::cout; + (void)osr; + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_template_template.ipp b/src/boost/libs/config/test/boost_no_template_template.ipp new file mode 100644 index 000000000..a07944524 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_template_template.ipp @@ -0,0 +1,50 @@ +// (C) Copyright John Maddock 2002. +// 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_TEMPLATE_TEMPLATES +// TITLE: template template paramters. +// DESCRIPTION: Verify that template template parameters both work +// and can be deduced through a function call. + + +namespace boost_no_template_templates{ + + +template<class T> +class foo +{ +public: + foo(){}; + foo(const T&){}; + const foo& bar()const{ return *this; } + foo& operator=(const foo&){ return *this; } +}; + +template<typename T, template<typename> class U> +U<T> sinhc_pi(const U<T> x) +{ + return x.bar(); +} + + +int test() +{ + foo<double> f1; + foo<int> f2; + f1 = sinhc_pi(f1); + f2 = sinhc_pi(f2); + return 0; +} + + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_no_two_phase_lookup.ipp b/src/boost/libs/config/test/boost_no_two_phase_lookup.ipp new file mode 100644 index 000000000..2c5419c8d --- /dev/null +++ b/src/boost/libs/config/test/boost_no_two_phase_lookup.ipp @@ -0,0 +1,41 @@ +// (C) Copyright Alisdair Meredith 2006. +// 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_TWO_PHASE_NAME_LOOKUP +// TITLE: Two phase name lookup +// DESCRIPTION: If the compiler does not perform two phase name lookup + +namespace boost_no_two_phase_name_lookup { + +template< class T > +struct base { + int call() { + return 1; + } +}; + +int call() { + return 0; +} + +template< class T > +struct derived : base< T > { + int call_test() { + return call(); + } +}; + +int test() +{ + derived< int > d; + return d.call_test(); +} + +} + + + diff --git a/src/boost/libs/config/test/boost_no_typeid.ipp b/src/boost/libs/config/test/boost_no_typeid.ipp new file mode 100644 index 000000000..72dd4d3d2 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_typeid.ipp @@ -0,0 +1,24 @@ +// (C) Copyright Peter Dimov 2007. +// 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_TYPEID +// TITLE: typeid unavailable +// DESCRIPTION: The compiler does not support typeid in this mode + +#include <typeinfo> + +namespace boost_no_typeid +{ + +int test() +{ + (void)typeid(int); + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_typename_with_ctor.ipp b/src/boost/libs/config/test/boost_no_typename_with_ctor.ipp new file mode 100644 index 000000000..6cf4da844 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_typename_with_ctor.ipp @@ -0,0 +1,34 @@ +// Copyright (C) 2008 N. Musatti +// 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_TYPENAME_WITH_CTOR +// TITLE: Use of typename keyword with constructors +// DESCRIPTION: If the compiler rejects the typename keyword when calling +// the constructor of a dependent type + +namespace boost_no_typename_with_ctor { + +struct A {}; + +template <typename T> +struct B { + typedef T type; +}; + +template <typename T> +typename T::type f() { + return typename T::type(); +} + +int test() { + A a = f<B<A> >(); + (void)a; + return 0; +} + +} + diff --git a/src/boost/libs/config/test/boost_no_unicode_literals.ipp b/src/boost/libs/config/test/boost_no_unicode_literals.ipp new file mode 100644 index 000000000..0faf9b7d5 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_unicode_literals.ipp @@ -0,0 +1,34 @@ +// (C) Copyright Beman Dawes 2008 + +// 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 more information. + +// MACRO: BOOST_NO_CXX11_UNICODE_LITERALS +// TITLE: C++0x unicode literals unavailable +// DESCRIPTION: The compiler does not support C++0x Unicode literals (N2442) + +namespace boost_no_cxx11_unicode_literals { + +template <class CharT> +void quiet_warning(const CharT*){} + +int test() +{ +#if defined(__cpp_char8_type) || defined(__cpp_char8_t) + // The change to char8_t in C++20 is a breaking change to the std: + const char8_t* c8 = u8""; +#else + const char* c8 = u8""; +#endif + const char16_t* c16 = u""; + const char32_t* c32 = U""; + quiet_warning(c8); + quiet_warning(c16); + quiet_warning(c32); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_unified_init.ipp b/src/boost/libs/config/test/boost_no_unified_init.ipp new file mode 100644 index 000000000..428c8f43d --- /dev/null +++ b/src/boost/libs/config/test/boost_no_unified_init.ipp @@ -0,0 +1,59 @@ +// Copyright (C) 2011 John Maddock +// 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_UNIFIED_INITIALIZATION_SYNTAX +// TITLE: C++0x unified initialization syntax unavailable +// DESCRIPTION: The compiler does not support C++0x unified initialization syntax: see http://en.wikipedia.org/wiki/C%2B%2B0x#Uniform_initialization + +#include <string> + +namespace boost_no_cxx11_unified_initialization_syntax { + +struct BasicStruct +{ + int x; + double y; +}; + +struct AltStruct +{ +public: + AltStruct(int x, double y) : x_{x}, y_{y} {} + int X() const { return x_; } + double Y() const { return y_; } +private: + int x_; + double y_; +}; + +struct IdString +{ + std::string name; + int identifier; + bool operator == (const IdString& other) + { + return identifier == other.identifier && name == other.name; + } +}; + +IdString get_string() +{ + return {"SomeName", 4}; //Note the lack of explicit type. +} + +int test() +{ + BasicStruct var1{5, 3.2}; + AltStruct var2{2, 4.3}; + (void) var1; + (void) var2; + + IdString id{"SomeName", 4}; + return id == get_string() ? 0 : 1; +} + +} diff --git a/src/boost/libs/config/test/boost_no_using_breaks_adl.ipp b/src/boost/libs/config/test/boost_no_using_breaks_adl.ipp new file mode 100644 index 000000000..e44e285d9 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_using_breaks_adl.ipp @@ -0,0 +1,73 @@ +// (C) Copyright John Maddock 2001. +// 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_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL +// TITLE: broken ADL +// DESCRIPTION: Using declarations break argument dependent lookup +// (probably Borland specific), the fix is to use +// using namespace whatever; rather than +// using whatever::symbol;. + + +namespace boost_ns +{ + template <class T> + T* get_pointer(T* p) + { return p; } + + namespace inner2 + { + template <class T> + struct X {}; + + template <class T> + T* get_pointer(X<T>) + { return 0; } + } +} + +namespace user_ns +{ + template <class T> + struct Y{}; + + template <class T> + T* get_pointer(user_ns::Y<T>) + { return 0; } + + template <class T> + int f(T x) + { + // use this as a workaround: + //using namespace boost; + // this statement breaks ADL: + using boost_ns::get_pointer; // conforming compilers require + // this one to find the auto_ptr + // and T* overloads + return get_pointer(x) == 0; + } +} + +namespace boost_function_scope_using_declaration_breaks_adl{ + +int test() +{ + int i; + typedef void* pv; + i = user_ns::f(pv()); + i = user_ns::f(boost_ns::inner2::X<int>()); + (void)i; + return 0; +} + +} + + + + + + diff --git a/src/boost/libs/config/test/boost_no_using_decl_overld.ipp b/src/boost/libs/config/test/boost_no_using_decl_overld.ipp new file mode 100644 index 000000000..c0174636e --- /dev/null +++ b/src/boost/libs/config/test/boost_no_using_decl_overld.ipp @@ -0,0 +1,33 @@ +// (C) Copyright Eric Friedman 2002. +// 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) + +// MACRO: BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE +// TITLE: using declaration function overloads from a typename base +// DESCRIPTION: The compiler will not accept a using declaration +// that brings a function from a typename used as a base class +// into a derived class if functions of the same name +// are present in the derived class. + +namespace boost_no_using_declaration_overloads_from_typename_base { + +struct base +{ + static void f() { } +}; + +template <typename T, typename Base> +struct using_overloads_from_typename_base : Base +{ + using Base::f; + static T f(const T& t) { return t; } +}; + +int test() +{ + using_overloads_from_typename_base<int,base>::f(); + return using_overloads_from_typename_base<int,base>::f(0); +} + +} diff --git a/src/boost/libs/config/test/boost_no_using_template.ipp b/src/boost/libs/config/test/boost_no_using_template.ipp new file mode 100644 index 000000000..73e8b9f30 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_using_template.ipp @@ -0,0 +1,47 @@ +// (C) Copyright John Maddock 2001. +// 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_USING_TEMPLATE +// TITLE: using template declarations +// DESCRIPTION: The compiler will not accept a using declaration +// that imports a class or function template +// into a named namespace. Probably Borland/MSVC6 specific. + +template <class T> +int global_foo(T) +{ + return 0; +} + +template <class T, class U = void> +struct op +{ + friend op<T,U> operator +(const op&, const op&) + { + return op(); + }; +}; + +namespace boost_no_using_template{ + +using ::global_foo; +using ::op; + +int test() +{ + boost_no_using_template::op<int, int> a; + boost_no_using_template::op<int, int> b; + a+b; + return boost_no_using_template::global_foo(0); +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_variadic_macros.ipp b/src/boost/libs/config/test/boost_no_variadic_macros.ipp new file mode 100644 index 000000000..50f60a72e --- /dev/null +++ b/src/boost/libs/config/test/boost_no_variadic_macros.ipp @@ -0,0 +1,64 @@ +// Copyright (C) 2010 Edward Diener +// 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_VARIADIC_MACROS +// TITLE: C++0x variadic macros unavailable +// DESCRIPTION: The compiler does not support C++0x variadic macros + +// This is a simple test + +#define TEST_VARIADIC_MACRO_SIMPLE(avalue,...) __VA_ARGS__ + +/* + + This is a more complicated test, which Steve Watanabe graciously + supplied, when I asked if it were possible to strip the parantheses + from a macro argument. I have changed the names somewhat to prevent + any common clashes with other macros in the config testing suite + by prepending to each macro name TEST_VARIADIC_MACRO_. + + You may find this test overdone and may want to remove it. + +*/ + +#define TEST_VARIADIC_MACRO_CAT(x, y) TEST_VARIADIC_MACRO_CAT_I(x, y) +#define TEST_VARIADIC_MACRO_CAT_I(x, y) x ## y + +#define TEST_VARIADIC_MACRO_APPLY(macro, args) TEST_VARIADIC_MACRO_APPLY_I(macro, args) +#define TEST_VARIADIC_MACRO_APPLY_I(macro, args) macro args + +#define TEST_VARIADIC_MACRO_STRIP_PARENS(x) TEST_VARIADIC_MACRO_EVAL((TEST_VARIADIC_MACRO_STRIP_PARENS_I x), x) +#define TEST_VARIADIC_MACRO_STRIP_PARENS_I(...) 1,1 + +#define TEST_VARIADIC_MACRO_EVAL(test, x) TEST_VARIADIC_MACRO_EVAL_I(test, x) +#define TEST_VARIADIC_MACRO_EVAL_I(test, x) TEST_VARIADIC_MACRO_MAYBE_STRIP_PARENS(TEST_VARIADIC_MACRO_TEST_ARITY test, x) + +#define TEST_VARIADIC_MACRO_TEST_ARITY(...) TEST_VARIADIC_MACRO_APPLY(TEST_VARIADIC_MACRO_TEST_ARITY_I, (__VA_ARGS__, 2, 1)) +#define TEST_VARIADIC_MACRO_TEST_ARITY_I(a,b,c,...) c + +#define TEST_VARIADIC_MACRO_MAYBE_STRIP_PARENS(cond, x) TEST_VARIADIC_MACRO_MAYBE_STRIP_PARENS_I(cond, x) +#define TEST_VARIADIC_MACRO_MAYBE_STRIP_PARENS_I(cond, x) TEST_VARIADIC_MACRO_CAT(TEST_VARIADIC_MACRO_MAYBE_STRIP_PARENS_, cond)(x) + +#define TEST_VARIADIC_MACRO_MAYBE_STRIP_PARENS_1(x) x +#define TEST_VARIADIC_MACRO_MAYBE_STRIP_PARENS_2(x) TEST_VARIADIC_MACRO_APPLY(TEST_VARIADIC_MACRO_MAYBE_STRIP_PARENS_2_I, x) +#define TEST_VARIADIC_MACRO_MAYBE_STRIP_PARENS_2_I(...) __VA_ARGS__ + +namespace boost_no_cxx11_variadic_macros { + +void quiet_warning(int){} + +template<TEST_VARIADIC_MACRO_STRIP_PARENS((typename T,int))> struct test_variadic_macro_class {}; + +int test() +{ + + int x = TEST_VARIADIC_MACRO_STRIP_PARENS(3); + quiet_warning(x); + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_variadic_templates.ipp b/src/boost/libs/config/test/boost_no_variadic_templates.ipp new file mode 100644 index 000000000..570e8f2e1 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_variadic_templates.ipp @@ -0,0 +1,21 @@ +// Copyright (C) 2007 Douglas Gregor +// 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_VARIADIC_TEMPLATES +// TITLE: C++0x variadic templates unavailable +// DESCRIPTION: The compiler does not support C++0x variadic templates + +namespace boost_no_cxx11_variadic_templates { + +template<typename... Elements> struct tuple {}; + +int test() +{ + return 0; +} + +} diff --git a/src/boost/libs/config/test/boost_no_void_returns.ipp b/src/boost/libs/config/test/boost_no_void_returns.ipp new file mode 100644 index 000000000..920c44bfa --- /dev/null +++ b/src/boost/libs/config/test/boost_no_void_returns.ipp @@ -0,0 +1,34 @@ +// (C) Copyright John Maddock 2001. +// 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_VOID_RETURNS +// TITLE: no void returns +// DESCRIPTION: The compiler does not allow a void function +// to return the result of calling another void +// function. +// +// void f() {} +// void g() { return f(); } + + +namespace boost_no_void_returns{ + +void f() {} + +void g() { return f(); } + +int test() +{ + return 0; +} + +} + + + + + diff --git a/src/boost/libs/config/test/boost_no_wchar_t.ipp b/src/boost/libs/config/test/boost_no_wchar_t.ipp new file mode 100644 index 000000000..8a9825845 --- /dev/null +++ b/src/boost/libs/config/test/boost_no_wchar_t.ipp @@ -0,0 +1,45 @@ +// (C) Copyright John Maddock 2001. +// 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_INTRINSIC_WCHAR_T +// TITLE: intrinsic wchar_t +// DESCRIPTION: The C++ implementation does not provide wchar_t, +// or it is really a synonym for another integral type. +// Use this symbol to decide whether it is appropriate +// to explicitly specialize a template on wchar_t if there +// is already a specialization for other integer types. + +#ifndef BOOST_NO_CWCHAR +#include <wchar.h> +#endif + +namespace boost_no_intrinsic_wchar_t{ + +template <class T> +struct is_int{ int i; }; + +template <> struct is_int<unsigned char>{ int i; }; +template <> struct is_int<signed char>{ int i; }; +template <> struct is_int<char>{ int i; }; +template <> struct is_int<unsigned short>{ int i; }; +template <> struct is_int<short>{ int i; }; +template <> struct is_int<unsigned int>{ int i; }; +template <> struct is_int<int>{ int i; }; +template <> struct is_int<unsigned long>{ int i; }; +template <> struct is_int<long>{ int i; }; +template <> struct is_int<wchar_t>{ int i; }; + +int test() +{ + return 0; +} + +} + + + + diff --git a/src/boost/libs/config/test/cmd_line_check.cpp b/src/boost/libs/config/test/cmd_line_check.cpp new file mode 100644 index 000000000..eb8029986 --- /dev/null +++ b/src/boost/libs/config/test/cmd_line_check.cpp @@ -0,0 +1,15 @@ +// Copyright 2014 John Maddock. +// +// Distributed under 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 + +#ifndef __clang__ +# error "This test is for Clang only" +#endif + +int main() +{ + return 0; +} diff --git a/src/boost/libs/config/test/config_build_check.cpp b/src/boost/libs/config/test/config_build_check.cpp new file mode 100644 index 000000000..480e93efb --- /dev/null +++ b/src/boost/libs/config/test/config_build_check.cpp @@ -0,0 +1,20 @@ +// Copyright John Maddock 2014. +// 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$ +// +// We include this as it contains some workarounds we may need (like a declaration for ::gets to get clang building): +#include <boost/config.hpp> + +# include "../test/boost_has_int128.ipp" +# include "../test/boost_no_constexpr.ipp" +# include "../test/boost_no_cxx11_user_lit.ipp" + +int main( int, char *[] ) +{ + return boost_has_int128::test() || boost_no_cxx11_constexpr::test() || boost_no_cxx11_user_defined_literals::test(); +} + diff --git a/src/boost/libs/config/test/config_info.cpp b/src/boost/libs/config/test/config_info.cpp new file mode 100644 index 000000000..3a0c19eea --- /dev/null +++ b/src/boost/libs/config/test/config_info.cpp @@ -0,0 +1,1350 @@ +// Boost config.hpp configuration test program file -----------------------// + +// (C) Copyright John Maddock 2001 - 2003. +// (C) Copyright Jens Maurer 2001. +// (C) Copyright Peter Dimov 2001. +// (C) Copyright Darin Adler 2001. +// (C) Copyright Beman Dawes 2002. +// 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. +// +// Revision $Id$ +// + +#include <boost/config.hpp> +#include <boost/version.hpp> +#include <iostream> +#include <iomanip> +#include <string.h> +#include <limits.h> +#include <stdlib.h> +#include <stddef.h> + +#ifdef BOOST_HAS_UNISTD_H +#include <unistd.h> +#endif + +#if defined(__MINGW32__) +# include <_mingw.h> +#endif + +static unsigned int indent = 4; +static unsigned int width = 40; + +using std::cout; +using std::istream; + +void print_macro(const char* name, const char* value) +{ + // if name == value+1 then then macro is not defined, + // in which case we don't print anything: + if(0 != strcmp(name, value+1)) + { + for(unsigned i = 0; i < indent; ++i) std::cout.put(' '); + std::cout << std::setw(width); + cout.setf(istream::left, istream::adjustfield); + std::cout << name; + if(value[1]) + { + // macro has a value: + std::cout << value << "\n"; + } + else + { + // macro is defined but has no value: + std::cout << " [no value]\n"; + } + } +} + +#define PRINT_MACRO(X) print_macro(#X, BOOST_STRINGIZE(=X)) + +template <class T> +void print_expression(const char* expression, T val) +{ + for(unsigned i = 0; i < indent; ++i) std::cout.put(' '); + std::cout << std::setw(width); + std::cout.setf(istream::left, istream::adjustfield); + std::cout << expression << "=" << val << std::endl; +} + +#define PRINT_EXPRESSION(E) print_expression(#E, E); + +template <class T> +void print_byte_order(const char* what, T /* t */ ) +{ + T val = 0; + unsigned i; + for(i = 1; i < sizeof(T); ++i) + { + val |= (CHAR_BIT * static_cast<T>(i)) << (CHAR_BIT * static_cast<T>(i)); + } + const char* p = reinterpret_cast<const char*>(&val); + + for(i = 0; i < indent; ++i) std::cout.put(' '); + std::cout << std::setw(width); + std::cout.setf(istream::left, istream::adjustfield); + std::cout << what << "="; + for(i = 0; i < sizeof(T); ++i) + { + std::cout << (int)p[i] << " "; + } + std::cout << std::endl; +} + +#define PRINT_ORDER(T) print_byte_order(BOOST_STRINGIZE(byte order for type T), T()) + +template <class T> +void print_sign(const char* what, T t) +{ + t = static_cast<T>(-1); // cast suppresses warnings + for(unsigned i = 0; i < indent; ++i) std::cout.put(' '); + std::cout << "Type " << what << " is " << ((t > 0) ? "unsigned" : "signed") << std::endl; +} + +#define PRINT_SIGN(T) print_sign(#T, T()) + + +void print_compiler_macros() +{ + std::cout << BOOST_COMPILER << "\n"; + // Borland options: + PRINT_MACRO(__BORLANDC__); + PRINT_MACRO(__CDECL__); + PRINT_MACRO(_CHAR_UNSIGNED); + PRINT_MACRO(__CODEGUARD__); + PRINT_MACRO(__CONSOLE__); + PRINT_MACRO(_CPPUNWIND); + PRINT_MACRO(__cplusplus); + PRINT_MACRO(__FLAT__); + PRINT_MACRO(__FUNC__); + PRINT_MACRO(_M_IX86); + PRINT_MACRO(__MSDOS__); + PRINT_MACRO(__MT__ ); + PRINT_MACRO(__PASCAL__); + PRINT_MACRO(__STDC__); + PRINT_MACRO(__TLS__); + PRINT_MACRO(_WCHAR_T); + PRINT_MACRO(_Windows); + PRINT_MACRO(__WIN32__); + PRINT_MACRO(_WIN32); + PRINT_MACRO(_WIN64); + PRINT_MACRO(_WIN32_WCE); + PRINT_MACRO(WIN32); + PRINT_MACRO(_RTLDLL); + PRINT_MACRO(__DEBUG); + +// Internal MSVC 7 error workaround (Peter Dimov) + +#ifndef _NATIVE_WCHAR_T_DEFINED + PRINT_MACRO(_WCHAR_T_DEFINED); +#endif + // MSVC macros: + PRINT_MACRO(_ALIGNED_NEW_SUPPORTED); + PRINT_MACRO(__ATOM__); + PRINT_MACRO(__AVX__); + PRINT_MACRO(__AVX2__); + PRINT_MACRO(_CHAR_UNSIGNED); + PRINT_MACRO(_CLR_VER); + PRINT_MACRO(_CONTROL_FLOW_GUARD); + PRINT_MACRO(__cplusplus_cli); + PRINT_MACRO(__cplusplus_winrt); + PRINT_MACRO(_CPPRTTI); + PRINT_MACRO(_CPPUNWIND); + PRINT_MACRO(_DLL); + PRINT_MACRO(_INLINE_VARIABLES_SUPPORTED); + PRINT_MACRO(_ISO_VOLATILE); + PRINT_MACRO(_M_AMD64); + PRINT_MACRO(_M_ARM); + PRINT_MACRO(_M_ARM_ARMV7VE); + PRINT_MACRO(_M_ARM_FP); + PRINT_MACRO(_M_ARM64); + PRINT_MACRO(_M_CEE); + PRINT_MACRO(_M_CEE_PURE); + PRINT_MACRO(_M_CEE_SAFE); + PRINT_MACRO(_M_FP_EXCEPT); + PRINT_MACRO(_M_FP_FAST); + PRINT_MACRO(_M_FP_PRECISE); + PRINT_MACRO(_M_FP_STRICT); + PRINT_MACRO(_M_IX86); + PRINT_MACRO(_M_IX86_FP); + PRINT_MACRO(_M_X64); + PRINT_MACRO(_M_ALPHA); + PRINT_MACRO(_M_MPPC); + PRINT_MACRO(_M_MRX000); + PRINT_MACRO(_M_PPC); + PRINT_MACRO(_MANAGED); + PRINT_MACRO(_MSC_BUILD); + PRINT_MACRO(_MFC_VER); + PRINT_MACRO(_MSC_EXTENSIONS); + PRINT_MACRO(_MSC_VER); + PRINT_MACRO(_MSC_FULL_VER); + PRINT_MACRO(_MSVC_LANG); + PRINT_MACRO(_MSVC_WARNING_LEVEL); + PRINT_MACRO(__MSVC_RUNTIME_CHECKS); + PRINT_MACRO(_MT); + PRINT_MACRO(_NATIVE_WCHAR_T_DEFINED); + PRINT_MACRO(_NOEXCEPT_TYPES_SUPPORTED); + PRINT_MACRO(_OPENMP); + PRINT_MACRO(_PREFAST_); + // GNUC options: + PRINT_MACRO(__GNUC__); + PRINT_MACRO(__GNUC_MINOR__); + PRINT_MACRO(__GNUC_PATCHLEVEL__); + PRINT_MACRO(__STDC_VERSION__); + PRINT_MACRO(__GNUG__); + PRINT_MACRO(__STRICT_ANSI__); + PRINT_MACRO(__GXX_EXPERIMENTAL_CXX0X__); + PRINT_MACRO(__VERSION__); + PRINT_MACRO(__OPTIMIZE__); + PRINT_MACRO(__CHAR_UNSIGNED__); + PRINT_MACRO(__REGISTER_PREFIX__); + PRINT_MACRO(__USER_LABEL_PREFIX__); + PRINT_MACRO(__GNUPRO__); + PRINT_MACRO(__EXCEPTIONS); + PRINT_MACRO(__FreeBSD__); + PRINT_MACRO(__FreeBSD_cc_version); + PRINT_MACRO(__ELF__); + PRINT_MACRO(__GNUPRO__); + PRINT_MACRO(unix); + PRINT_MACRO(bsd); + PRINT_MACRO(vax); + PRINT_MACRO(mc68000); + PRINT_MACRO(m68k); + PRINT_MACRO(M68020); + PRINT_MACRO(_AM29K); + PRINT_MACRO(ns32000); + PRINT_MACRO(sun); + PRINT_MACRO(pyr); + PRINT_MACRO(sequent); + PRINT_MACRO(__i386__); + PRINT_MACRO(__sparc); + PRINT_MACRO(__sparc__); + PRINT_MACRO(__powerpc__); + PRINT_MACRO(__hppa); + PRINT_MACRO(__CYGWIN__); + PRINT_MACRO(__MINGW32__); + PRINT_MACRO(__GXX_RTTI); + PRINT_MACRO(__alpha__); + PRINT_MACRO(__amd64__); + PRINT_MACRO(__arm__); + PRINT_MACRO(__aarch64__); + PRINT_MACRO(__bfin); + PRINT_MACRO(__convex__); + PRINT_MACRO(__epiphany__); + PRINT_MACRO(__hppa__); + PRINT_MACRO(__ia64__); + PRINT_MACRO(__IA64); + PRINT_MACRO(__IA64__); + PRINT_MACRO(__m68k__); + PRINT_MACRO(__mips__); + PRINT_MACRO(__powerpc); + PRINT_MACRO(__powerpc__); + PRINT_MACRO(__powerpc64__); + PRINT_MACRO(__POWERPC__); + PRINT_MACRO(__ppc__); + PRINT_MACRO(__ppc64__); + PRINT_MACRO(__PPC__); + PRINT_MACRO(__PPC64__); + PRINT_MACRO(_ARCH_PPC); + PRINT_MACRO(_ARCH_PPC64); + PRINT_MACRO(__sh__); + PRINT_MACRO(__370__); + PRINT_MACRO(__THW_370__); + // HP aCC: + PRINT_MACRO(__HP_aCC); + PRINT_MACRO(_HPACC_); + PRINT_MACRO(__LP64__); + PRINT_MACRO(__RISC2_0__); + PRINT_MACRO(__STDCPP__); + PRINT_MACRO(__hppa); + PRINT_MACRO(__hpux); + PRINT_MACRO(__hp9000s800); + PRINT_MACRO(__hp9000s700); + PRINT_MACRO(_PA_RISC1_1); + PRINT_MACRO(__HPUX_SOURCE); + PRINT_MACRO(_INCLUDE__STDC_A1_SOURCE); + // SGI IRIX: + PRINT_MACRO(__sgi); + PRINT_MACRO(_COMPILER_VERSION); + // Sunpro: + PRINT_MACRO(__SUNPRO_CC); + PRINT_MACRO(__SUNPRO_CC_COMPAT); + PRINT_MACRO(__BUILTIN_VA_ARG_INCR); + PRINT_MACRO(__sun); + PRINT_MACRO(__SVR4); + PRINT_MACRO(__unix); + PRINT_MACRO(__sparcv9); + PRINT_MACRO(__i386); + PRINT_MACRO(i386); + // Metrowerks + PRINT_MACRO(__MWERKS__); + PRINT_MACRO(__MSL__); + PRINT_MACRO(__MSL_CPP__); + PRINT_MACRO(__A5__); + PRINT_MACRO(__embedded_cplusplus); + PRINT_MACRO(__fourbyteints__); + PRINT_MACRO(__IEEEdoubles__); + PRINT_MACRO(__MC68K__); + PRINT_MACRO(__MC68020__); + PRINT_MACRO(__MC68881__); + PRINT_MACRO(__MIPS__); + PRINT_MACRO(__MIPS_ISA2__); + PRINT_MACRO(__MIPS_ISA3__); + PRINT_MACRO(__MIPS_ISA4__); + PRINT_MACRO(__MWBROWSER__); + PRINT_MACRO(__profile__); + PRINT_MACRO(__powerc); + PRINT_MACRO(_powerc); + PRINT_MACRO(__POWERPC__); + PRINT_MACRO(macintosh); + PRINT_MACRO(__MACH__); + PRINT_MACRO(__APPLE__); + PRINT_MACRO(__APPLE_CC__); + // MPW (MrCpp and SCpp) + PRINT_MACRO(__MRC__); + PRINT_MACRO(__SC__); + PRINT_MACRO(__FPCE__); + PRINT_MACRO(__FPCE_IEEE__); + PRINT_MACRO(MPW_CPLUS); + PRINT_MACRO(MPW_C); + PRINT_MACRO(__MC601); + PRINT_MACRO(__POWERPC); + PRINT_MACRO(__useAppleExts__); + PRINT_MACRO(powerc); + PRINT_MACRO(MC68000); + PRINT_MACRO(THINK_PLUS); + PRINT_MACRO(mc68881); + PRINT_MACRO(__FAR_CODE__); + PRINT_MACRO(__FAR_DATA__); + PRINT_MACRO(__CFM68K__); + // EDG + PRINT_MACRO(__EDG__); + PRINT_MACRO(__EDG_VERSION__); + PRINT_MACRO(c_plusplus); // indication for strict mode + PRINT_MACRO(_BOOL); + PRINT_MACRO(_EXPLICIT); + PRINT_MACRO(__SIGNED_CHARS__); + PRINT_MACRO(_TYPENAME); + PRINT_MACRO(_WCHAR_T); + PRINT_MACRO(__ARRAY_OPERATORS); + PRINT_MACRO(__EDG_ABI_COMPATIBILITY_VERSION); + PRINT_MACRO(__EDG_IMPLICIT_USING_STD); + PRINT_MACRO(__EDG_RUNTIME_USES_NAMESPACES); + PRINT_MACRO(__BOOL_DEFINED); + PRINT_MACRO(__RTTI); + PRINT_MACRO(__PLACEMENT_DELETE); + PRINT_MACRO(__NO_LONG_LONG); + + // Intel options: + PRINT_MACRO(__INTEL__); + PRINT_MACRO(__ICC); + PRINT_MACRO(__ICL); + PRINT_MACRO(__ECC); + PRINT_MACRO(__INTEL_COMPILER); + PRINT_MACRO(__INITIAL_POINTER_SIZE); + PRINT_MACRO(_INTEGRAL_MAX_BITS); + PRINT_MACRO(__INTEL_COMPILER_BUILD_DATE); + PRINT_MACRO(__INTEL_MS_COMPAT_LEVEL); + PRINT_MACRO(__LONG_DOUBLE_SIZE__); + PRINT_MACRO(_M_X64); + PRINT_MACRO(_OPENMP); + PRINT_MACRO(_OPENMPT); + PRINT_MACRO(_PGO_INSTRUMENT); + PRINT_MACRO(__QMSPP_); + PRINT_MACRO(__INTEL_RTTI__); + PRINT_MACRO(__INTEL_CXX11_MODE__); + + // Cray options: + PRINT_MACRO(_CRAYC); + PRINT_MACRO(_RELEASE); + PRINT_MACRO(cray); + PRINT_MACRO(CRAY); + PRINT_MACRO(CRAY1); + PRINT_MACRO(_CRAY1); + PRINT_MACRO(_CRAYMPP); + PRINT_MACRO(_CRAYT3E); + PRINT_MACRO(_CRAYIEEE); + PRINT_MACRO(_ADDR32); + PRINT_MACRO(_ADDR64); + PRINT_MACRO(_LD64); + PRINT_MACRO(_FASTMD); + PRINT_MACRO(_MAXVL); + + // clang options: + PRINT_MACRO(__clang__); + PRINT_MACRO(__clang_major__); + PRINT_MACRO(__clang_minor__); + PRINT_MACRO(__clang_version__); + PRINT_MACRO(__clang_patchlevel__); + + // misc compilers not covered so far: + PRINT_MACRO(__USLC__); + PRINT_MACRO(__DECCXX); + PRINT_MACRO(__IBMCPP__); + PRINT_MACRO(_REENTRANT); + PRINT_MACRO(_PTHREADS); + PRINT_MACRO(__STDC_HOSTED__); + PRINT_MACRO(__COMO__); + PRINT_MACRO(__COMO_VERSION__); + PRINT_MACRO(__DM__); + PRINT_MACRO(__osf__); + PRINT_MACRO(__OSF__); + PRINT_MACRO(__QNXNTO__); + PRINT_MACRO(__QNX__); + PRINT_MACRO(_NTO_VERSION); + PRINT_MACRO(__OPEN64__); + PRINT_MACRO(__open64); + PRINT_MACRO(__NVCC__); + PRINT_MACRO(__CUDACC__); + PRINT_MACRO(__CUDACC_RDC__); + PRINT_MACRO(__CUDACC_VER_MAJOR__); + PRINT_MACRO(__CUDACC_VER_MINOR__); + PRINT_MACRO(__CUDACC_VER_BUILD__); + PRINT_MACRO(__CUDACC_VER__); + + // Android: + PRINT_MACRO(ANDROID); + PRINT_MACRO(__ANDROID__); +} + +void print_stdlib_macros() +{ + std::cout << BOOST_STDLIB << std::endl; + #ifdef _RWSTD_VER + // Rogue Wave 2.x config options: + PRINT_MACRO(__NO_EDG_EXCEPTION_CLASSES); + PRINT_MACRO(_RWSTD_ALLOCATOR); + PRINT_MACRO(_RWSTD_BAD_ALLOC_DEFINED); + PRINT_MACRO(_RWSTD_BAD_EXCEPTION_DEFINED); + PRINT_MACRO(_RWSTD_BOUNDS_CHECKING); + PRINT_MACRO(_RWSTD_COMPILE_INSTANTIATE); + PRINT_MACRO(_RWSTD_DEFAULT_PRECISION); + PRINT_MACRO(_RWSTD_EXCEPTION_DEFINED); + PRINT_MACRO(_RWSTD_EXCEPTION_HANDLER_IN_STD); + PRINT_MACRO(_RWSTD_EXCEPTION_PREDEFINED); + PRINT_MACRO(_RWSTD_FLT_ROUNDS_IS_CONSTANT); + PRINT_MACRO(_RWSTD_LOCALIZED_ERRORS); + PRINT_MACRO(_RWSTD_MESSAGE); + PRINT_MACRO(_RWSTD_MUTEXATTR_DEFAULT); + PRINT_MACRO(_RWSTD_NO_ANSI_SPRINTF); + PRINT_MACRO(_RWSTD_NO_ARG_MATCH); + PRINT_MACRO(_RWSTD_NO_BAD_CAST); + PRINT_MACRO(_RWSTD_NO_BASE_CLASS_MATCH); + PRINT_MACRO(_RWSTD_NO_BOOL); + PRINT_MACRO(_RWSTD_NO_BUILTIN_CTOR); + PRINT_MACRO(_RWSTD_NO_CATOPEN_CATGETS); + PRINT_MACRO(_RWSTD_NO_CLASS_PARTIAL_SPEC); + PRINT_MACRO(_RWSTD_NO_COMPLEX_DEFAULT_TEMPLATES); + PRINT_MACRO(_RWSTD_NO_COMPLICATED_EXCEPTIONS); + PRINT_MACRO(_RWSTD_NO_COMPLICATED_TYPEDEF); + PRINT_MACRO(_RWSTD_NO_CONST_INST); + PRINT_MACRO(_RWSTD_NO_CTOR_RETURN); + PRINT_MACRO(_RWSTD_NO_DEFAULT_FOR_TPARAM); + PRINT_MACRO(_RWSTD_NO_DEFAULT_TEMPLATE_ARGS); + PRINT_MACRO(_RWSTD_NO_DESTROY_BUILTIN); + PRINT_MACRO(_RWSTD_NO_DESTROY_NONBUILTIN); + PRINT_MACRO(_RWSTD_NO_EMBEDDED_TYPEDEF); + PRINT_MACRO(_RWSTD_NO_EX_SPEC); + PRINT_MACRO(_RWSTD_NO_EXCEPTIONS); + PRINT_MACRO(_RWSTD_NO_EXPLICIT); + PRINT_MACRO(_RWSTD_NO_EXPLICIT_ARG); + PRINT_MACRO(_RWSTD_NO_EXPLICIT_FUNC_INSTANTIATION); + PRINT_MACRO(_RWSTD_NO_EXPLICIT_INSTANTIATION); + PRINT_MACRO(_RWSTD_NO_EXTENSION); + PRINT_MACRO(_RWSTD_NO_FORWARD_SPECIALIZATIONS); + PRINT_MACRO(_RWSTD_NO_FPOS_T); + PRINT_MACRO(_RWSTD_NO_FRIEND_TEMPLATES); + PRINT_MACRO(_RWSTD_NO_FUNC_PARTIAL_SPEC); + PRINT_MACRO(_RWSTD_NO_GETTIMEOFDAY); + PRINT_MACRO(_RWSTD_NO_GLOBAL_TZ); + PRINT_MACRO(_RWSTD_NO_INHERITED_TYPEDEFS); + PRINT_MACRO(_RWSTD_NO_INIT_CONST_TEMPLATE_REF_ARG); + PRINT_MACRO(_RWSTD_NO_INT_TYPEDEF); + PRINT_MACRO(_RWSTD_NO_LDIV); + PRINT_MACRO(_RWSTD_NO_LEADING_UNDERSCORE); + PRINT_MACRO(_RWSTD_NO_LOCALE); + PRINT_MACRO(_RWSTD_NO_LONG_NAME); + PRINT_MACRO(_RWSTD_NO_LONGDOUBLE); + PRINT_MACRO(_RWSTD_NO_MBSTATE_T); + PRINT_MACRO(_RWSTD_NO_MEM_CLASS_TEMPLATES); + PRINT_MACRO(_RWSTD_NO_MEMBER_TEMPLATES); + PRINT_MACRO(_RWSTD_NO_MEMBER_TYPE_TPARAM); + PRINT_MACRO(_RWSTD_NO_MEMBER_WO_DEF_CTOR); + PRINT_MACRO(_RWSTD_NO_MEMMOVE); + PRINT_MACRO(_RWSTD_NO_MULTI_DIM_ARRAY); + PRINT_MACRO(_RWSTD_NO_MUTABLE); + PRINT_MACRO(_RWSTD_NO_NAME_INJECTION); + PRINT_MACRO(_RWSTD_NO_NAMESPACE); + PRINT_MACRO(_RWSTD_NO_NESTING_TEMPLATES); + PRINT_MACRO(_RWSTD_NO_NEW_BRACKETS); + PRINT_MACRO(_RWSTD_NO_NEW_DECL); + PRINT_MACRO(_RWSTD_NO_NEW_HEADER); + PRINT_MACRO(_RWSTD_NO_NEW_TEMPLATE_SYNTAX); + PRINT_MACRO(_RWSTD_NO_NONCLASS_ARROW_RETURN); + PRINT_MACRO(_RWSTD_NO_NONTYPE_ARGS); + PRINT_MACRO(_RWSTD_NO_ONLY_NEEDED_INSTANTIATION); + PRINT_MACRO(_RWSTD_NO_OVERLOAD_C_POW); + PRINT_MACRO(_RWSTD_NO_OVERLOAD_OF_TEMPLATE_FUNCTION); + PRINT_MACRO(_RWSTD_NO_OVERLOAD_WCHAR); + PRINT_MACRO(_RWSTD_NO_PART_SPEC_OVERLOAD); + PRINT_MACRO(_RWSTD_NO_RET_TEMPLATE); + PRINT_MACRO(_RWSTD_NO_SIMPLE_DEFAULT_TEMPLATES); + PRINT_MACRO(_RWSTD_NO_STATIC_CAST); + PRINT_MACRO(_RWSTD_NO_STATIC_DEF); + PRINT_MACRO(_RWSTD_NO_STATIC_DEF2); + PRINT_MACRO(_RWSTD_NO_STATIC_DEF3); + PRINT_MACRO(_RWSTD_NO_STATIC_MEM_DEF); + PRINT_MACRO(_RWSTD_NO_STI_SIMPLE); + PRINT_MACRO(_RWSTD_NO_STI_TEMPLATE); + PRINT_MACRO(_RWSTD_NO_STREAM_LONG_DOUBLE); + PRINT_MACRO(_RWSTD_NO_STRFTIME_CAPC); + PRINT_MACRO(_RWSTD_NO_STRICT_TEMPLATE_INSTANTIATE); + PRINT_MACRO(_RWSTD_NO_SWPRINTF); + PRINT_MACRO(_RWSTD_NO_TEMPLATE_ON_RETURN_TYPE); + PRINT_MACRO(_RWSTD_NO_TEMPLATE_TEMPLATE); + PRINT_MACRO(_RWSTD_NO_THREADS); + PRINT_MACRO(_RWSTD_NO_THROW_SPEC_ON_NEW); + PRINT_MACRO(_RWSTD_NO_THROW_WITH_SHARED); + PRINT_MACRO(_RWSTD_NO_TYPEDEF_INST); + PRINT_MACRO(_RWSTD_NO_TYPEDEF_OVERLOAD); + PRINT_MACRO(_RWSTD_NO_TYPENAME); + PRINT_MACRO(_RWSTD_NO_UNDEFINED_FRIEND); + PRINT_MACRO(_RWSTD_NO_UNINITIALIZED_STATIC_DEF); + PRINT_MACRO(_RWSTD_NO_WCHAR_H); + PRINT_MACRO(_RWSTD_NO_WCTYPE_H); + PRINT_MACRO(_RWSTD_NO_WIDE_CHAR); + PRINT_MACRO(_RWSTD_NO_WINT_TYPE); + PRINT_MACRO(_RWSTD_NO_WSTR); + PRINT_MACRO(_RWSTD_NOT_ALL_WSTR_CFUNCTIONS); + PRINT_MACRO(_RWSTD_POSIX_D10_THREADS); + PRINT_MACRO(_RWSTD_POSIX_THREADS); + PRINT_MACRO(_RWSTD_REQUIRES_IEEEFP); + PRINT_MACRO(_RWSTD_SOLARIS_THREADS); + PRINT_MACRO(_RWSTD_STRUCT_TM_TZ); + PRINT_MACRO(_RWSTD_WIDE_STRING_NULL_PROBLEM); + #elif defined(__STD_RWCOMPILER_H__) + // Rogue Wave 1.x std lib: + PRINT_MACRO(__NO_EDG_EXCEPTION_CLASSES); + PRINT_MACRO(RWSTD_ALLOCATOR); + PRINT_MACRO(RWSTD_BAD_ALLOC_DEFINED); + PRINT_MACRO(RWSTD_BAD_EXCEPTION_DEFINED); + PRINT_MACRO(RWSTD_BOUNDS_CHECKING); + PRINT_MACRO(RWSTD_COMPILE_INSTANTIATE); + PRINT_MACRO(RWSTD_DEFAULT_PRECISION); + PRINT_MACRO(RWSTD_EXCEPTION_DEFINED); + PRINT_MACRO(RWSTD_EXCEPTION_HANDLER_IN_STD); + PRINT_MACRO(RWSTD_EXCEPTION_PREDEFINED); + PRINT_MACRO(RWSTD_FLT_ROUNDS_IS_CONSTANT); + PRINT_MACRO(RWSTD_LOCALIZED_ERRORS); + PRINT_MACRO(RWSTD_MESSAGE); + PRINT_MACRO(RWSTD_MUTEXATTR_DEFAULT); + PRINT_MACRO(RWSTD_NO_ANSI_SPRINTF); + PRINT_MACRO(RWSTD_NO_ARG_MATCH); + PRINT_MACRO(RWSTD_NO_BAD_CAST); + PRINT_MACRO(RWSTD_NO_BASE_CLASS_MATCH); + PRINT_MACRO(RWSTD_NO_BOOL); + PRINT_MACRO(RWSTD_NO_BUILTIN_CTOR); + PRINT_MACRO(RWSTD_NO_CATOPEN_CATGETS); + PRINT_MACRO(RWSTD_NO_CLASS_PARTIAL_SPEC); + PRINT_MACRO(RWSTD_NO_COMPLEX_DEFAULT_TEMPLATES); + PRINT_MACRO(RWSTD_NO_COMPLICATED_EXCEPTIONS); + PRINT_MACRO(RWSTD_NO_COMPLICATED_TYPEDEF); + PRINT_MACRO(RWSTD_NO_CONST_INST); + PRINT_MACRO(RWSTD_NO_CTOR_RETURN); + PRINT_MACRO(RWSTD_NO_DEFAULT_FOR_TPARAM); + PRINT_MACRO(RWSTD_NO_DEFAULT_TEMPLATE_ARGS); + PRINT_MACRO(RWSTD_NO_DESTROY_BUILTIN); + PRINT_MACRO(RWSTD_NO_DESTROY_NONBUILTIN); + PRINT_MACRO(RWSTD_NO_EMBEDDED_TYPEDEF); + PRINT_MACRO(RWSTD_NO_EX_SPEC); + PRINT_MACRO(RWSTD_NO_EXCEPTIONS); + PRINT_MACRO(RWSTD_NO_EXPLICIT); + PRINT_MACRO(RWSTD_NO_EXPLICIT_ARG); + PRINT_MACRO(RWSTD_NO_EXPLICIT_FUNC_INSTANTIATION); + PRINT_MACRO(RWSTD_NO_EXPLICIT_INSTANTIATION); + PRINT_MACRO(RWSTD_NO_EXTENSION); + PRINT_MACRO(RWSTD_NO_FORWARD_SPECIALIZATIONS); + PRINT_MACRO(RWSTD_NO_FPOS_T); + PRINT_MACRO(RWSTD_NO_FRIEND_TEMPLATES); + PRINT_MACRO(RWSTD_NO_FUNC_PARTIAL_SPEC); + PRINT_MACRO(RWSTD_NO_GETTIMEOFDAY); + PRINT_MACRO(RWSTD_NO_GLOBAL_TZ); + PRINT_MACRO(RWSTD_NO_INHERITED_TYPEDEFS); + PRINT_MACRO(RWSTD_NO_INIT_CONST_TEMPLATE_REF_ARG); + PRINT_MACRO(RWSTD_NO_INT_TYPEDEF); + PRINT_MACRO(RWSTD_NO_LDIV); + PRINT_MACRO(RWSTD_NO_LEADING_UNDERSCORE); + PRINT_MACRO(RWSTD_NO_LOCALE); + PRINT_MACRO(RWSTD_NO_LONG_NAME); + PRINT_MACRO(RWSTD_NO_LONGDOUBLE); + PRINT_MACRO(RWSTD_NO_MBSTATE_T); + PRINT_MACRO(RWSTD_NO_MEM_CLASS_TEMPLATES); + PRINT_MACRO(RWSTD_NO_MEMBER_TEMPLATES); + PRINT_MACRO(RWSTD_NO_MEMBER_TYPE_TPARAM); + PRINT_MACRO(RWSTD_NO_MEMBER_WO_DEF_CTOR); + PRINT_MACRO(RWSTD_NO_MEMMOVE); + PRINT_MACRO(RWSTD_NO_MULTI_DIM_ARRAY); + PRINT_MACRO(RWSTD_NO_MUTABLE); + PRINT_MACRO(RWSTD_NO_NAME_INJECTION); + PRINT_MACRO(RWSTD_NO_NAMESPACE); + PRINT_MACRO(RWSTD_NO_NESTING_TEMPLATES); + PRINT_MACRO(RWSTD_NO_NEW_BRACKETS); + PRINT_MACRO(RWSTD_NO_NEW_DECL); + PRINT_MACRO(RWSTD_NO_NEW_HEADER); + PRINT_MACRO(RWSTD_NO_NEW_TEMPLATE_SYNTAX); + PRINT_MACRO(RWSTD_NO_NONCLASS_ARROW_RETURN); + PRINT_MACRO(RWSTD_NO_NONTYPE_ARGS); + PRINT_MACRO(RWSTD_NO_ONLY_NEEDED_INSTANTIATION); + PRINT_MACRO(RWSTD_NO_OVERLOAD_C_POW); + PRINT_MACRO(RWSTD_NO_OVERLOAD_OF_TEMPLATE_FUNCTION); + PRINT_MACRO(RWSTD_NO_OVERLOAD_WCHAR); + PRINT_MACRO(RWSTD_NO_PART_SPEC_OVERLOAD); + PRINT_MACRO(RWSTD_NO_RET_TEMPLATE); + PRINT_MACRO(RWSTD_NO_SIMPLE_DEFAULT_TEMPLATES); + PRINT_MACRO(RWSTD_NO_STATIC_CAST); + PRINT_MACRO(RWSTD_NO_STATIC_DEF); + PRINT_MACRO(RWSTD_NO_STATIC_DEF2); + PRINT_MACRO(RWSTD_NO_STATIC_DEF3); + PRINT_MACRO(RWSTD_NO_STATIC_MEM_DEF); + PRINT_MACRO(RWSTD_NO_STI_SIMPLE); + PRINT_MACRO(RWSTD_NO_STI_TEMPLATE); + PRINT_MACRO(RWSTD_NO_STREAM_LONG_DOUBLE); + PRINT_MACRO(RWSTD_NO_STRFTIME_CAPC); + PRINT_MACRO(RWSTD_NO_STRICT_TEMPLATE_INSTANTIATE); + PRINT_MACRO(RWSTD_NO_SWPRINTF); + PRINT_MACRO(RWSTD_NO_TEMPLATE_ON_RETURN_TYPE); + PRINT_MACRO(RWSTD_NO_TEMPLATE_TEMPLATE); + PRINT_MACRO(RWSTD_NO_THREADS); + PRINT_MACRO(RWSTD_NO_THROW_SPEC_ON_NEW); + PRINT_MACRO(RWSTD_NO_THROW_WITH_SHARED); + PRINT_MACRO(RWSTD_NO_TYPEDEF_INST); + PRINT_MACRO(RWSTD_NO_TYPEDEF_OVERLOAD); + PRINT_MACRO(RWSTD_NO_TYPENAME); + PRINT_MACRO(RWSTD_NO_UNDEFINED_FRIEND); + PRINT_MACRO(RWSTD_NO_UNINITIALIZED_STATIC_DEF); + PRINT_MACRO(RWSTD_NO_WCHAR_H); + PRINT_MACRO(RWSTD_NO_WCTYPE_H); + PRINT_MACRO(RWSTD_NO_WIDE_CHAR); + PRINT_MACRO(RWSTD_NO_WINT_TYPE); + PRINT_MACRO(RWSTD_NO_WSTR); + PRINT_MACRO(RWSTD_NOT_ALL_WSTR_CFUNCTIONS); + PRINT_MACRO(RWSTD_POSIX_D10_THREADS); + PRINT_MACRO(RWSTD_POSIX_THREADS); + PRINT_MACRO(RWSTD_REQUIRES_IEEEFP); + PRINT_MACRO(RWSTD_SOLARIS_THREADS); + PRINT_MACRO(RWSTD_STRUCT_TM_TZ); + PRINT_MACRO(RWSTD_WIDE_STRING_NULL_PROBLEM); + #endif + // Dinkumware options: + PRINT_MACRO(_CPPLIB_VER); + PRINT_MACRO(_MSVC_STL_VERSION); // VS2017 15.5+ + PRINT_MACRO(_MSVC_STL_UPDATE); // VS2017 15.5+ + PRINT_MACRO(_GLOBAL_USING); + PRINT_MACRO(_HAS_EXCEPTIONS); + PRINT_MACRO(_HAS_MEMBER_TEMPLATES_REBIND); + PRINT_MACRO(_HAS_TEMPLATE_PARTIAL_ORDERING); + // https://blogs.msdn.microsoft.com/vcblog/2016/08/12/stl-fixes-in-vs-2015-update-3/ + PRINT_MACRO(_HAS_CXX17); + PRINT_MACRO(_HAS_AUTO_PTR_ETC); + PRINT_MACRO(_HAS_OLD_IOSTREAMS_MEMBERS); + PRINT_MACRO(_HAS_FUNCTION_ASSIGN); + PRINT_MACRO(_HAS_TR1_NAMESPACE); + PRINT_MACRO(_HAS_IDENTITY_STRUCT); + // VS2017 15.5+ + PRINT_MACRO(_HAS_STATIC_RTTI); + PRINT_MACRO(_HAS_UNEXPECTED); + PRINT_MACRO(_HAS_STD_BYTE); + PRINT_MACRO(_HAS_FUNCTION_ALLOCATOR_SUPPORT); + PRINT_MACRO(_HAS_TR2_SYS_NAMESPACE); + PRINT_MACRO(_ENFORCE_MATCHING_ALLOCATORS); + PRINT_MACRO(_HAS_HAS_UNIQUE_OBJECT_REPRESENTATIONS); + PRINT_MACRO(_HAS_INLINE_VARIABLES); + PRINT_MACRO(_HAS_ALIGNED_NEW); + PRINT_MACRO(_HAS_NOEXCEPT_FUNCTION_TYPES); + PRINT_MACRO(_ITERATOR_DEBUG_LEVEL); + PRINT_MACRO(_HAS_ITERATOR_DEBUGGING); + PRINT_MACRO(_ITERATOR_DEBUG_ARRAY_OVERLOADS); + // Libc++: + PRINT_MACRO(_LIBCPP_VERSION); + // STLPort and generic SGI STL options: + PRINT_MACRO(__SGI_STL_NO_ARROW_OPERATOR); + PRINT_MACRO(__SGI_STL_OWN_IOSTREAMS); + PRINT_MACRO(__SGI_STL_PORT); + PRINT_MACRO(__STL_AUTOMATIC_TYPE_TRAITS); + PRINT_MACRO(__STL_BASE_MATCH_BUG); + PRINT_MACRO(__STL_BASE_TYPEDEF_BUG); + PRINT_MACRO(__STL_BASE_TYPEDEF_OUTSIDE_BUG); + PRINT_MACRO(__STL_BROKEN_USING_DIRECTIVE); + PRINT_MACRO(__STL_CONST_CONSTRUCTOR_BUG); + PRINT_MACRO(__STL_DEBUG); + PRINT_MACRO(__STL_DEBUG_ALLOC); + PRINT_MACRO(__STL_DEFAULT_CONSTRUCTOR_BUG); + PRINT_MACRO(__STL_DEFAULT_TYPE_PARAM); + PRINT_MACRO(__STL_DONT_REDEFINE_STD); + PRINT_MACRO(__STL_DONT_USE_BOOL_TYPEDEF); + PRINT_MACRO(__STL_HAS_NO_EXCEPTIONS); + PRINT_MACRO(__STL_HAS_NO_NAMESPACES); + PRINT_MACRO(__STL_HAS_NO_NEW_C_HEADERS); + PRINT_MACRO(__STL_HAS_NO_NEW_IOSTREAMS); + PRINT_MACRO(__STL_IMPORT_VENDOR_CSTD); + PRINT_MACRO(__STL_LIMITED_DEFAULT_TEMPLATES); + PRINT_MACRO(__STL_LINK_TIME_INSTANTIATION); + PRINT_MACRO(__STL_LONG_LONG); + PRINT_MACRO(__STL_LOOP_INLINE_PROBLEMS); + PRINT_MACRO(__STL_MEMBER_POINTER_PARAM_BUG); + PRINT_MACRO(__STL_NEED_EXPLICIT); + PRINT_MACRO(__STL_NEED_MUTABLE); + PRINT_MACRO(__STL_NEED_TYPENAME); + PRINT_MACRO(__STL_NESTED_TYPE_PARAM_BUG); + PRINT_MACRO(__STL_NO_BAD_ALLOC); + PRINT_MACRO(__STL_NO_BOOL); + PRINT_MACRO(__STL_NO_CLASS_PARTIAL_SPECIALIZATION); + PRINT_MACRO(__STL_NO_CSTD_FUNCTION_IMPORTS); + PRINT_MACRO(__STL_NO_DEFAULT_NON_TYPE_PARAM); + PRINT_MACRO(__STL_NO_EXCEPTION_HEADER); + PRINT_MACRO(__STL_NO_EXCEPTION_SPEC); + PRINT_MACRO(__STL_NO_EXCEPTIONS); + PRINT_MACRO(__STL_NO_EXPLICIT_FUNCTION_TMPL_ARGS); + PRINT_MACRO(__STL_NO_FRIEND_TEMPLATES); + PRINT_MACRO(__STL_NO_FUNCTION_TMPL_PARTIAL_ORDER); + PRINT_MACRO(__STL_NO_IOSTREAMS); + PRINT_MACRO(__STL_NO_LONG_DOUBLE); + PRINT_MACRO(__STL_NO_MEMBER_TEMPLATE_CLASSES); + PRINT_MACRO(__STL_NO_MEMBER_TEMPLATE_KEYWORD); + PRINT_MACRO(__STL_NO_MEMBER_TEMPLATES); + PRINT_MACRO(__STL_NO_METHOD_SPECIALIZATION); + PRINT_MACRO(__STL_NO_NAMESPACES); + PRINT_MACRO(__STL_NO_NEW_IOSTREAMS); + PRINT_MACRO(__STL_NO_NEW_NEW_HEADER); + PRINT_MACRO(__STL_NO_NEW_STYLE_CASTS); + PRINT_MACRO(__STL_NO_PARTIAL_SPECIALIZATION_SYNTAX); + PRINT_MACRO(__STL_NO_QUALIFIED_FRIENDS); + PRINT_MACRO(__STL_NO_RELOPS_NAMESPACE); + PRINT_MACRO(__STL_NO_SGI_IOSTREAMS); + PRINT_MACRO(__STL_NO_STATIC_TEMPLATE_DATA); + PRINT_MACRO(__STL_NO_TEMPLATE_CONVERSIONS); + PRINT_MACRO(__STL_NO_WCHAR_T); + PRINT_MACRO(__STL_NON_TYPE_TMPL_PARAM_BUG); + PRINT_MACRO(__STL_NONTEMPL_BASE_MATCH_BUG); + PRINT_MACRO(__STL_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS); + PRINT_MACRO(__STL_RAND48); + PRINT_MACRO(__STL_STATIC_ARRAY_BUG); + PRINT_MACRO(__STL_STATIC_CONST_INIT_BUG); + PRINT_MACRO(__STL_STATIC_CONST_INIT_BUG); + PRINT_MACRO(__STL_THROW_RETURN_BUG); + PRINT_MACRO(__STL_TRIVIAL_CONSTRUCTOR_BUG); + PRINT_MACRO(__STL_TRIVIAL_DESTRUCTOR_BUG); + PRINT_MACRO(__STL_UNINITIALIZABLE_PRIVATE); + PRINT_MACRO(__STL_USE_ABBREVS); + PRINT_MACRO(__STL_USE_DEFALLOC); + PRINT_MACRO(__STL_USE_MALLOC); + PRINT_MACRO(__STL_USE_NEW_C_HEADERS); + PRINT_MACRO(__STL_USE_NEW_IOSTREAMS); + PRINT_MACRO(__STL_USE_NEWALLOC); + PRINT_MACRO(__STL_USE_OWN_NAMESPACE); + PRINT_MACRO(__STL_USE_SGI_ALLOCATORS); + PRINT_MACRO(__STL_WCHAR_T_IS_USHORT); + PRINT_MACRO(__STL_WEAK_ATTRIBUTE); + PRINT_MACRO(__STL_YVALS_H); + PRINT_MACRO(_NOTHREADS); + PRINT_MACRO(_PTHREADS); +#if defined(__SGI_STL_PORT) && (__SGI_STL_PORT > 0x0400) + PRINT_MACRO(_STLP_AUTOMATIC_TYPE_TRAITS); + PRINT_MACRO(_STLP_BASE_MATCH_BUG); + PRINT_MACRO(_STLP_BASE_TYPEDEF_BUG); + PRINT_MACRO(_STLP_BASE_TYPEDEF_OUTSIDE_BUG); + PRINT_MACRO(_STLP_BROKEN_USING_DIRECTIVE); + PRINT_MACRO(_STLP_CONST_CONSTRUCTOR_BUG); + PRINT_MACRO(_STLP_DEBUG); + PRINT_MACRO(_STLP_DEBUG_ALLOC); + PRINT_MACRO(_STLP_DEFAULT_CONSTRUCTOR_BUG); + PRINT_MACRO(_STLP_DEFAULT_TYPE_PARAM); + PRINT_MACRO(_STLP_DONT_REDEFINE_STD); + PRINT_MACRO(_STLP_DONT_USE_BOOL_TYPEDEF); + PRINT_MACRO(_STLP_HAS_NO_EXCEPTIONS); + PRINT_MACRO(_STLP_HAS_NO_NAMESPACES); + PRINT_MACRO(_STLP_HAS_NO_NEW_C_HEADERS); + PRINT_MACRO(_STLP_HAS_NO_NEW_IOSTREAMS); + PRINT_MACRO(_STLP_IMPORT_VENDOR_CSTD); + PRINT_MACRO(_STLP_LIMITED_DEFAULT_TEMPLATES); + PRINT_MACRO(_STLP_LINK_TIME_INSTANTIATION); + PRINT_MACRO(_STLP_LONG_LONG); + PRINT_MACRO(_STLP_LOOP_INLINE_PROBLEMS); + PRINT_MACRO(_STLP_MEMBER_POINTER_PARAM_BUG); + PRINT_MACRO(_STLP_NEED_EXPLICIT); + PRINT_MACRO(_STLP_NEED_MUTABLE); + PRINT_MACRO(_STLP_NEED_TYPENAME); + PRINT_MACRO(_STLP_NESTED_TYPE_PARAM_BUG); + PRINT_MACRO(_STLP_NO_ARROW_OPERATOR); + PRINT_MACRO(_STLP_NO_BAD_ALLOC); + PRINT_MACRO(_STLP_NO_BOOL); + PRINT_MACRO(_STLP_NO_CLASS_PARTIAL_SPECIALIZATION); + PRINT_MACRO(_STLP_NO_CSTD_FUNCTION_IMPORTS); + PRINT_MACRO(_STLP_NO_DEFAULT_NON_TYPE_PARAM); + PRINT_MACRO(_STLP_NO_EXCEPTION_HEADER); + PRINT_MACRO(_STLP_NO_EXCEPTION_SPEC); + PRINT_MACRO(_STLP_NO_EXCEPTIONS); + PRINT_MACRO(_STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS); + PRINT_MACRO(_STLP_NO_FRIEND_TEMPLATES); + PRINT_MACRO(_STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER); + PRINT_MACRO(_STLP_NO_IOSTREAMS); + PRINT_MACRO(_STLP_NO_LONG_DOUBLE); + PRINT_MACRO(_STLP_NO_MEMBER_TEMPLATE_CLASSES); + PRINT_MACRO(_STLP_NO_MEMBER_TEMPLATE_KEYWORD); + PRINT_MACRO(_STLP_NO_MEMBER_TEMPLATES); + PRINT_MACRO(_STLP_NO_METHOD_SPECIALIZATION); + PRINT_MACRO(_STLP_NO_NAMESPACES); + PRINT_MACRO(_STLP_NO_NEW_IOSTREAMS); + PRINT_MACRO(_STLP_NO_NEW_NEW_HEADER); + PRINT_MACRO(_STLP_NO_NEW_STYLE_CASTS); + PRINT_MACRO(_STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX); + PRINT_MACRO(_STLP_NO_QUALIFIED_FRIENDS); + PRINT_MACRO(_STLP_NO_RELOPS_NAMESPACE); + PRINT_MACRO(_STLP_NO_SGI_IOSTREAMS); + PRINT_MACRO(_STLP_NO_STATIC_TEMPLATE_DATA); + PRINT_MACRO(_STLP_NO_TEMPLATE_CONVERSIONS); + PRINT_MACRO(_STLP_NO_WCHAR_T); + PRINT_MACRO(_STLP_NON_TYPE_TMPL_PARAM_BUG); + PRINT_MACRO(_STLP_NONTEMPL_BASE_MATCH_BUG); + PRINT_MACRO(_STLP_OWN_IOSTREAMS); + PRINT_MACRO(_STLP_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS); + PRINT_MACRO(_STLP_RAND48); + PRINT_MACRO(_STLP_STATIC_ARRAY_BUG); + PRINT_MACRO(_STLP_STATIC_CONST_INIT_BUG); + PRINT_MACRO(_STLP_STATIC_CONST_INIT_BUG); + PRINT_MACRO(_STLP_THROW_RETURN_BUG); + PRINT_MACRO(_STLP_TRIVIAL_CONSTRUCTOR_BUG); + PRINT_MACRO(_STLP_TRIVIAL_DESTRUCTOR_BUG); + PRINT_MACRO(_STLP_UNINITIALIZABLE_PRIVATE); + PRINT_MACRO(_STLP_USE_ABBREVS); + PRINT_MACRO(_STLP_USE_DEFALLOC); + PRINT_MACRO(_STLP_USE_MALLOC); + PRINT_MACRO(_STLP_USE_NEW_C_HEADERS); + PRINT_MACRO(_STLP_USE_NEWALLOC); + PRINT_MACRO(_STLP_USE_OWN_NAMESPACE); + PRINT_MACRO(_STLP_USE_SGI_ALLOCATORS); + PRINT_MACRO(_STLP_WCHAR_T_IS_USHORT); + PRINT_MACRO(_STLP_WEAK_ATTRIBUTE); + PRINT_MACRO(_STLP_YVALS_H); +#endif + PRINT_MACRO(__GLIBCPP__); + PRINT_MACRO(_GLIBCPP_USE_WCHAR_T); + PRINT_MACRO(_GLIBCPP_VERSION); + PRINT_MACRO(__GLIBCXX__); + PRINT_MACRO(_GLIBCXX_USE_WCHAR_T); + PRINT_MACRO(_GLIBCXX_VERSION); + PRINT_MACRO(_GLIBCXX_USE_LONG_LONG); + PRINT_MACRO(_GLIBCXX_USE_NLS); + PRINT_MACRO(_GLIBCXX_USE_C99_MATH); + PRINT_MACRO(_GLIBCXX_USE_C99); + PRINT_MACRO(_GLIBCXX_CONCEPT_CHECKS); + PRINT_MACRO(_GLIBCXX_USE_LFS); + PRINT_MACRO(_GLIBCXX_SYMVER); + PRINT_MACRO(_GLIBCXX_MEM_LIMITS); + PRINT_MACRO(_GLIBCXX_HOSTED); + PRINT_MACRO(_GLIBCXX_SJLJ_EXCEPTIONS); + PRINT_MACRO(_GLIBCXX_RELEASE); + PRINT_MACRO(_GLIBCXX_USE_FLOAT128); + + // Modena C++ standard library + PRINT_MACRO(MSIPL_ANSI_HEADER); + PRINT_MACRO(MSIPL_BOOL_BUILTIN); + PRINT_MACRO(MSIPL_DEF_EXPLICIT); + PRINT_MACRO(MSIPL_DEF_TEMPARG); + PRINT_MACRO(MSIPL_EXPINST_ALLOWED); + PRINT_MACRO(MSIPL_EXPLICIT_FUNC_TEMPLATE_ARG); + PRINT_MACRO(MISPL_EXPLICIT_TEMPLATE_ARGUMENT); + PRINT_MACRO(MSIPL_FUNC_TEMPLATE_DEFARG); + PRINT_MACRO(MSIPL_MEMBER_TEMPLATE); + PRINT_MACRO(MSIPL_MULTITHREAD); + PRINT_MACRO(MSIPL_NON_TYPE_TEMPARG); + PRINT_MACRO(MSIPL_PARTIAL_TEMPL); + PRINT_MACRO(MSIPL_STATIC_CONST_INIT); + PRINT_MACRO(MSIPL_TEMPL_NEWSPEC); + PRINT_MACRO(MSIPL_TYPENAME); + PRINT_MACRO(MSIPL_USING_NAMESPACE); + PRINT_MACRO(MSIPL_WCHART); +} + +void print_platform_macros() +{ + std::cout << "Detected Platform: " << BOOST_PLATFORM << std::endl; + // signedness: + PRINT_SIGN(char); + PRINT_SIGN(wchar_t); + // byte ordering: + PRINT_ORDER(short); + PRINT_ORDER(int); + PRINT_ORDER(long); + // sizes: + PRINT_EXPRESSION(sizeof(wchar_t)); + PRINT_EXPRESSION(sizeof(short)); + PRINT_EXPRESSION(sizeof(int)); + PRINT_EXPRESSION(sizeof(long)); + PRINT_EXPRESSION(sizeof(size_t)); + PRINT_EXPRESSION(sizeof(ptrdiff_t)); + PRINT_EXPRESSION(sizeof(void*)); + PRINT_EXPRESSION(sizeof(void(*)(void))); + PRINT_EXPRESSION(sizeof(float)); + PRINT_EXPRESSION(sizeof(double)); + PRINT_EXPRESSION(sizeof(long double)); + // limits: + PRINT_MACRO(CHAR_BIT); + PRINT_MACRO(CHAR_MAX); + PRINT_MACRO(WCHAR_MAX); + PRINT_MACRO(SHRT_MAX); + PRINT_MACRO(INT_MAX); + PRINT_MACRO(LONG_MAX); + PRINT_MACRO(LLONG_MAX); + PRINT_MACRO(LONG_LONG_MAX); + PRINT_MACRO(LONGLONG_MAX); + PRINT_MACRO(ULLONG_MAX); // <boost/cstdint.hpp> uses these, so we need to know them + PRINT_MACRO(ULONG_LONG_MAX); + PRINT_MACRO(ULONGLONG_MAX); + // general C99: + PRINT_MACRO(__STDC_IEC_559__); + PRINT_MACRO(__STDC_IEC_559_COMPLEX__); + PRINT_MACRO(__STDC_ISO_10646__); + // GNU: + PRINT_MACRO(__GLIBC__); + PRINT_MACRO(__GLIBC_MINOR__); + PRINT_MACRO(__GNU_LIBRARY__); + PRINT_MACRO(_BSD_SOURCE); + PRINT_MACRO(_GNU_SOURCE); + PRINT_MACRO(_ISOC99_SOURCE); + PRINT_MACRO(_ISOC9X_SOURCE); + PRINT_MACRO(_LARGEFILE_SOURCE); + PRINT_MACRO(_LARGEFILE64_SOURCE); + PRINT_MACRO(_SVID_SOURCE); + PRINT_MACRO(_THREAD_SAFE); + PRINT_MACRO(_XOPEN_SOURCE_EXTENDED); + PRINT_MACRO(XPG); + PRINT_MACRO(__MINGW32_MAJOR_VERSION); + PRINT_MACRO(__MINGW32_MINOR_VERSION); + // POSIX: + PRINT_MACRO(_POSIX_ADVISORY_INFO); + PRINT_MACRO(_POSIX_ASYNCHRONOUS_IO); + PRINT_MACRO(_POSIX_BARRIERS); + PRINT_MACRO(_POSIX_C_SOURCE); + PRINT_MACRO(_POSIX_CHOWN_RESTRICTED); + PRINT_MACRO(_POSIX_CLOCK_SELECTION); + PRINT_MACRO(_POSIX_CPUTIME); + PRINT_MACRO(_POSIX_FSYNC); + PRINT_MACRO(_POSIX_JOB_CONTROL); + PRINT_MACRO(_POSIX_MAPPED_FILES); + PRINT_MACRO(_POSIX_MEMLOCK); + PRINT_MACRO(_POSIX_MEMLOCK_RANGE); + PRINT_MACRO(_POSIX_MEMORY_PROTECTION); + PRINT_MACRO(_POSIX_MESSAGE_PASSING); + PRINT_MACRO(_POSIX_MONOTONIC_CLOCK); + PRINT_MACRO(_POSIX_NO_TRUNC); + PRINT_MACRO(_POSIX_PRIORITIZED_IO); + PRINT_MACRO(_POSIX_PRIORITY_SCHEDULING); + PRINT_MACRO(_POSIX_RAW_SOCKETS); + PRINT_MACRO(_POSIX_READER_WRITER_LOCKS); + PRINT_MACRO(_POSIX_REALTIME_SIGNALS); + PRINT_MACRO(_POSIX_REGEXP); + PRINT_MACRO(_POSIX_SAVED_IDS); + PRINT_MACRO(_POSIX_SEMAPHORES); + PRINT_MACRO(_POSIX_SHARED_MEMORY_OBJECTS); + PRINT_MACRO(_POSIX_SHELL); + PRINT_MACRO(_POSIX_SOURCE); + PRINT_MACRO(_POSIX_SPAWN); + PRINT_MACRO(_POSIX_SPIN_LOCKS); + PRINT_MACRO(_POSIX_SPORADIC_SERVER); + PRINT_MACRO(_POSIX_SYNCHRONIZED_IO); + PRINT_MACRO(_POSIX_THREAD_ATTR_STACKADDR); + PRINT_MACRO(_POSIX_THREAD_ATTR_STACKSIZE); + PRINT_MACRO(_POSIX_THREAD_CPUTIME); + PRINT_MACRO(_POSIX_THREAD_PRIO_INHERIT); + PRINT_MACRO(_POSIX_THREAD_PRIO_PROTECT); + PRINT_MACRO(_POSIX_THREAD_PRIORITY_SCHEDULING); + PRINT_MACRO(_POSIX_THREAD_PROCESS_SHARED); + PRINT_MACRO(_POSIX_THREAD_SAFE_FUNCTIONS); + PRINT_MACRO(_POSIX_THREAD_SPORADIC_SERVER); + PRINT_MACRO(_POSIX_THREADS); + PRINT_MACRO(_POSIX_TIMEOUTS); + PRINT_MACRO(_POSIX_TIMERS); + PRINT_MACRO(_POSIX_TRACE); + PRINT_MACRO(_POSIX_TRACE_EVENT_FILTER); + PRINT_MACRO(_POSIX_TRACE_INHERIT); + PRINT_MACRO(_POSIX_TRACE_LOG); + PRINT_MACRO(_POSIX_TYPED_MEMORY_OBJECTS); + PRINT_MACRO(_POSIX_VDISABLE); + PRINT_MACRO(_POSIX_VERSION); + PRINT_MACRO(_POSIX2_C_BIND); + PRINT_MACRO(_POSIX2_C_DEV); + PRINT_MACRO(_POSIX2_CHAR_TERM); + PRINT_MACRO(_POSIX2_FORT_DEV); + PRINT_MACRO(_POSIX2_FORT_RUN); + PRINT_MACRO(_POSIX2_LOCALEDEF); + PRINT_MACRO(_POSIX2_PBS); + PRINT_MACRO(_POSIX2_PBS_ACCOUNTING); + PRINT_MACRO(_POSIX2_PBS_CHECKPOINT); + PRINT_MACRO(_POSIX2_PBS_LOCATE); + PRINT_MACRO(_POSIX2_PBS_MESSAGE); + PRINT_MACRO(_POSIX2_PBS_TRACK); + PRINT_MACRO(_POSIX2_SW_DEV); + PRINT_MACRO(_POSIX2_UPE); + PRINT_MACRO(_POSIX2_VERSION); + PRINT_MACRO(_V6_ILP32_OFF32); + PRINT_MACRO(_V6_ILP32_OFFBIG); + PRINT_MACRO(_V6_LP64_OFF64); + PRINT_MACRO(_V6_LPBIG_OFFBIG); + PRINT_MACRO(_XBS5_ILP32_OFF32); + PRINT_MACRO(_XBS5_ILP32_OFFBIG); + PRINT_MACRO(_XBS5_LP64_OFF64); + PRINT_MACRO(_XBS5_LPBIG_OFFBIG); + PRINT_MACRO(_XOPEN_CRYPT); + PRINT_MACRO(_XOPEN_ENH_I18N); + PRINT_MACRO(_XOPEN_LEGACY); + PRINT_MACRO(_XOPEN_REALTIME); + PRINT_MACRO(_XOPEN_REALTIME_THREADS); + PRINT_MACRO(_XOPEN_SHM); + PRINT_MACRO(_XOPEN_SOURCE); + PRINT_MACRO(_XOPEN_STREAMS); + PRINT_MACRO(_XOPEN_UNIX); + PRINT_MACRO(_XOPEN_VERSION); + // Misc: + PRINT_MACRO(__USE_BSD); + PRINT_MACRO(_FILE_OFFSET_BITS); +} + +void print_boost_macros() +{ + std::cout << "Boost version " << BOOST_STRINGIZE(BOOST_VERSION) << std::endl; + // config setup macros first: + PRINT_MACRO(BOOST_USER_CONFIG); + PRINT_MACRO(BOOST_COMPILER_CONFIG); + PRINT_MACRO(BOOST_STDLIB_CONFIG); + PRINT_MACRO(BOOST_PLATFORM_CONFIG); + PRINT_MACRO(BOOST_NO_CONFIG); + PRINT_MACRO(BOOST_NO_USER_CONFIG); + PRINT_MACRO(BOOST_NO_COMPILER_CONFIG); + PRINT_MACRO(BOOST_NO_STDLIB_CONFIG); + PRINT_MACRO(BOOST_NO_PLATFORM_CONFIG); + // then defect and feature macros: + PRINT_MACRO(BOOST_DISABLE_THREADS); + PRINT_MACRO(BOOST_DISABLE_WIN32); + PRINT_MACRO(BOOST_HAS_THREADS); + PRINT_MACRO(BOOST_WINDOWS); + + // BEGIN GENERATED BLOCK DO NOT EDIT THIS!!!!!! + PRINT_MACRO(BOOST_BCB_PARTIAL_SPECIALIZATION_BUG); + PRINT_MACRO(BOOST_DEDUCED_TYPENAME); + PRINT_MACRO(BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL); + PRINT_MACRO(BOOST_HAS_BETHREADS); + PRINT_MACRO(BOOST_HAS_CLOCK_GETTIME); + PRINT_MACRO(BOOST_HAS_DIRENT_H); + PRINT_MACRO(BOOST_HAS_EXPM1); + PRINT_MACRO(BOOST_HAS_FLOAT128); + PRINT_MACRO(BOOST_HAS_FTIME); + PRINT_MACRO(BOOST_HAS_GETSYSTEMTIMEASFILETIME); + PRINT_MACRO(BOOST_HAS_GETTIMEOFDAY); + PRINT_MACRO(BOOST_HAS_HASH); + PRINT_MACRO(BOOST_HAS_INT128); + PRINT_MACRO(BOOST_HAS_LOG1P); + PRINT_MACRO(BOOST_HAS_LONG_LONG); + PRINT_MACRO(BOOST_HAS_MACRO_USE_FACET); + PRINT_MACRO(BOOST_HAS_MS_INT64); + PRINT_MACRO(BOOST_HAS_NANOSLEEP); + PRINT_MACRO(BOOST_HAS_NL_TYPES_H); + PRINT_MACRO(BOOST_HAS_NRVO); + PRINT_MACRO(BOOST_HAS_PARTIAL_STD_ALLOCATOR); + PRINT_MACRO(BOOST_HAS_PRAGMA_DETECT_MISMATCH); + PRINT_MACRO(BOOST_HAS_PTHREADS); + PRINT_MACRO(BOOST_HAS_PTHREAD_DELAY_NP); + PRINT_MACRO(BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE); + PRINT_MACRO(BOOST_HAS_PTHREAD_YIELD); + PRINT_MACRO(BOOST_HAS_RVALUE_REFS); + PRINT_MACRO(BOOST_HAS_SCHED_YIELD); + PRINT_MACRO(BOOST_HAS_SGI_TYPE_TRAITS); + PRINT_MACRO(BOOST_HAS_SIGACTION); + PRINT_MACRO(BOOST_HAS_SLIST); + PRINT_MACRO(BOOST_HAS_STATIC_ASSERT); + PRINT_MACRO(BOOST_HAS_STDINT_H); + PRINT_MACRO(BOOST_HAS_STLP_USE_FACET); + PRINT_MACRO(BOOST_HAS_TWO_ARG_USE_FACET); + PRINT_MACRO(BOOST_HAS_UNISTD_H); + PRINT_MACRO(BOOST_HAS_VARIADIC_TMPL); + PRINT_MACRO(BOOST_HAS_WINTHREADS); + PRINT_MACRO(BOOST_MSVC6_MEMBER_TEMPLATES); + PRINT_MACRO(BOOST_MSVC_STD_ITERATOR); + PRINT_MACRO(BOOST_NO_ADL_BARRIER); + PRINT_MACRO(BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP); + PRINT_MACRO(BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS); + PRINT_MACRO(BOOST_NO_AUTO_PTR); + PRINT_MACRO(BOOST_NO_COMPLETE_VALUE_INITIALIZATION); + PRINT_MACRO(BOOST_NO_CTYPE_FUNCTIONS); + PRINT_MACRO(BOOST_NO_CV_SPECIALIZATIONS); + PRINT_MACRO(BOOST_NO_CV_VOID_SPECIALIZATIONS); + PRINT_MACRO(BOOST_NO_CWCHAR); + PRINT_MACRO(BOOST_NO_CWCTYPE); + PRINT_MACRO(BOOST_NO_CXX11_ADDRESSOF); + PRINT_MACRO(BOOST_NO_CXX11_ALIGNAS); + PRINT_MACRO(BOOST_NO_CXX11_ALLOCATOR); + PRINT_MACRO(BOOST_NO_CXX11_ATOMIC_SMART_PTR); + PRINT_MACRO(BOOST_NO_CXX11_AUTO_DECLARATIONS); + PRINT_MACRO(BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS); + PRINT_MACRO(BOOST_NO_CXX11_CHAR16_T); + PRINT_MACRO(BOOST_NO_CXX11_CHAR32_T); + PRINT_MACRO(BOOST_NO_CXX11_CONSTEXPR); + PRINT_MACRO(BOOST_NO_CXX11_DECLTYPE); + PRINT_MACRO(BOOST_NO_CXX11_DECLTYPE_N3276); + PRINT_MACRO(BOOST_NO_CXX11_DEFAULTED_FUNCTIONS); + PRINT_MACRO(BOOST_NO_CXX11_DEFAULTED_MOVES); + PRINT_MACRO(BOOST_NO_CXX11_DELETED_FUNCTIONS); + PRINT_MACRO(BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS); + PRINT_MACRO(BOOST_NO_CXX11_EXTERN_TEMPLATE); + PRINT_MACRO(BOOST_NO_CXX11_FINAL); + PRINT_MACRO(BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS); + PRINT_MACRO(BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS); + PRINT_MACRO(BOOST_NO_CXX11_HDR_ARRAY); + PRINT_MACRO(BOOST_NO_CXX11_HDR_ATOMIC); + PRINT_MACRO(BOOST_NO_CXX11_HDR_CHRONO); + PRINT_MACRO(BOOST_NO_CXX11_HDR_CODECVT); + PRINT_MACRO(BOOST_NO_CXX11_HDR_CONDITION_VARIABLE); + PRINT_MACRO(BOOST_NO_CXX11_HDR_EXCEPTION); + PRINT_MACRO(BOOST_NO_CXX11_HDR_FORWARD_LIST); + PRINT_MACRO(BOOST_NO_CXX11_HDR_FUNCTIONAL); + PRINT_MACRO(BOOST_NO_CXX11_HDR_FUTURE); + PRINT_MACRO(BOOST_NO_CXX11_HDR_INITIALIZER_LIST); + PRINT_MACRO(BOOST_NO_CXX11_HDR_MUTEX); + PRINT_MACRO(BOOST_NO_CXX11_HDR_RANDOM); + PRINT_MACRO(BOOST_NO_CXX11_HDR_RATIO); + PRINT_MACRO(BOOST_NO_CXX11_HDR_REGEX); + PRINT_MACRO(BOOST_NO_CXX11_HDR_SYSTEM_ERROR); + PRINT_MACRO(BOOST_NO_CXX11_HDR_THREAD); + PRINT_MACRO(BOOST_NO_CXX11_HDR_TUPLE); + PRINT_MACRO(BOOST_NO_CXX11_HDR_TYPEINDEX); + PRINT_MACRO(BOOST_NO_CXX11_HDR_TYPE_TRAITS); + PRINT_MACRO(BOOST_NO_CXX11_HDR_UNORDERED_MAP); + PRINT_MACRO(BOOST_NO_CXX11_HDR_UNORDERED_SET); + PRINT_MACRO(BOOST_NO_CXX11_INLINE_NAMESPACES); + PRINT_MACRO(BOOST_NO_CXX11_LAMBDAS); + PRINT_MACRO(BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS); + PRINT_MACRO(BOOST_NO_CXX11_NOEXCEPT); + PRINT_MACRO(BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS); + PRINT_MACRO(BOOST_NO_CXX11_NULLPTR); + PRINT_MACRO(BOOST_NO_CXX11_NUMERIC_LIMITS); + PRINT_MACRO(BOOST_NO_CXX11_POINTER_TRAITS); + PRINT_MACRO(BOOST_NO_CXX11_RANGE_BASED_FOR); + PRINT_MACRO(BOOST_NO_CXX11_RAW_LITERALS); + PRINT_MACRO(BOOST_NO_CXX11_REF_QUALIFIERS); + PRINT_MACRO(BOOST_NO_CXX11_RVALUE_REFERENCES); + PRINT_MACRO(BOOST_NO_CXX11_SCOPED_ENUMS); + PRINT_MACRO(BOOST_NO_CXX11_SFINAE_EXPR); + PRINT_MACRO(BOOST_NO_CXX11_SMART_PTR); + 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); + PRINT_MACRO(BOOST_NO_CXX11_USER_DEFINED_LITERALS); + PRINT_MACRO(BOOST_NO_CXX11_VARIADIC_MACROS); + PRINT_MACRO(BOOST_NO_CXX11_VARIADIC_TEMPLATES); + PRINT_MACRO(BOOST_NO_CXX14_AGGREGATE_NSDMI); + PRINT_MACRO(BOOST_NO_CXX14_BINARY_LITERALS); + PRINT_MACRO(BOOST_NO_CXX14_CONSTEXPR); + PRINT_MACRO(BOOST_NO_CXX14_DECLTYPE_AUTO); + PRINT_MACRO(BOOST_NO_CXX14_DIGIT_SEPARATORS); + PRINT_MACRO(BOOST_NO_CXX14_GENERIC_LAMBDAS); + PRINT_MACRO(BOOST_NO_CXX14_HDR_SHARED_MUTEX); + PRINT_MACRO(BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES); + PRINT_MACRO(BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION); + PRINT_MACRO(BOOST_NO_CXX14_STD_EXCHANGE); + PRINT_MACRO(BOOST_NO_CXX14_VARIABLE_TEMPLATES); + PRINT_MACRO(BOOST_NO_CXX17_FOLD_EXPRESSIONS); + PRINT_MACRO(BOOST_NO_CXX17_HDR_OPTIONAL); + PRINT_MACRO(BOOST_NO_CXX17_HDR_STRING_VIEW); + PRINT_MACRO(BOOST_NO_CXX17_HDR_VARIANT); + PRINT_MACRO(BOOST_NO_CXX17_IF_CONSTEXPR); + PRINT_MACRO(BOOST_NO_CXX17_INLINE_VARIABLES); + PRINT_MACRO(BOOST_NO_CXX17_ITERATOR_TRAITS); + PRINT_MACRO(BOOST_NO_CXX17_STD_APPLY); + PRINT_MACRO(BOOST_NO_CXX17_STD_INVOKE); + PRINT_MACRO(BOOST_NO_CXX17_STRUCTURED_BINDINGS); + PRINT_MACRO(BOOST_NO_CXX98_BINDERS); + PRINT_MACRO(BOOST_NO_CXX98_FUNCTION_BASE); + PRINT_MACRO(BOOST_NO_CXX98_RANDOM_SHUFFLE); + PRINT_MACRO(BOOST_NO_DEPENDENT_NESTED_DERIVATIONS); + PRINT_MACRO(BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS); + PRINT_MACRO(BOOST_NO_EXCEPTIONS); + PRINT_MACRO(BOOST_NO_EXCEPTION_STD_NAMESPACE); + PRINT_MACRO(BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS); + PRINT_MACRO(BOOST_NO_FENV_H); + PRINT_MACRO(BOOST_NO_FUNCTION_TEMPLATE_ORDERING); + PRINT_MACRO(BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS); + PRINT_MACRO(BOOST_NO_INCLASS_MEMBER_INITIALIZATION); + PRINT_MACRO(BOOST_NO_INTEGRAL_INT64_T); + PRINT_MACRO(BOOST_NO_INTRINSIC_WCHAR_T); + PRINT_MACRO(BOOST_NO_IOSFWD); + PRINT_MACRO(BOOST_NO_IOSTREAM); + PRINT_MACRO(BOOST_NO_IS_ABSTRACT); + PRINT_MACRO(BOOST_NO_LIMITS); + PRINT_MACRO(BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS); + PRINT_MACRO(BOOST_NO_LONG_LONG); + PRINT_MACRO(BOOST_NO_LONG_LONG_NUMERIC_LIMITS); + PRINT_MACRO(BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS); + PRINT_MACRO(BOOST_NO_MEMBER_TEMPLATES); + PRINT_MACRO(BOOST_NO_MEMBER_TEMPLATE_FRIENDS); + PRINT_MACRO(BOOST_NO_MEMBER_TEMPLATE_KEYWORD); + PRINT_MACRO(BOOST_NO_MS_INT64_NUMERIC_LIMITS); + PRINT_MACRO(BOOST_NO_NESTED_FRIENDSHIP); + PRINT_MACRO(BOOST_NO_OPERATORS_IN_NAMESPACE); + PRINT_MACRO(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS); + PRINT_MACRO(BOOST_NO_POINTER_TO_MEMBER_CONST); + PRINT_MACRO(BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS); + PRINT_MACRO(BOOST_NO_PRIVATE_IN_AGGREGATE); + PRINT_MACRO(BOOST_NO_RESTRICT_REFERENCES); + PRINT_MACRO(BOOST_NO_RTTI); + PRINT_MACRO(BOOST_NO_SFINAE); + PRINT_MACRO(BOOST_NO_SFINAE_EXPR); + PRINT_MACRO(BOOST_NO_STDC_NAMESPACE); + PRINT_MACRO(BOOST_NO_STD_ALLOCATOR); + PRINT_MACRO(BOOST_NO_STD_DISTANCE); + PRINT_MACRO(BOOST_NO_STD_ITERATOR); + PRINT_MACRO(BOOST_NO_STD_ITERATOR_TRAITS); + PRINT_MACRO(BOOST_NO_STD_LOCALE); + PRINT_MACRO(BOOST_NO_STD_MESSAGES); + PRINT_MACRO(BOOST_NO_STD_MIN_MAX); + PRINT_MACRO(BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN); + PRINT_MACRO(BOOST_NO_STD_TYPEINFO); + PRINT_MACRO(BOOST_NO_STD_USE_FACET); + PRINT_MACRO(BOOST_NO_STD_WSTREAMBUF); + PRINT_MACRO(BOOST_NO_STD_WSTRING); + PRINT_MACRO(BOOST_NO_STRINGSTREAM); + PRINT_MACRO(BOOST_NO_SWPRINTF); + PRINT_MACRO(BOOST_NO_TEMPLATED_IOSTREAMS); + PRINT_MACRO(BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS); + PRINT_MACRO(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION); + PRINT_MACRO(BOOST_NO_TEMPLATE_TEMPLATES); + PRINT_MACRO(BOOST_NO_TWO_PHASE_NAME_LOOKUP); + PRINT_MACRO(BOOST_NO_TYPEID); + PRINT_MACRO(BOOST_NO_TYPENAME_WITH_CTOR); + PRINT_MACRO(BOOST_NO_UNREACHABLE_RETURN_DETECTION); + PRINT_MACRO(BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE); + PRINT_MACRO(BOOST_NO_USING_TEMPLATE); + PRINT_MACRO(BOOST_NO_VOID_RETURNS); + + + // END GENERATED BLOCK + + PRINT_MACRO(BOOST_INTEL); + PRINT_MACRO(BOOST_MSVC); + PRINT_MACRO(BOOST_GCC); + PRINT_MACRO(BOOST_LIBSTDCXX_VERSION); + PRINT_MACRO(BOOST_STD_EXTENSION_NAMESPACE); + PRINT_MACRO(BOOST_UNREACHABLE_RETURN(0)); + PRINT_MACRO(BOOST_CONSTEXPR); + PRINT_MACRO(BOOST_CONSTEXPR_OR_CONST); + PRINT_MACRO(BOOST_STATIC_CONSTEXPR); + PRINT_MACRO(BOOST_NOEXCEPT); + PRINT_MACRO(BOOST_FORCEINLINE); + PRINT_MACRO(BOOST_NOINLINE); + PRINT_MACRO(BOOST_FALLTHROUGH); + PRINT_MACRO(BOOST_MAY_ALIAS); + PRINT_MACRO(BOOST_NO_MAY_ALIAS); + PRINT_MACRO(BOOST_ATTRIBUTE_NO_UNIQUE_ADDRESS); + PRINT_MACRO(BOOST_ATTRIBUTE_UNUSED); + PRINT_MACRO(BOOST_UNLIKELY); + PRINT_MACRO(BOOST_NORETURN); +} + +void print_sd6_macros() +{ + // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0096r5.html + + // C++20: + PRINT_MACRO(__cpp_aggregate_paren_init); + PRINT_MACRO(__cpp_char8_t); + PRINT_MACRO(__cpp_char8_type); + PRINT_MACRO(__cpp_conditional_explicit); + PRINT_MACRO(__cpp_coroutines); + PRINT_MACRO(__cpp_impl_destroying_delete); + PRINT_MACRO(__cpp_impl_three_way_comparison); + PRINT_MACRO(__cpp_nontype_template_parameter_class); + + // C++17: + PRINT_MACRO(__cpp_hex_float); + PRINT_MACRO(__cpp_inline_variables); + PRINT_MACRO(__cpp_aligned_new); + PRINT_MACRO(__cpp_guaranteed_copy_elision); + PRINT_MACRO(__cpp_noexcept_function_type); + PRINT_MACRO(__cpp_fold_expressions); + PRINT_MACRO(__cpp_capture_star_this); + PRINT_MACRO(__cpp_constexpr); + PRINT_MACRO(__cpp_if_constexpr); + PRINT_MACRO(__cpp_range_based_for); + PRINT_MACRO(__cpp_static_assert); + PRINT_MACRO(__cpp_deduction_guides); + PRINT_MACRO(__cpp_nontype_template_parameter_auto); + PRINT_MACRO(__cpp_namespace_attributes); + PRINT_MACRO(__cpp_enumerator_attributes); + PRINT_MACRO(__cpp_inheriting_constructors); + PRINT_MACRO(__cpp_variadic_using); + PRINT_MACRO(__cpp_structured_bindings); + PRINT_MACRO(__cpp_aggregate_bases); + PRINT_MACRO(__cpp_nontype_template_args); + PRINT_MACRO(__cpp_template_template_args); + + // C++14: + PRINT_MACRO(__cpp_binary_literals); + PRINT_MACRO(__cpp_init_captures); + PRINT_MACRO(__cpp_generic_lambdas); + PRINT_MACRO(__cpp_sized_deallocation); + PRINT_MACRO(__cpp_decltype_auto); + PRINT_MACRO(__cpp_return_type_deduction); + PRINT_MACRO(__cpp_aggregate_nsdmi); + PRINT_MACRO(__cpp_variable_templates); + + // C++11: + PRINT_MACRO(__cpp_unicode_characters); + PRINT_MACRO(__cpp_raw_strings); + PRINT_MACRO(__cpp_unicode_literals); + PRINT_MACRO(__cpp_user_defined_literals); + PRINT_MACRO(__cpp_threadsafe_static_init); + PRINT_MACRO(__cpp_lambdas); + PRINT_MACRO(__cpp_decltype); + PRINT_MACRO(__cpp_attributes); + PRINT_MACRO(__cpp_rvalue_references); + PRINT_MACRO(__cpp_variadic_templates); + PRINT_MACRO(__cpp_initializer_lists); + PRINT_MACRO(__cpp_delegating_constructors); + PRINT_MACRO(__cpp_nsdmi); + PRINT_MACRO(__cpp_ref_qualifiers); + PRINT_MACRO(__cpp_alias_templates); + + // C++98: + PRINT_MACRO(__cpp_rtti); + PRINT_MACRO(__cpp_exceptions); +} + +void print_separator() +{ + std::cout << +"\n\n*********************************************************************\n\n"; +} + +int main() +{ + + // boost compiler workaround defines + print_compiler_macros(); + print_separator(); + print_stdlib_macros(); + print_separator(); + print_platform_macros(); + print_separator(); + print_boost_macros(); + print_separator(); + print_sd6_macros(); + + return 0; +} diff --git a/src/boost/libs/config/test/config_test.cpp b/src/boost/libs/config/test/config_test.cpp new file mode 100644 index 000000000..f5c1137e9 --- /dev/null +++ b/src/boost/libs/config/test/config_test.cpp @@ -0,0 +1,2021 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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 config setup +// This file should compile, if it does not then +// one or more macros need to be defined. +// see boost_*.ipp for more details + +// Do not edit this file, it was generated automatically by + +#include <boost/config.hpp> +#include <iostream> +#include "test.hpp" + +int error_count = 0; + +#ifndef BOOST_NO_ADL_BARRIER +#include "boost_no_adl_barrier.ipp" +#else +namespace boost_no_adl_barrier = empty_boost; +#endif +#ifndef BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP +#include "boost_no_arg_dep_lookup.ipp" +#else +namespace boost_no_argument_dependent_lookup = empty_boost; +#endif +#ifndef BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS +#include "boost_no_array_type_spec.ipp" +#else +namespace boost_no_array_type_specializations = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_AUTO_DECLARATIONS +#include "boost_no_auto_declarations.ipp" +#else +namespace boost_no_cxx11_auto_declarations = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS +#include "boost_no_auto_multidecl.ipp" +#else +namespace boost_no_cxx11_auto_multideclarations = empty_boost; +#endif +#ifndef BOOST_NO_AUTO_PTR +#include "boost_no_auto_ptr.ipp" +#else +namespace boost_no_auto_ptr = empty_boost; +#endif +#ifndef BOOST_BCB_PARTIAL_SPECIALIZATION_BUG +#include "boost_no_bcb_partial_spec.ipp" +#else +namespace boost_bcb_partial_specialization_bug = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_CHAR16_T +#include "boost_no_char16_t.ipp" +#else +namespace boost_no_cxx11_char16_t = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_CHAR32_T +#include "boost_no_char32_t.ipp" +#else +namespace boost_no_cxx11_char32_t = empty_boost; +#endif +#ifndef BOOST_NO_COMPLETE_VALUE_INITIALIZATION +#include "boost_no_com_value_init.ipp" +#else +namespace boost_no_complete_value_initialization = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_CONSTEXPR +#include "boost_no_constexpr.ipp" +#else +namespace boost_no_cxx11_constexpr = empty_boost; +#endif +#ifndef BOOST_NO_CTYPE_FUNCTIONS +#include "boost_no_ctype_functions.ipp" +#else +namespace boost_no_ctype_functions = empty_boost; +#endif +#ifndef BOOST_NO_CV_SPECIALIZATIONS +#include "boost_no_cv_spec.ipp" +#else +namespace boost_no_cv_specializations = empty_boost; +#endif +#ifndef BOOST_NO_CV_VOID_SPECIALIZATIONS +#include "boost_no_cv_void_spec.ipp" +#else +namespace boost_no_cv_void_specializations = empty_boost; +#endif +#ifndef BOOST_NO_CWCHAR +#include "boost_no_cwchar.ipp" +#else +namespace boost_no_cwchar = empty_boost; +#endif +#ifndef BOOST_NO_CWCTYPE +#include "boost_no_cwctype.ipp" +#else +namespace boost_no_cwctype = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_ADDRESSOF +#include "boost_no_cxx11_addressof.ipp" +#else +namespace boost_no_cxx11_addressof = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_ALIGNAS +#include "boost_no_cxx11_alignas.ipp" +#else +namespace boost_no_cxx11_alignas = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_ALLOCATOR +#include "boost_no_cxx11_allocator.ipp" +#else +namespace boost_no_cxx11_allocator = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_ATOMIC_SMART_PTR +#include "boost_no_cxx11_atomic_sp.ipp" +#else +namespace boost_no_cxx11_atomic_smart_ptr = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_DEFAULTED_MOVES +#include "boost_no_cxx11_defaulted_moves.ipp" +#else +namespace boost_no_cxx11_defaulted_moves = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_EXCEPTION +#include "boost_no_cxx11_exception.ipp" +#else +namespace boost_no_cxx11_hdr_exception = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_FINAL +#include "boost_no_cxx11_final.ipp" +#else +namespace boost_no_cxx11_final = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_ARRAY +#include "boost_no_cxx11_hdr_array.ipp" +#else +namespace boost_no_cxx11_hdr_array = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_ATOMIC +#include "boost_no_cxx11_hdr_atomic.ipp" +#else +namespace boost_no_cxx11_hdr_atomic = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_CHRONO +#include "boost_no_cxx11_hdr_chrono.ipp" +#else +namespace boost_no_cxx11_hdr_chrono = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_CODECVT +#include "boost_no_cxx11_hdr_codecvt.ipp" +#else +namespace boost_no_cxx11_hdr_codecvt = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_CONDITION_VARIABLE +#include "boost_no_cxx11_hdr_condition_variable.ipp" +#else +namespace boost_no_cxx11_hdr_condition_variable = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_FORWARD_LIST +#include "boost_no_cxx11_hdr_forward_list.ipp" +#else +namespace boost_no_cxx11_hdr_forward_list = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_FUTURE +#include "boost_no_cxx11_hdr_future.ipp" +#else +namespace boost_no_cxx11_hdr_future = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_INITIALIZER_LIST +#include "boost_no_cxx11_hdr_initializer_list.ipp" +#else +namespace boost_no_cxx11_hdr_initializer_list = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_MUTEX +#include "boost_no_cxx11_hdr_mutex.ipp" +#else +namespace boost_no_cxx11_hdr_mutex = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_RANDOM +#include "boost_no_cxx11_hdr_random.ipp" +#else +namespace boost_no_cxx11_hdr_random = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_RATIO +#include "boost_no_cxx11_hdr_ratio.ipp" +#else +namespace boost_no_cxx11_hdr_ratio = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_REGEX +#include "boost_no_cxx11_hdr_regex.ipp" +#else +namespace boost_no_cxx11_hdr_regex = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_SYSTEM_ERROR +#include "boost_no_cxx11_hdr_system_error.ipp" +#else +namespace boost_no_cxx11_hdr_system_error = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_THREAD +#include "boost_no_cxx11_hdr_thread.ipp" +#else +namespace boost_no_cxx11_hdr_thread = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_TUPLE +#include "boost_no_cxx11_hdr_tuple.ipp" +#else +namespace boost_no_cxx11_hdr_tuple = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_TYPE_TRAITS +#include "boost_no_cxx11_hdr_type_traits.ipp" +#else +namespace boost_no_cxx11_hdr_type_traits = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_TYPEINDEX +#include "boost_no_cxx11_hdr_typeindex.ipp" +#else +namespace boost_no_cxx11_hdr_typeindex = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_UNORDERED_MAP +#include "boost_no_cxx11_hdr_unordered_map.ipp" +#else +namespace boost_no_cxx11_hdr_unordered_map = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_UNORDERED_SET +#include "boost_no_cxx11_hdr_unordered_set.ipp" +#else +namespace boost_no_cxx11_hdr_unordered_set = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_INLINE_NAMESPACES +#include "boost_no_cxx11_inline_namespaces.ipp" +#else +namespace boost_no_cxx11_inline_namespaces = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS +#include "boost_no_cxx11_non_pub_def_fun.ipp" +#else +namespace boost_no_cxx11_non_public_defaulted_functions = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_NUMERIC_LIMITS +#include "boost_no_cxx11_numeric_limits.ipp" +#else +namespace boost_no_cxx11_numeric_limits = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_POINTER_TRAITS +#include "boost_no_cxx11_pointer_traits.ipp" +#else +namespace boost_no_cxx11_pointer_traits = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_REF_QUALIFIERS +#include "boost_no_cxx11_ref_qualifiers.ipp" +#else +namespace boost_no_cxx11_ref_qualifiers = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_SFINAE_EXPR +#include "boost_no_cxx11_sfinae_expr.ipp" +#else +namespace boost_no_cxx11_sfinae_expr = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_SMART_PTR +#include "boost_no_cxx11_smart_ptr.ipp" +#else +namespace boost_no_cxx11_smart_ptr = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_STD_ALIGN +#include "boost_no_cxx11_std_align.ipp" +#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 +namespace boost_no_cxx11_trailing_result_types = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_USER_DEFINED_LITERALS +#include "boost_no_cxx11_user_lit.ipp" +#else +namespace boost_no_cxx11_user_defined_literals = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_BINARY_LITERALS +#include "boost_no_cxx14_binary_literals.ipp" +#else +namespace boost_no_cxx14_binary_literals = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_CONSTEXPR +#include "boost_no_cxx14_constexpr.ipp" +#else +namespace boost_no_cxx14_constexpr = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_DECLTYPE_AUTO +#include "boost_no_cxx14_decltype_auto.ipp" +#else +namespace boost_no_cxx14_decltype_auto = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_DIGIT_SEPARATORS +#include "boost_no_cxx14_digit_separator.ipp" +#else +namespace boost_no_cxx14_digit_separators = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_GENERIC_LAMBDAS +#include "boost_no_cxx14_generic_lambda.ipp" +#else +namespace boost_no_cxx14_generic_lambdas = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_HDR_SHARED_MUTEX +#include "boost_no_cxx14_hdr_shared_mutex.ipp" +#else +namespace boost_no_cxx14_hdr_shared_mutex = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES +#include "boost_no_cxx14_lambda_capture.ipp" +#else +namespace boost_no_cxx14_initialized_lambda_captures = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_AGGREGATE_NSDMI +#include "boost_no_cxx14_member_init.ipp" +#else +namespace boost_no_cxx14_aggregate_nsdmi = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION +#include "boost_no_cxx14_return_type_ded.ipp" +#else +namespace boost_no_cxx14_return_type_deduction = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_STD_EXCHANGE +#include "boost_no_cxx14_std_exchange.ipp" +#else +namespace boost_no_cxx14_std_exchange = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_VARIABLE_TEMPLATES +#include "boost_no_cxx14_var_templ.ipp" +#else +namespace boost_no_cxx14_variable_templates = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_FOLD_EXPRESSIONS +#include "boost_no_cxx17_fold_expressions.ipp" +#else +namespace boost_no_cxx17_fold_expressions = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_HDR_OPTIONAL +#include "boost_no_cxx17_hdr_optional.ipp" +#else +namespace boost_no_cxx17_hdr_optional = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_HDR_STRING_VIEW +#include "boost_no_cxx17_hdr_string_view.ipp" +#else +namespace boost_no_cxx17_hdr_string_view = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_HDR_VARIANT +#include "boost_no_cxx17_hdr_variant.ipp" +#else +namespace boost_no_cxx17_hdr_variant = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_IF_CONSTEXPR +#include "boost_no_cxx17_if_constexpr.ipp" +#else +namespace boost_no_cxx17_if_constexpr = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_INLINE_VARIABLES +#include "boost_no_cxx17_inline_variables.ipp" +#else +namespace boost_no_cxx17_inline_variables = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_ITERATOR_TRAITS +#include "boost_no_cxx17_iterator_traits.ipp" +#else +namespace boost_no_cxx17_iterator_traits = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_STD_APPLY +#include "boost_no_cxx17_std_apply.ipp" +#else +namespace boost_no_cxx17_std_apply = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_STD_INVOKE +#include "boost_no_cxx17_std_invoke.ipp" +#else +namespace boost_no_cxx17_std_invoke = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_STRUCTURED_BINDINGS +#include "boost_no_cxx17_structured_bindings.ipp" +#else +namespace boost_no_cxx17_structured_bindings = empty_boost; +#endif +#ifndef BOOST_NO_CXX98_BINDERS +#include "boost_no_cxx98_binders.ipp" +#else +namespace boost_no_cxx98_binders = empty_boost; +#endif +#ifndef BOOST_NO_CXX98_FUNCTION_BASE +#include "boost_no_cxx98_function_base.ipp" +#else +namespace boost_no_cxx98_function_base = empty_boost; +#endif +#ifndef BOOST_NO_CXX98_RANDOM_SHUFFLE +#include "boost_no_cxx98_random_shuffle.ipp" +#else +namespace boost_no_cxx98_random_shuffle = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_FUNCTIONAL +#include "boost_no_cxx_hdr_functional.ipp" +#else +namespace boost_no_cxx11_hdr_functional = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_DECLTYPE +#include "boost_no_decltype.ipp" +#else +namespace boost_no_cxx11_decltype = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_DECLTYPE_N3276 +#include "boost_no_decltype_n3276.ipp" +#else +namespace boost_no_cxx11_decltype_n3276 = empty_boost; +#endif +#ifndef BOOST_DEDUCED_TYPENAME +#include "boost_no_ded_typename.ipp" +#else +namespace boost_deduced_typename = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_DEFAULTED_FUNCTIONS +#include "boost_no_defaulted_functions.ipp" +#else +namespace boost_no_cxx11_defaulted_functions = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_DELETED_FUNCTIONS +#include "boost_no_deleted_functions.ipp" +#else +namespace boost_no_cxx11_deleted_functions = empty_boost; +#endif +#ifndef BOOST_NO_DEPENDENT_NESTED_DERIVATIONS +#include "boost_no_dep_nested_class.ipp" +#else +namespace boost_no_dependent_nested_derivations = empty_boost; +#endif +#ifndef BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS +#include "boost_no_dep_val_param.ipp" +#else +namespace boost_no_dependent_types_in_template_value_parameters = empty_boost; +#endif +#ifndef BOOST_NO_EXCEPTION_STD_NAMESPACE +#include "boost_no_excep_std.ipp" +#else +namespace boost_no_exception_std_namespace = empty_boost; +#endif +#ifndef BOOST_NO_EXCEPTIONS +#include "boost_no_exceptions.ipp" +#else +namespace boost_no_exceptions = empty_boost; +#endif +#ifndef BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS +#include "boost_no_exp_func_tem_arg.ipp" +#else +namespace boost_no_explicit_function_template_arguments = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS +#include "boost_no_explicit_cvt_ops.ipp" +#else +namespace boost_no_cxx11_explicit_conversion_operators = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_EXTERN_TEMPLATE +#include "boost_no_extern_template.ipp" +#else +namespace boost_no_cxx11_extern_template = empty_boost; +#endif +#ifndef BOOST_NO_FENV_H +#include "boost_no_fenv_h.ipp" +#else +namespace boost_no_fenv_h = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS +#include "boost_no_fixed_len_variadic_templates.ipp" +#else +namespace boost_no_cxx11_fixed_length_variadic_template_expansion_packs = empty_boost; +#endif +#ifndef BOOST_NO_FUNCTION_TEMPLATE_ORDERING +#include "boost_no_func_tmp_order.ipp" +#else +namespace boost_no_function_template_ordering = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS +#include "boost_no_function_template_default_args.ipp" +#else +namespace boost_no_cxx11_function_template_default_args = empty_boost; +#endif +#ifndef BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS +#include "boost_no_function_type_spec.ipp" +#else +namespace boost_no_function_type_specializations = empty_boost; +#endif +#ifndef BOOST_NO_MS_INT64_NUMERIC_LIMITS +#include "boost_no_i64_limits.ipp" +#else +namespace boost_no_ms_int64_numeric_limits = empty_boost; +#endif +#ifndef BOOST_NO_INCLASS_MEMBER_INITIALIZATION +#include "boost_no_inline_memb_init.ipp" +#else +namespace boost_no_inclass_member_initialization = empty_boost; +#endif +#ifndef BOOST_NO_INTEGRAL_INT64_T +#include "boost_no_integral_int64_t.ipp" +#else +namespace boost_no_integral_int64_t = empty_boost; +#endif +#ifndef BOOST_NO_IOSFWD +#include "boost_no_iosfwd.ipp" +#else +namespace boost_no_iosfwd = empty_boost; +#endif +#ifndef BOOST_NO_IOSTREAM +#include "boost_no_iostream.ipp" +#else +namespace boost_no_iostream = empty_boost; +#endif +#ifndef BOOST_NO_IS_ABSTRACT +#include "boost_no_is_abstract.ipp" +#else +namespace boost_no_is_abstract = empty_boost; +#endif +#ifndef BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS +#include "boost_no_iter_construct.ipp" +#else +namespace boost_no_templated_iterator_constructors = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_LAMBDAS +#include "boost_no_lambdas.ipp" +#else +namespace boost_no_cxx11_lambdas = empty_boost; +#endif +#ifndef BOOST_NO_LIMITS +#include "boost_no_limits.ipp" +#else +namespace boost_no_limits = empty_boost; +#endif +#ifndef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS +#include "boost_no_limits_const_exp.ipp" +#else +namespace boost_no_limits_compile_time_constants = empty_boost; +#endif +#ifndef BOOST_NO_LONG_LONG_NUMERIC_LIMITS +#include "boost_no_ll_limits.ipp" +#else +namespace boost_no_long_long_numeric_limits = empty_boost; +#endif +#ifndef BOOST_NO_LONG_LONG +#include "boost_no_long_long.ipp" +#else +namespace boost_no_long_long = empty_boost; +#endif +#ifndef BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS +#include "boost_no_mem_func_spec.ipp" +#else +namespace boost_no_member_function_specializations = empty_boost; +#endif +#ifndef BOOST_NO_MEMBER_TEMPLATE_KEYWORD +#include "boost_no_mem_tem_keyword.ipp" +#else +namespace boost_no_member_template_keyword = empty_boost; +#endif +#ifndef BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS +#include "boost_no_mem_tem_pnts.ipp" +#else +namespace boost_no_pointer_to_member_template_parameters = empty_boost; +#endif +#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#include "boost_no_mem_templ_frnds.ipp" +#else +namespace boost_no_member_template_friends = empty_boost; +#endif +#ifndef BOOST_NO_MEMBER_TEMPLATES +#include "boost_no_mem_templates.ipp" +#else +namespace boost_no_member_templates = empty_boost; +#endif +#ifndef BOOST_NO_NESTED_FRIENDSHIP +#include "boost_no_nested_friendship.ipp" +#else +namespace boost_no_nested_friendship = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_NOEXCEPT +#include "boost_no_noexcept.ipp" +#else +namespace boost_no_cxx11_noexcept = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_NULLPTR +#include "boost_no_nullptr.ipp" +#else +namespace boost_no_cxx11_nullptr = empty_boost; +#endif +#ifndef BOOST_NO_OPERATORS_IN_NAMESPACE +#include "boost_no_ops_in_namespace.ipp" +#else +namespace boost_no_operators_in_namespace = empty_boost; +#endif +#ifndef BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS +#include "boost_no_part_spec_def_args.ipp" +#else +namespace boost_no_partial_specialization_implicit_default_args = empty_boost; +#endif +#ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION +#include "boost_no_partial_spec.ipp" +#else +namespace boost_no_template_partial_specialization = empty_boost; +#endif +#ifndef BOOST_NO_PRIVATE_IN_AGGREGATE +#include "boost_no_priv_aggregate.ipp" +#else +namespace boost_no_private_in_aggregate = empty_boost; +#endif +#ifndef BOOST_NO_POINTER_TO_MEMBER_CONST +#include "boost_no_ptr_mem_const.ipp" +#else +namespace boost_no_pointer_to_member_const = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_RANGE_BASED_FOR +#include "boost_no_range_based_for.ipp" +#else +namespace boost_no_cxx11_range_based_for = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_RAW_LITERALS +#include "boost_no_raw_literals.ipp" +#else +namespace boost_no_cxx11_raw_literals = empty_boost; +#endif +#ifndef BOOST_NO_RESTRICT_REFERENCES +#include "boost_no_restrict_references.ipp" +#else +namespace boost_no_restrict_references = empty_boost; +#endif +#ifndef BOOST_NO_UNREACHABLE_RETURN_DETECTION +#include "boost_no_ret_det.ipp" +#else +namespace boost_no_unreachable_return_detection = empty_boost; +#endif +#ifndef BOOST_NO_RTTI +#include "boost_no_rtti.ipp" +#else +namespace boost_no_rtti = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES +#include "boost_no_rvalue_references.ipp" +#else +namespace boost_no_cxx11_rvalue_references = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_SCOPED_ENUMS +#include "boost_no_scoped_enums.ipp" +#else +namespace boost_no_cxx11_scoped_enums = empty_boost; +#endif +#ifndef BOOST_NO_SFINAE +#include "boost_no_sfinae.ipp" +#else +namespace boost_no_sfinae = empty_boost; +#endif +#ifndef BOOST_NO_SFINAE_EXPR +#include "boost_no_sfinae_expr.ipp" +#else +namespace boost_no_sfinae_expr = empty_boost; +#endif +#ifndef BOOST_NO_STRINGSTREAM +#include "boost_no_sstream.ipp" +#else +namespace boost_no_stringstream = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_STATIC_ASSERT +#include "boost_no_static_assert.ipp" +#else +namespace boost_no_cxx11_static_assert = empty_boost; +#endif +#ifndef BOOST_NO_STD_ALLOCATOR +#include "boost_no_std_allocator.ipp" +#else +namespace boost_no_std_allocator = empty_boost; +#endif +#ifndef BOOST_NO_STD_DISTANCE +#include "boost_no_std_distance.ipp" +#else +namespace boost_no_std_distance = empty_boost; +#endif +#ifndef BOOST_NO_STD_ITERATOR_TRAITS +#include "boost_no_std_iter_traits.ipp" +#else +namespace boost_no_std_iterator_traits = empty_boost; +#endif +#ifndef BOOST_NO_STD_ITERATOR +#include "boost_no_std_iterator.ipp" +#else +namespace boost_no_std_iterator = empty_boost; +#endif +#ifndef BOOST_NO_STD_LOCALE +#include "boost_no_std_locale.ipp" +#else +namespace boost_no_std_locale = empty_boost; +#endif +#ifndef BOOST_NO_STD_MESSAGES +#include "boost_no_std_messages.ipp" +#else +namespace boost_no_std_messages = empty_boost; +#endif +#ifndef BOOST_NO_STD_MIN_MAX +#include "boost_no_std_min_max.ipp" +#else +namespace boost_no_std_min_max = empty_boost; +#endif +#ifndef BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN +#include "boost_no_std_oi_assign.ipp" +#else +namespace boost_no_std_output_iterator_assign = empty_boost; +#endif +#ifndef BOOST_NO_STD_TYPEINFO +#include "boost_no_std_typeinfo.ipp" +#else +namespace boost_no_std_typeinfo = empty_boost; +#endif +#ifndef BOOST_NO_STD_USE_FACET +#include "boost_no_std_use_facet.ipp" +#else +namespace boost_no_std_use_facet = empty_boost; +#endif +#ifndef BOOST_NO_STD_WSTREAMBUF +#include "boost_no_std_wstreambuf.ipp" +#else +namespace boost_no_std_wstreambuf = empty_boost; +#endif +#ifndef BOOST_NO_STD_WSTRING +#include "boost_no_std_wstring.ipp" +#else +namespace boost_no_std_wstring = empty_boost; +#endif +#ifndef BOOST_NO_STDC_NAMESPACE +#include "boost_no_stdc_namespace.ipp" +#else +namespace boost_no_stdc_namespace = empty_boost; +#endif +#ifndef BOOST_NO_SWPRINTF +#include "boost_no_swprintf.ipp" +#else +namespace boost_no_swprintf = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS +#include "boost_no_tem_local_classes.ipp" +#else +namespace boost_no_cxx11_local_class_template_parameters = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_TEMPLATE_ALIASES +#include "boost_no_template_aliases.ipp" +#else +namespace boost_no_cxx11_template_aliases = empty_boost; +#endif +#ifndef BOOST_NO_TEMPLATED_IOSTREAMS +#include "boost_no_template_streams.ipp" +#else +namespace boost_no_templated_iostreams = empty_boost; +#endif +#ifndef BOOST_NO_TEMPLATE_TEMPLATES +#include "boost_no_template_template.ipp" +#else +namespace boost_no_template_templates = empty_boost; +#endif +#ifndef BOOST_NO_TWO_PHASE_NAME_LOOKUP +#include "boost_no_two_phase_lookup.ipp" +#else +namespace boost_no_two_phase_name_lookup = empty_boost; +#endif +#ifndef BOOST_NO_TYPEID +#include "boost_no_typeid.ipp" +#else +namespace boost_no_typeid = empty_boost; +#endif +#ifndef BOOST_NO_TYPENAME_WITH_CTOR +#include "boost_no_typename_with_ctor.ipp" +#else +namespace boost_no_typename_with_ctor = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_UNICODE_LITERALS +#include "boost_no_unicode_literals.ipp" +#else +namespace boost_no_cxx11_unicode_literals = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX +#include "boost_no_unified_init.ipp" +#else +namespace boost_no_cxx11_unified_initialization_syntax = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_UNRESTRICTED_UNION +#include "boost_no_cxx11_unrestricted_union.ipp" +#else +namespace boost_no_cxx11_unrestricted_union = empty_boost; +#endif +#ifndef BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL +#include "boost_no_using_breaks_adl.ipp" +#else +namespace boost_function_scope_using_declaration_breaks_adl = empty_boost; +#endif +#ifndef BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE +#include "boost_no_using_decl_overld.ipp" +#else +namespace boost_no_using_declaration_overloads_from_typename_base = empty_boost; +#endif +#ifndef BOOST_NO_USING_TEMPLATE +#include "boost_no_using_template.ipp" +#else +namespace boost_no_using_template = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_VARIADIC_MACROS +#include "boost_no_variadic_macros.ipp" +#else +namespace boost_no_cxx11_variadic_macros = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES +#include "boost_no_variadic_templates.ipp" +#else +namespace boost_no_cxx11_variadic_templates = empty_boost; +#endif +#ifndef BOOST_NO_VOID_RETURNS +#include "boost_no_void_returns.ipp" +#else +namespace boost_no_void_returns = empty_boost; +#endif +#ifndef BOOST_NO_INTRINSIC_WCHAR_T +#include "boost_no_wchar_t.ipp" +#else +namespace boost_no_intrinsic_wchar_t = empty_boost; +#endif + +#ifdef BOOST_HAS_TWO_ARG_USE_FACET +#include "boost_has_2arg_use_facet.ipp" +#else +namespace boost_has_two_arg_use_facet = empty_boost; +#endif +#ifdef BOOST_HAS_BETHREADS +#include "boost_has_bethreads.ipp" +#else +namespace boost_has_bethreads = empty_boost; +#endif +#ifdef BOOST_HAS_CLOCK_GETTIME +#include "boost_has_clock_gettime.ipp" +#else +namespace boost_has_clock_gettime = empty_boost; +#endif +#ifdef BOOST_HAS_PRAGMA_DETECT_MISMATCH +#include "boost_has_detect_mismatch.ipp" +#else +namespace boost_has_pragma_detect_mismatch = empty_boost; +#endif +#ifdef BOOST_HAS_DIRENT_H +#include "boost_has_dirent_h.ipp" +#else +namespace boost_has_dirent_h = empty_boost; +#endif +#ifdef BOOST_HAS_EXPM1 +#include "boost_has_expm1.ipp" +#else +namespace boost_has_expm1 = empty_boost; +#endif +#ifdef BOOST_HAS_FLOAT128 +#include "boost_has_float128.ipp" +#else +namespace boost_has_float128 = empty_boost; +#endif +#ifdef BOOST_HAS_FTIME +#include "boost_has_ftime.ipp" +#else +namespace boost_has_ftime = empty_boost; +#endif +#ifdef BOOST_HAS_GETSYSTEMTIMEASFILETIME +#include "boost_has_getsystemtimeasfiletime.ipp" +#else +namespace boost_has_getsystemtimeasfiletime = empty_boost; +#endif +#ifdef BOOST_HAS_GETTIMEOFDAY +#include "boost_has_gettimeofday.ipp" +#else +namespace boost_has_gettimeofday = empty_boost; +#endif +#ifdef BOOST_HAS_HASH +#include "boost_has_hash.ipp" +#else +namespace boost_has_hash = empty_boost; +#endif +#ifdef BOOST_HAS_INT128 +#include "boost_has_int128.ipp" +#else +namespace boost_has_int128 = empty_boost; +#endif +#ifdef BOOST_HAS_LOG1P +#include "boost_has_log1p.ipp" +#else +namespace boost_has_log1p = empty_boost; +#endif +#ifdef BOOST_HAS_LONG_LONG +#include "boost_has_long_long.ipp" +#else +namespace boost_has_long_long = empty_boost; +#endif +#ifdef BOOST_HAS_MACRO_USE_FACET +#include "boost_has_macro_use_facet.ipp" +#else +namespace boost_has_macro_use_facet = empty_boost; +#endif +#ifdef BOOST_HAS_MS_INT64 +#include "boost_has_ms_int64.ipp" +#else +namespace boost_has_ms_int64 = empty_boost; +#endif +#ifdef BOOST_HAS_NANOSLEEP +#include "boost_has_nanosleep.ipp" +#else +namespace boost_has_nanosleep = empty_boost; +#endif +#ifdef BOOST_HAS_NL_TYPES_H +#include "boost_has_nl_types_h.ipp" +#else +namespace boost_has_nl_types_h = empty_boost; +#endif +#ifdef BOOST_HAS_NRVO +#include "boost_has_nrvo.ipp" +#else +namespace boost_has_nrvo = empty_boost; +#endif +#ifdef BOOST_HAS_PARTIAL_STD_ALLOCATOR +#include "boost_has_part_alloc.ipp" +#else +namespace boost_has_partial_std_allocator = empty_boost; +#endif +#ifdef BOOST_HAS_PTHREAD_DELAY_NP +#include "boost_has_pthread_delay_np.ipp" +#else +namespace boost_has_pthread_delay_np = empty_boost; +#endif +#ifdef BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE +#include "boost_has_pthread_ma_st.ipp" +#else +namespace boost_has_pthread_mutexattr_settype = empty_boost; +#endif +#ifdef BOOST_HAS_PTHREAD_YIELD +#include "boost_has_pthread_yield.ipp" +#else +namespace boost_has_pthread_yield = empty_boost; +#endif +#ifdef BOOST_HAS_PTHREADS +#include "boost_has_pthreads.ipp" +#else +namespace boost_has_pthreads = empty_boost; +#endif +#ifdef BOOST_HAS_RVALUE_REFS +#include "boost_has_rvalue_refs.ipp" +#else +namespace boost_has_rvalue_refs = empty_boost; +#endif +#ifdef BOOST_HAS_SCHED_YIELD +#include "boost_has_sched_yield.ipp" +#else +namespace boost_has_sched_yield = empty_boost; +#endif +#ifdef BOOST_HAS_SGI_TYPE_TRAITS +#include "boost_has_sgi_type_traits.ipp" +#else +namespace boost_has_sgi_type_traits = empty_boost; +#endif +#ifdef BOOST_HAS_SIGACTION +#include "boost_has_sigaction.ipp" +#else +namespace boost_has_sigaction = empty_boost; +#endif +#ifdef BOOST_HAS_SLIST +#include "boost_has_slist.ipp" +#else +namespace boost_has_slist = empty_boost; +#endif +#ifdef BOOST_HAS_STATIC_ASSERT +#include "boost_has_static_assert.ipp" +#else +namespace boost_has_static_assert = empty_boost; +#endif +#ifdef BOOST_HAS_STDINT_H +#include "boost_has_stdint_h.ipp" +#else +namespace boost_has_stdint_h = empty_boost; +#endif +#ifdef BOOST_HAS_STLP_USE_FACET +#include "boost_has_stlp_use_facet.ipp" +#else +namespace boost_has_stlp_use_facet = empty_boost; +#endif +#ifdef BOOST_HAS_UNISTD_H +#include "boost_has_unistd_h.ipp" +#else +namespace boost_has_unistd_h = empty_boost; +#endif +#ifdef BOOST_HAS_VARIADIC_TMPL +#include "boost_has_variadic_tmpl.ipp" +#else +namespace boost_has_variadic_tmpl = empty_boost; +#endif +#ifdef BOOST_MSVC6_MEMBER_TEMPLATES +#include "boost_has_vc6_mem_templ.ipp" +#else +namespace boost_msvc6_member_templates = empty_boost; +#endif +#ifdef BOOST_MSVC_STD_ITERATOR +#include "boost_has_vc_iterator.ipp" +#else +namespace boost_msvc_std_iterator = empty_boost; +#endif +#ifdef BOOST_HAS_WINTHREADS +#include "boost_has_winthreads.ipp" +#else +namespace boost_has_winthreads = empty_boost; +#endif + +int main( int, char *[] ) +{ + if(0 != boost_has_two_arg_use_facet::test()) + { + std::cerr << "Failed test for BOOST_HAS_TWO_ARG_USE_FACET at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_bethreads::test()) + { + std::cerr << "Failed test for BOOST_HAS_BETHREADS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_clock_gettime::test()) + { + std::cerr << "Failed test for BOOST_HAS_CLOCK_GETTIME at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_pragma_detect_mismatch::test()) + { + std::cerr << "Failed test for BOOST_HAS_PRAGMA_DETECT_MISMATCH at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_dirent_h::test()) + { + std::cerr << "Failed test for BOOST_HAS_DIRENT_H at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_expm1::test()) + { + std::cerr << "Failed test for BOOST_HAS_EXPM1 at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_float128::test()) + { + std::cerr << "Failed test for BOOST_HAS_FLOAT128 at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_ftime::test()) + { + std::cerr << "Failed test for BOOST_HAS_FTIME at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_getsystemtimeasfiletime::test()) + { + std::cerr << "Failed test for BOOST_HAS_GETSYSTEMTIMEASFILETIME at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_gettimeofday::test()) + { + std::cerr << "Failed test for BOOST_HAS_GETTIMEOFDAY at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_hash::test()) + { + std::cerr << "Failed test for BOOST_HAS_HASH at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_int128::test()) + { + std::cerr << "Failed test for BOOST_HAS_INT128 at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_log1p::test()) + { + std::cerr << "Failed test for BOOST_HAS_LOG1P at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_long_long::test()) + { + std::cerr << "Failed test for BOOST_HAS_LONG_LONG at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_macro_use_facet::test()) + { + std::cerr << "Failed test for BOOST_HAS_MACRO_USE_FACET at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_ms_int64::test()) + { + std::cerr << "Failed test for BOOST_HAS_MS_INT64 at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_nanosleep::test()) + { + std::cerr << "Failed test for BOOST_HAS_NANOSLEEP at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_nl_types_h::test()) + { + std::cerr << "Failed test for BOOST_HAS_NL_TYPES_H at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_nrvo::test()) + { + std::cerr << "Failed test for BOOST_HAS_NRVO at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_partial_std_allocator::test()) + { + std::cerr << "Failed test for BOOST_HAS_PARTIAL_STD_ALLOCATOR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_pthread_delay_np::test()) + { + std::cerr << "Failed test for BOOST_HAS_PTHREAD_DELAY_NP at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_pthread_mutexattr_settype::test()) + { + std::cerr << "Failed test for BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_pthread_yield::test()) + { + std::cerr << "Failed test for BOOST_HAS_PTHREAD_YIELD at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_pthreads::test()) + { + std::cerr << "Failed test for BOOST_HAS_PTHREADS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_rvalue_refs::test()) + { + std::cerr << "Failed test for BOOST_HAS_RVALUE_REFS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_sched_yield::test()) + { + std::cerr << "Failed test for BOOST_HAS_SCHED_YIELD at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_sgi_type_traits::test()) + { + std::cerr << "Failed test for BOOST_HAS_SGI_TYPE_TRAITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_sigaction::test()) + { + std::cerr << "Failed test for BOOST_HAS_SIGACTION at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_slist::test()) + { + std::cerr << "Failed test for BOOST_HAS_SLIST at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_static_assert::test()) + { + std::cerr << "Failed test for BOOST_HAS_STATIC_ASSERT at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_stdint_h::test()) + { + std::cerr << "Failed test for BOOST_HAS_STDINT_H at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_stlp_use_facet::test()) + { + std::cerr << "Failed test for BOOST_HAS_STLP_USE_FACET at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_unistd_h::test()) + { + std::cerr << "Failed test for BOOST_HAS_UNISTD_H at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_variadic_tmpl::test()) + { + std::cerr << "Failed test for BOOST_HAS_VARIADIC_TMPL at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_msvc6_member_templates::test()) + { + std::cerr << "Failed test for BOOST_MSVC6_MEMBER_TEMPLATES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_msvc_std_iterator::test()) + { + std::cerr << "Failed test for BOOST_MSVC_STD_ITERATOR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_winthreads::test()) + { + std::cerr << "Failed test for BOOST_HAS_WINTHREADS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_adl_barrier::test()) + { + std::cerr << "Failed test for BOOST_NO_ADL_BARRIER at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_argument_dependent_lookup::test()) + { + std::cerr << "Failed test for BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_array_type_specializations::test()) + { + std::cerr << "Failed test for BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_auto_declarations::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_AUTO_DECLARATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_auto_multideclarations::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_auto_ptr::test()) + { + std::cerr << "Failed test for BOOST_NO_AUTO_PTR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_bcb_partial_specialization_bug::test()) + { + std::cerr << "Failed test for BOOST_BCB_PARTIAL_SPECIALIZATION_BUG at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_char16_t::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_CHAR16_T at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_char32_t::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_CHAR32_T at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_complete_value_initialization::test()) + { + std::cerr << "Failed test for BOOST_NO_COMPLETE_VALUE_INITIALIZATION at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_constexpr::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_CONSTEXPR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_ctype_functions::test()) + { + std::cerr << "Failed test for BOOST_NO_CTYPE_FUNCTIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cv_specializations::test()) + { + std::cerr << "Failed test for BOOST_NO_CV_SPECIALIZATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cv_void_specializations::test()) + { + std::cerr << "Failed test for BOOST_NO_CV_VOID_SPECIALIZATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cwchar::test()) + { + std::cerr << "Failed test for BOOST_NO_CWCHAR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cwctype::test()) + { + std::cerr << "Failed test for BOOST_NO_CWCTYPE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_addressof::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_ADDRESSOF at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_alignas::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_ALIGNAS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_allocator::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_ALLOCATOR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_atomic_smart_ptr::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_ATOMIC_SMART_PTR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_defaulted_moves::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_DEFAULTED_MOVES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_exception::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_EXCEPTION at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_final::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_FINAL at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_array::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_ARRAY at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_atomic::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_ATOMIC at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_chrono::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_CHRONO at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_codecvt::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_CODECVT at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_condition_variable::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_CONDITION_VARIABLE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_forward_list::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_FORWARD_LIST at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_future::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_FUTURE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_initializer_list::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_INITIALIZER_LIST at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_mutex::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_MUTEX at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_random::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_RANDOM at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_ratio::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_RATIO at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_regex::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_REGEX at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_system_error::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_SYSTEM_ERROR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_thread::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_THREAD at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_tuple::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_TUPLE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_type_traits::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_TYPE_TRAITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_typeindex::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_TYPEINDEX at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_unordered_map::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_UNORDERED_MAP at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_unordered_set::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_UNORDERED_SET at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_inline_namespaces::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_INLINE_NAMESPACES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_non_public_defaulted_functions::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_numeric_limits::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_NUMERIC_LIMITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_pointer_traits::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_POINTER_TRAITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_ref_qualifiers::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_REF_QUALIFIERS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_sfinae_expr::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_SFINAE_EXPR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_smart_ptr::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_SMART_PTR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_std_align::test()) + { + 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; + ++error_count; + } + if(0 != boost_no_cxx11_user_defined_literals::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_USER_DEFINED_LITERALS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_binary_literals::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_BINARY_LITERALS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_constexpr::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_CONSTEXPR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_decltype_auto::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_DECLTYPE_AUTO at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_digit_separators::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_DIGIT_SEPARATORS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_generic_lambdas::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_GENERIC_LAMBDAS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_hdr_shared_mutex::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_HDR_SHARED_MUTEX at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_initialized_lambda_captures::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_aggregate_nsdmi::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_AGGREGATE_NSDMI at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_return_type_deduction::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_std_exchange::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_STD_EXCHANGE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_variable_templates::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_VARIABLE_TEMPLATES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_fold_expressions::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_FOLD_EXPRESSIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_hdr_optional::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_HDR_OPTIONAL at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_hdr_string_view::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_HDR_STRING_VIEW at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_hdr_variant::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_HDR_VARIANT at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_if_constexpr::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_IF_CONSTEXPR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_inline_variables::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_INLINE_VARIABLES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_iterator_traits::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_ITERATOR_TRAITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_std_apply::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_STD_APPLY at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_std_invoke::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_STD_INVOKE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_structured_bindings::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_STRUCTURED_BINDINGS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx98_binders::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX98_BINDERS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx98_function_base::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX98_FUNCTION_BASE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx98_random_shuffle::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX98_RANDOM_SHUFFLE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_functional::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_FUNCTIONAL at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_decltype::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_DECLTYPE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_decltype_n3276::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_DECLTYPE_N3276 at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_deduced_typename::test()) + { + std::cerr << "Failed test for BOOST_DEDUCED_TYPENAME at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_defaulted_functions::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_DEFAULTED_FUNCTIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_deleted_functions::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_DELETED_FUNCTIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_dependent_nested_derivations::test()) + { + std::cerr << "Failed test for BOOST_NO_DEPENDENT_NESTED_DERIVATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_dependent_types_in_template_value_parameters::test()) + { + std::cerr << "Failed test for BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_exception_std_namespace::test()) + { + std::cerr << "Failed test for BOOST_NO_EXCEPTION_STD_NAMESPACE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_exceptions::test()) + { + std::cerr << "Failed test for BOOST_NO_EXCEPTIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_explicit_function_template_arguments::test()) + { + std::cerr << "Failed test for BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_explicit_conversion_operators::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_extern_template::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_EXTERN_TEMPLATE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_fenv_h::test()) + { + std::cerr << "Failed test for BOOST_NO_FENV_H at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_fixed_length_variadic_template_expansion_packs::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_function_template_ordering::test()) + { + std::cerr << "Failed test for BOOST_NO_FUNCTION_TEMPLATE_ORDERING at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_function_template_default_args::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_function_type_specializations::test()) + { + std::cerr << "Failed test for BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_ms_int64_numeric_limits::test()) + { + std::cerr << "Failed test for BOOST_NO_MS_INT64_NUMERIC_LIMITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_inclass_member_initialization::test()) + { + std::cerr << "Failed test for BOOST_NO_INCLASS_MEMBER_INITIALIZATION at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_integral_int64_t::test()) + { + std::cerr << "Failed test for BOOST_NO_INTEGRAL_INT64_T at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_iosfwd::test()) + { + std::cerr << "Failed test for BOOST_NO_IOSFWD at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_iostream::test()) + { + std::cerr << "Failed test for BOOST_NO_IOSTREAM at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_is_abstract::test()) + { + std::cerr << "Failed test for BOOST_NO_IS_ABSTRACT at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_templated_iterator_constructors::test()) + { + std::cerr << "Failed test for BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_lambdas::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_LAMBDAS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_limits::test()) + { + std::cerr << "Failed test for BOOST_NO_LIMITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_limits_compile_time_constants::test()) + { + std::cerr << "Failed test for BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_long_long_numeric_limits::test()) + { + std::cerr << "Failed test for BOOST_NO_LONG_LONG_NUMERIC_LIMITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_long_long::test()) + { + std::cerr << "Failed test for BOOST_NO_LONG_LONG at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_member_function_specializations::test()) + { + std::cerr << "Failed test for BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_member_template_keyword::test()) + { + std::cerr << "Failed test for BOOST_NO_MEMBER_TEMPLATE_KEYWORD at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_pointer_to_member_template_parameters::test()) + { + std::cerr << "Failed test for BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_member_template_friends::test()) + { + std::cerr << "Failed test for BOOST_NO_MEMBER_TEMPLATE_FRIENDS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_member_templates::test()) + { + std::cerr << "Failed test for BOOST_NO_MEMBER_TEMPLATES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_nested_friendship::test()) + { + std::cerr << "Failed test for BOOST_NO_NESTED_FRIENDSHIP at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_noexcept::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_NOEXCEPT at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_nullptr::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_NULLPTR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_operators_in_namespace::test()) + { + std::cerr << "Failed test for BOOST_NO_OPERATORS_IN_NAMESPACE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_partial_specialization_implicit_default_args::test()) + { + std::cerr << "Failed test for BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_template_partial_specialization::test()) + { + std::cerr << "Failed test for BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_private_in_aggregate::test()) + { + std::cerr << "Failed test for BOOST_NO_PRIVATE_IN_AGGREGATE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_pointer_to_member_const::test()) + { + std::cerr << "Failed test for BOOST_NO_POINTER_TO_MEMBER_CONST at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_range_based_for::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_RANGE_BASED_FOR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_raw_literals::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_RAW_LITERALS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_restrict_references::test()) + { + std::cerr << "Failed test for BOOST_NO_RESTRICT_REFERENCES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_unreachable_return_detection::test()) + { + std::cerr << "Failed test for BOOST_NO_UNREACHABLE_RETURN_DETECTION at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_rtti::test()) + { + std::cerr << "Failed test for BOOST_NO_RTTI at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_rvalue_references::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_RVALUE_REFERENCES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_scoped_enums::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_SCOPED_ENUMS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_sfinae::test()) + { + std::cerr << "Failed test for BOOST_NO_SFINAE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_sfinae_expr::test()) + { + std::cerr << "Failed test for BOOST_NO_SFINAE_EXPR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_stringstream::test()) + { + std::cerr << "Failed test for BOOST_NO_STRINGSTREAM at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_static_assert::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_STATIC_ASSERT at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_allocator::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_ALLOCATOR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_distance::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_DISTANCE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_iterator_traits::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_ITERATOR_TRAITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_iterator::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_ITERATOR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_locale::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_LOCALE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_messages::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_MESSAGES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_min_max::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_MIN_MAX at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_output_iterator_assign::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_typeinfo::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_TYPEINFO at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_use_facet::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_USE_FACET at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_wstreambuf::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_WSTREAMBUF at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_wstring::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_WSTRING at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_stdc_namespace::test()) + { + std::cerr << "Failed test for BOOST_NO_STDC_NAMESPACE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_swprintf::test()) + { + std::cerr << "Failed test for BOOST_NO_SWPRINTF at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_local_class_template_parameters::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_template_aliases::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_TEMPLATE_ALIASES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_templated_iostreams::test()) + { + std::cerr << "Failed test for BOOST_NO_TEMPLATED_IOSTREAMS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_template_templates::test()) + { + std::cerr << "Failed test for BOOST_NO_TEMPLATE_TEMPLATES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_two_phase_name_lookup::test()) + { + std::cerr << "Failed test for BOOST_NO_TWO_PHASE_NAME_LOOKUP at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_typeid::test()) + { + std::cerr << "Failed test for BOOST_NO_TYPEID at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_typename_with_ctor::test()) + { + std::cerr << "Failed test for BOOST_NO_TYPENAME_WITH_CTOR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_unicode_literals::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_UNICODE_LITERALS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_unified_initialization_syntax::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_unrestricted_union::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_UNRESTRICTED_UNION at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_function_scope_using_declaration_breaks_adl::test()) + { + std::cerr << "Failed test for BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_using_declaration_overloads_from_typename_base::test()) + { + std::cerr << "Failed test for BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_using_template::test()) + { + std::cerr << "Failed test for BOOST_NO_USING_TEMPLATE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_variadic_macros::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_VARIADIC_MACROS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_variadic_templates::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_VARIADIC_TEMPLATES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_void_returns::test()) + { + std::cerr << "Failed test for BOOST_NO_VOID_RETURNS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_intrinsic_wchar_t::test()) + { + std::cerr << "Failed test for BOOST_NO_INTRINSIC_WCHAR_T at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + return error_count; +} + diff --git a/src/boost/libs/config/test/config_test.cu b/src/boost/libs/config/test/config_test.cu new file mode 100644 index 000000000..c7e4e8a60 --- /dev/null +++ b/src/boost/libs/config/test/config_test.cu @@ -0,0 +1,1971 @@ +// This file was automatically generated on Wed Apr 18 20:03:40 2018 +// 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 config setup +// This file should compile, if it does not then +// one or more macros need to be defined. +// see boost_*.ipp for more details + +// Do not edit this file, it was generated automatically by + +#include <boost/config.hpp> +#include <iostream> +#include "test.hpp" + +int error_count = 0; + +#ifndef BOOST_NO_ADL_BARRIER +#include "boost_no_adl_barrier.ipp" +#else +namespace boost_no_adl_barrier = empty_boost; +#endif +#ifndef BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP +#include "boost_no_arg_dep_lookup.ipp" +#else +namespace boost_no_argument_dependent_lookup = empty_boost; +#endif +#ifndef BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS +#include "boost_no_array_type_spec.ipp" +#else +namespace boost_no_array_type_specializations = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_AUTO_DECLARATIONS +#include "boost_no_auto_declarations.ipp" +#else +namespace boost_no_cxx11_auto_declarations = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS +#include "boost_no_auto_multidecl.ipp" +#else +namespace boost_no_cxx11_auto_multideclarations = empty_boost; +#endif +#ifndef BOOST_NO_AUTO_PTR +#include "boost_no_auto_ptr.ipp" +#else +namespace boost_no_auto_ptr = empty_boost; +#endif +#ifndef BOOST_BCB_PARTIAL_SPECIALIZATION_BUG +#include "boost_no_bcb_partial_spec.ipp" +#else +namespace boost_bcb_partial_specialization_bug = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_CHAR16_T +#include "boost_no_char16_t.ipp" +#else +namespace boost_no_cxx11_char16_t = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_CHAR32_T +#include "boost_no_char32_t.ipp" +#else +namespace boost_no_cxx11_char32_t = empty_boost; +#endif +#ifndef BOOST_NO_COMPLETE_VALUE_INITIALIZATION +#include "boost_no_com_value_init.ipp" +#else +namespace boost_no_complete_value_initialization = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_CONSTEXPR +#include "boost_no_constexpr.ipp" +#else +namespace boost_no_cxx11_constexpr = empty_boost; +#endif +#ifndef BOOST_NO_CTYPE_FUNCTIONS +#include "boost_no_ctype_functions.ipp" +#else +namespace boost_no_ctype_functions = empty_boost; +#endif +#ifndef BOOST_NO_CV_SPECIALIZATIONS +#include "boost_no_cv_spec.ipp" +#else +namespace boost_no_cv_specializations = empty_boost; +#endif +#ifndef BOOST_NO_CV_VOID_SPECIALIZATIONS +#include "boost_no_cv_void_spec.ipp" +#else +namespace boost_no_cv_void_specializations = empty_boost; +#endif +#ifndef BOOST_NO_CWCHAR +#include "boost_no_cwchar.ipp" +#else +namespace boost_no_cwchar = empty_boost; +#endif +#ifndef BOOST_NO_CWCTYPE +#include "boost_no_cwctype.ipp" +#else +namespace boost_no_cwctype = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_ADDRESSOF +#include "boost_no_cxx11_addressof.ipp" +#else +namespace boost_no_cxx11_addressof = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_ALIGNAS +#include "boost_no_cxx11_alignas.ipp" +#else +namespace boost_no_cxx11_alignas = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_ALLOCATOR +#include "boost_no_cxx11_allocator.ipp" +#else +namespace boost_no_cxx11_allocator = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_ATOMIC_SMART_PTR +#include "boost_no_cxx11_atomic_sp.ipp" +#else +namespace boost_no_cxx11_atomic_smart_ptr = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_DEFAULTED_MOVES +#include "boost_no_cxx11_defaulted_moves.ipp" +#else +namespace boost_no_cxx11_defaulted_moves = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_FINAL +#include "boost_no_cxx11_final.ipp" +#else +namespace boost_no_cxx11_final = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_ARRAY +#include "boost_no_cxx11_hdr_array.ipp" +#else +namespace boost_no_cxx11_hdr_array = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_ATOMIC +#include "boost_no_cxx11_hdr_atomic.ipp" +#else +namespace boost_no_cxx11_hdr_atomic = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_CHRONO +#include "boost_no_cxx11_hdr_chrono.ipp" +#else +namespace boost_no_cxx11_hdr_chrono = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_CODECVT +#include "boost_no_cxx11_hdr_codecvt.ipp" +#else +namespace boost_no_cxx11_hdr_codecvt = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_CONDITION_VARIABLE +#include "boost_no_cxx11_hdr_condition_variable.ipp" +#else +namespace boost_no_cxx11_hdr_condition_variable = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_FORWARD_LIST +#include "boost_no_cxx11_hdr_forward_list.ipp" +#else +namespace boost_no_cxx11_hdr_forward_list = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_FUTURE +#include "boost_no_cxx11_hdr_future.ipp" +#else +namespace boost_no_cxx11_hdr_future = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_INITIALIZER_LIST +#include "boost_no_cxx11_hdr_initializer_list.ipp" +#else +namespace boost_no_cxx11_hdr_initializer_list = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_MUTEX +#include "boost_no_cxx11_hdr_mutex.ipp" +#else +namespace boost_no_cxx11_hdr_mutex = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_RANDOM +#include "boost_no_cxx11_hdr_random.ipp" +#else +namespace boost_no_cxx11_hdr_random = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_RATIO +#include "boost_no_cxx11_hdr_ratio.ipp" +#else +namespace boost_no_cxx11_hdr_ratio = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_REGEX +#include "boost_no_cxx11_hdr_regex.ipp" +#else +namespace boost_no_cxx11_hdr_regex = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_SYSTEM_ERROR +#include "boost_no_cxx11_hdr_system_error.ipp" +#else +namespace boost_no_cxx11_hdr_system_error = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_THREAD +#include "boost_no_cxx11_hdr_thread.ipp" +#else +namespace boost_no_cxx11_hdr_thread = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_TUPLE +#include "boost_no_cxx11_hdr_tuple.ipp" +#else +namespace boost_no_cxx11_hdr_tuple = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_TYPE_TRAITS +#include "boost_no_cxx11_hdr_type_traits.ipp" +#else +namespace boost_no_cxx11_hdr_type_traits = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_TYPEINDEX +#include "boost_no_cxx11_hdr_typeindex.ipp" +#else +namespace boost_no_cxx11_hdr_typeindex = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_UNORDERED_MAP +#include "boost_no_cxx11_hdr_unordered_map.ipp" +#else +namespace boost_no_cxx11_hdr_unordered_map = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_UNORDERED_SET +#include "boost_no_cxx11_hdr_unordered_set.ipp" +#else +namespace boost_no_cxx11_hdr_unordered_set = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_INLINE_NAMESPACES +#include "boost_no_cxx11_inline_namespaces.ipp" +#else +namespace boost_no_cxx11_inline_namespaces = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS +#include "boost_no_cxx11_non_pub_def_fun.ipp" +#else +namespace boost_no_cxx11_non_public_defaulted_functions = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_NUMERIC_LIMITS +#include "boost_no_cxx11_numeric_limits.ipp" +#else +namespace boost_no_cxx11_numeric_limits = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_POINTER_TRAITS +#include "boost_no_cxx11_pointer_traits.ipp" +#else +namespace boost_no_cxx11_pointer_traits = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_REF_QUALIFIERS +#include "boost_no_cxx11_ref_qualifiers.ipp" +#else +namespace boost_no_cxx11_ref_qualifiers = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_SFINAE_EXPR +#include "boost_no_cxx11_sfinae_expr.ipp" +#else +namespace boost_no_cxx11_sfinae_expr = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_SMART_PTR +#include "boost_no_cxx11_smart_ptr.ipp" +#else +namespace boost_no_cxx11_smart_ptr = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_STD_ALIGN +#include "boost_no_cxx11_std_align.ipp" +#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 +namespace boost_no_cxx11_trailing_result_types = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_USER_DEFINED_LITERALS +#include "boost_no_cxx11_user_lit.ipp" +#else +namespace boost_no_cxx11_user_defined_literals = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_BINARY_LITERALS +#include "boost_no_cxx14_binary_literals.ipp" +#else +namespace boost_no_cxx14_binary_literals = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_CONSTEXPR +#include "boost_no_cxx14_constexpr.ipp" +#else +namespace boost_no_cxx14_constexpr = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_DECLTYPE_AUTO +#include "boost_no_cxx14_decltype_auto.ipp" +#else +namespace boost_no_cxx14_decltype_auto = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_DIGIT_SEPARATORS +#include "boost_no_cxx14_digit_separator.ipp" +#else +namespace boost_no_cxx14_digit_separators = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_GENERIC_LAMBDAS +#include "boost_no_cxx14_generic_lambda.ipp" +#else +namespace boost_no_cxx14_generic_lambdas = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_HDR_SHARED_MUTEX +#include "boost_no_cxx14_hdr_shared_mutex.ipp" +#else +namespace boost_no_cxx14_hdr_shared_mutex = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES +#include "boost_no_cxx14_lambda_capture.ipp" +#else +namespace boost_no_cxx14_initialized_lambda_captures = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_AGGREGATE_NSDMI +#include "boost_no_cxx14_member_init.ipp" +#else +namespace boost_no_cxx14_aggregate_nsdmi = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION +#include "boost_no_cxx14_return_type_ded.ipp" +#else +namespace boost_no_cxx14_return_type_deduction = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_STD_EXCHANGE +#include "boost_no_cxx14_std_exchange.ipp" +#else +namespace boost_no_cxx14_std_exchange = empty_boost; +#endif +#ifndef BOOST_NO_CXX14_VARIABLE_TEMPLATES +#include "boost_no_cxx14_var_templ.ipp" +#else +namespace boost_no_cxx14_variable_templates = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_FOLD_EXPRESSIONS +#include "boost_no_cxx17_fold_expressions.ipp" +#else +namespace boost_no_cxx17_fold_expressions = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_IF_CONSTEXPR +#include "boost_no_cxx17_if_constexpr.ipp" +#else +namespace boost_no_cxx17_if_constexpr = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_INLINE_VARIABLES +#include "boost_no_cxx17_inline_variables.ipp" +#else +namespace boost_no_cxx17_inline_variables = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_ITERATOR_TRAITS +#include "boost_no_cxx17_iterator_traits.ipp" +#else +namespace boost_no_cxx17_iterator_traits = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_STD_APPLY +#include "boost_no_cxx17_std_apply.ipp" +#else +namespace boost_no_cxx17_std_apply = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_STD_INVOKE +#include "boost_no_cxx17_std_invoke.ipp" +#else +namespace boost_no_cxx17_std_invoke = empty_boost; +#endif +#ifndef BOOST_NO_CXX17_STRUCTURED_BINDINGS +#include "boost_no_cxx17_structured_bindings.ipp" +#else +namespace boost_no_cxx17_structured_bindings = empty_boost; +#endif +#ifndef BOOST_NO_CXX98_BINDERS +#include "boost_no_cxx98_binders.ipp" +#else +namespace boost_no_cxx98_binders = empty_boost; +#endif +#ifndef BOOST_NO_CXX98_FUNCTION_BASE +#include "boost_no_cxx98_function_base.ipp" +#else +namespace boost_no_cxx98_function_base = empty_boost; +#endif +#ifndef BOOST_NO_CXX98_RANDOM_SHUFFLE +#include "boost_no_cxx98_random_shuffle.ipp" +#else +namespace boost_no_cxx98_random_shuffle = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_HDR_FUNCTIONAL +#include "boost_no_cxx_hdr_functional.ipp" +#else +namespace boost_no_cxx11_hdr_functional = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_DECLTYPE +#include "boost_no_decltype.ipp" +#else +namespace boost_no_cxx11_decltype = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_DECLTYPE_N3276 +#include "boost_no_decltype_n3276.ipp" +#else +namespace boost_no_cxx11_decltype_n3276 = empty_boost; +#endif +#ifndef BOOST_DEDUCED_TYPENAME +#include "boost_no_ded_typename.ipp" +#else +namespace boost_deduced_typename = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_DEFAULTED_FUNCTIONS +#include "boost_no_defaulted_functions.ipp" +#else +namespace boost_no_cxx11_defaulted_functions = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_DELETED_FUNCTIONS +#include "boost_no_deleted_functions.ipp" +#else +namespace boost_no_cxx11_deleted_functions = empty_boost; +#endif +#ifndef BOOST_NO_DEPENDENT_NESTED_DERIVATIONS +#include "boost_no_dep_nested_class.ipp" +#else +namespace boost_no_dependent_nested_derivations = empty_boost; +#endif +#ifndef BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS +#include "boost_no_dep_val_param.ipp" +#else +namespace boost_no_dependent_types_in_template_value_parameters = empty_boost; +#endif +#ifndef BOOST_NO_EXCEPTION_STD_NAMESPACE +#include "boost_no_excep_std.ipp" +#else +namespace boost_no_exception_std_namespace = empty_boost; +#endif +#ifndef BOOST_NO_EXCEPTIONS +#include "boost_no_exceptions.ipp" +#else +namespace boost_no_exceptions = empty_boost; +#endif +#ifndef BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS +#include "boost_no_exp_func_tem_arg.ipp" +#else +namespace boost_no_explicit_function_template_arguments = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS +#include "boost_no_explicit_cvt_ops.ipp" +#else +namespace boost_no_cxx11_explicit_conversion_operators = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_EXTERN_TEMPLATE +#include "boost_no_extern_template.ipp" +#else +namespace boost_no_cxx11_extern_template = empty_boost; +#endif +#ifndef BOOST_NO_FENV_H +#include "boost_no_fenv_h.ipp" +#else +namespace boost_no_fenv_h = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS +#include "boost_no_fixed_len_variadic_templates.ipp" +#else +namespace boost_no_cxx11_fixed_length_variadic_template_expansion_packs = empty_boost; +#endif +#ifndef BOOST_NO_FUNCTION_TEMPLATE_ORDERING +#include "boost_no_func_tmp_order.ipp" +#else +namespace boost_no_function_template_ordering = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS +#include "boost_no_function_template_default_args.ipp" +#else +namespace boost_no_cxx11_function_template_default_args = empty_boost; +#endif +#ifndef BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS +#include "boost_no_function_type_spec.ipp" +#else +namespace boost_no_function_type_specializations = empty_boost; +#endif +#ifndef BOOST_NO_MS_INT64_NUMERIC_LIMITS +#include "boost_no_i64_limits.ipp" +#else +namespace boost_no_ms_int64_numeric_limits = empty_boost; +#endif +#ifndef BOOST_NO_INCLASS_MEMBER_INITIALIZATION +#include "boost_no_inline_memb_init.ipp" +#else +namespace boost_no_inclass_member_initialization = empty_boost; +#endif +#ifndef BOOST_NO_INTEGRAL_INT64_T +#include "boost_no_integral_int64_t.ipp" +#else +namespace boost_no_integral_int64_t = empty_boost; +#endif +#ifndef BOOST_NO_IOSFWD +#include "boost_no_iosfwd.ipp" +#else +namespace boost_no_iosfwd = empty_boost; +#endif +#ifndef BOOST_NO_IOSTREAM +#include "boost_no_iostream.ipp" +#else +namespace boost_no_iostream = empty_boost; +#endif +#ifndef BOOST_NO_IS_ABSTRACT +#include "boost_no_is_abstract.ipp" +#else +namespace boost_no_is_abstract = empty_boost; +#endif +#ifndef BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS +#include "boost_no_iter_construct.ipp" +#else +namespace boost_no_templated_iterator_constructors = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_LAMBDAS +#include "boost_no_lambdas.ipp" +#else +namespace boost_no_cxx11_lambdas = empty_boost; +#endif +#ifndef BOOST_NO_LIMITS +#include "boost_no_limits.ipp" +#else +namespace boost_no_limits = empty_boost; +#endif +#ifndef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS +#include "boost_no_limits_const_exp.ipp" +#else +namespace boost_no_limits_compile_time_constants = empty_boost; +#endif +#ifndef BOOST_NO_LONG_LONG_NUMERIC_LIMITS +#include "boost_no_ll_limits.ipp" +#else +namespace boost_no_long_long_numeric_limits = empty_boost; +#endif +#ifndef BOOST_NO_LONG_LONG +#include "boost_no_long_long.ipp" +#else +namespace boost_no_long_long = empty_boost; +#endif +#ifndef BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS +#include "boost_no_mem_func_spec.ipp" +#else +namespace boost_no_member_function_specializations = empty_boost; +#endif +#ifndef BOOST_NO_MEMBER_TEMPLATE_KEYWORD +#include "boost_no_mem_tem_keyword.ipp" +#else +namespace boost_no_member_template_keyword = empty_boost; +#endif +#ifndef BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS +#include "boost_no_mem_tem_pnts.ipp" +#else +namespace boost_no_pointer_to_member_template_parameters = empty_boost; +#endif +#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#include "boost_no_mem_templ_frnds.ipp" +#else +namespace boost_no_member_template_friends = empty_boost; +#endif +#ifndef BOOST_NO_MEMBER_TEMPLATES +#include "boost_no_mem_templates.ipp" +#else +namespace boost_no_member_templates = empty_boost; +#endif +#ifndef BOOST_NO_NESTED_FRIENDSHIP +#include "boost_no_nested_friendship.ipp" +#else +namespace boost_no_nested_friendship = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_NOEXCEPT +#include "boost_no_noexcept.ipp" +#else +namespace boost_no_cxx11_noexcept = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_NULLPTR +#include "boost_no_nullptr.ipp" +#else +namespace boost_no_cxx11_nullptr = empty_boost; +#endif +#ifndef BOOST_NO_OPERATORS_IN_NAMESPACE +#include "boost_no_ops_in_namespace.ipp" +#else +namespace boost_no_operators_in_namespace = empty_boost; +#endif +#ifndef BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS +#include "boost_no_part_spec_def_args.ipp" +#else +namespace boost_no_partial_specialization_implicit_default_args = empty_boost; +#endif +#ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION +#include "boost_no_partial_spec.ipp" +#else +namespace boost_no_template_partial_specialization = empty_boost; +#endif +#ifndef BOOST_NO_PRIVATE_IN_AGGREGATE +#include "boost_no_priv_aggregate.ipp" +#else +namespace boost_no_private_in_aggregate = empty_boost; +#endif +#ifndef BOOST_NO_POINTER_TO_MEMBER_CONST +#include "boost_no_ptr_mem_const.ipp" +#else +namespace boost_no_pointer_to_member_const = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_RANGE_BASED_FOR +#include "boost_no_range_based_for.ipp" +#else +namespace boost_no_cxx11_range_based_for = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_RAW_LITERALS +#include "boost_no_raw_literals.ipp" +#else +namespace boost_no_cxx11_raw_literals = empty_boost; +#endif +#ifndef BOOST_NO_RESTRICT_REFERENCES +#include "boost_no_restrict_references.ipp" +#else +namespace boost_no_restrict_references = empty_boost; +#endif +#ifndef BOOST_NO_UNREACHABLE_RETURN_DETECTION +#include "boost_no_ret_det.ipp" +#else +namespace boost_no_unreachable_return_detection = empty_boost; +#endif +#ifndef BOOST_NO_RTTI +#include "boost_no_rtti.ipp" +#else +namespace boost_no_rtti = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES +#include "boost_no_rvalue_references.ipp" +#else +namespace boost_no_cxx11_rvalue_references = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_SCOPED_ENUMS +#include "boost_no_scoped_enums.ipp" +#else +namespace boost_no_cxx11_scoped_enums = empty_boost; +#endif +#ifndef BOOST_NO_SFINAE +#include "boost_no_sfinae.ipp" +#else +namespace boost_no_sfinae = empty_boost; +#endif +#ifndef BOOST_NO_SFINAE_EXPR +#include "boost_no_sfinae_expr.ipp" +#else +namespace boost_no_sfinae_expr = empty_boost; +#endif +#ifndef BOOST_NO_STRINGSTREAM +#include "boost_no_sstream.ipp" +#else +namespace boost_no_stringstream = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_STATIC_ASSERT +#include "boost_no_static_assert.ipp" +#else +namespace boost_no_cxx11_static_assert = empty_boost; +#endif +#ifndef BOOST_NO_STD_ALLOCATOR +#include "boost_no_std_allocator.ipp" +#else +namespace boost_no_std_allocator = empty_boost; +#endif +#ifndef BOOST_NO_STD_DISTANCE +#include "boost_no_std_distance.ipp" +#else +namespace boost_no_std_distance = empty_boost; +#endif +#ifndef BOOST_NO_STD_ITERATOR_TRAITS +#include "boost_no_std_iter_traits.ipp" +#else +namespace boost_no_std_iterator_traits = empty_boost; +#endif +#ifndef BOOST_NO_STD_ITERATOR +#include "boost_no_std_iterator.ipp" +#else +namespace boost_no_std_iterator = empty_boost; +#endif +#ifndef BOOST_NO_STD_LOCALE +#include "boost_no_std_locale.ipp" +#else +namespace boost_no_std_locale = empty_boost; +#endif +#ifndef BOOST_NO_STD_MESSAGES +#include "boost_no_std_messages.ipp" +#else +namespace boost_no_std_messages = empty_boost; +#endif +#ifndef BOOST_NO_STD_MIN_MAX +#include "boost_no_std_min_max.ipp" +#else +namespace boost_no_std_min_max = empty_boost; +#endif +#ifndef BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN +#include "boost_no_std_oi_assign.ipp" +#else +namespace boost_no_std_output_iterator_assign = empty_boost; +#endif +#ifndef BOOST_NO_STD_TYPEINFO +#include "boost_no_std_typeinfo.ipp" +#else +namespace boost_no_std_typeinfo = empty_boost; +#endif +#ifndef BOOST_NO_STD_USE_FACET +#include "boost_no_std_use_facet.ipp" +#else +namespace boost_no_std_use_facet = empty_boost; +#endif +#ifndef BOOST_NO_STD_WSTREAMBUF +#include "boost_no_std_wstreambuf.ipp" +#else +namespace boost_no_std_wstreambuf = empty_boost; +#endif +#ifndef BOOST_NO_STD_WSTRING +#include "boost_no_std_wstring.ipp" +#else +namespace boost_no_std_wstring = empty_boost; +#endif +#ifndef BOOST_NO_STDC_NAMESPACE +#include "boost_no_stdc_namespace.ipp" +#else +namespace boost_no_stdc_namespace = empty_boost; +#endif +#ifndef BOOST_NO_SWPRINTF +#include "boost_no_swprintf.ipp" +#else +namespace boost_no_swprintf = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS +#include "boost_no_tem_local_classes.ipp" +#else +namespace boost_no_cxx11_local_class_template_parameters = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_TEMPLATE_ALIASES +#include "boost_no_template_aliases.ipp" +#else +namespace boost_no_cxx11_template_aliases = empty_boost; +#endif +#ifndef BOOST_NO_TEMPLATED_IOSTREAMS +#include "boost_no_template_streams.ipp" +#else +namespace boost_no_templated_iostreams = empty_boost; +#endif +#ifndef BOOST_NO_TEMPLATE_TEMPLATES +#include "boost_no_template_template.ipp" +#else +namespace boost_no_template_templates = empty_boost; +#endif +#ifndef BOOST_NO_TWO_PHASE_NAME_LOOKUP +#include "boost_no_two_phase_lookup.ipp" +#else +namespace boost_no_two_phase_name_lookup = empty_boost; +#endif +#ifndef BOOST_NO_TYPEID +#include "boost_no_typeid.ipp" +#else +namespace boost_no_typeid = empty_boost; +#endif +#ifndef BOOST_NO_TYPENAME_WITH_CTOR +#include "boost_no_typename_with_ctor.ipp" +#else +namespace boost_no_typename_with_ctor = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_UNICODE_LITERALS +#include "boost_no_unicode_literals.ipp" +#else +namespace boost_no_cxx11_unicode_literals = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX +#include "boost_no_unified_init.ipp" +#else +namespace boost_no_cxx11_unified_initialization_syntax = empty_boost; +#endif +#ifndef BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL +#include "boost_no_using_breaks_adl.ipp" +#else +namespace boost_function_scope_using_declaration_breaks_adl = empty_boost; +#endif +#ifndef BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE +#include "boost_no_using_decl_overld.ipp" +#else +namespace boost_no_using_declaration_overloads_from_typename_base = empty_boost; +#endif +#ifndef BOOST_NO_USING_TEMPLATE +#include "boost_no_using_template.ipp" +#else +namespace boost_no_using_template = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_VARIADIC_MACROS +#include "boost_no_variadic_macros.ipp" +#else +namespace boost_no_cxx11_variadic_macros = empty_boost; +#endif +#ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES +#include "boost_no_variadic_templates.ipp" +#else +namespace boost_no_cxx11_variadic_templates = empty_boost; +#endif +#ifndef BOOST_NO_VOID_RETURNS +#include "boost_no_void_returns.ipp" +#else +namespace boost_no_void_returns = empty_boost; +#endif +#ifndef BOOST_NO_INTRINSIC_WCHAR_T +#include "boost_no_wchar_t.ipp" +#else +namespace boost_no_intrinsic_wchar_t = empty_boost; +#endif + +#ifdef BOOST_HAS_TWO_ARG_USE_FACET +#include "boost_has_2arg_use_facet.ipp" +#else +namespace boost_has_two_arg_use_facet = empty_boost; +#endif +#ifdef BOOST_HAS_BETHREADS +#include "boost_has_bethreads.ipp" +#else +namespace boost_has_bethreads = empty_boost; +#endif +#ifdef BOOST_HAS_CLOCK_GETTIME +#include "boost_has_clock_gettime.ipp" +#else +namespace boost_has_clock_gettime = empty_boost; +#endif +#ifdef BOOST_HAS_PRAGMA_DETECT_MISMATCH +#include "boost_has_detect_mismatch.ipp" +#else +namespace boost_has_pragma_detect_mismatch = empty_boost; +#endif +#ifdef BOOST_HAS_DIRENT_H +#include "boost_has_dirent_h.ipp" +#else +namespace boost_has_dirent_h = empty_boost; +#endif +#ifdef BOOST_HAS_EXPM1 +#include "boost_has_expm1.ipp" +#else +namespace boost_has_expm1 = empty_boost; +#endif +#ifdef BOOST_HAS_FLOAT128 +#include "boost_has_float128.ipp" +#else +namespace boost_has_float128 = empty_boost; +#endif +#ifdef BOOST_HAS_FTIME +#include "boost_has_ftime.ipp" +#else +namespace boost_has_ftime = empty_boost; +#endif +#ifdef BOOST_HAS_GETSYSTEMTIMEASFILETIME +#include "boost_has_getsystemtimeasfiletime.ipp" +#else +namespace boost_has_getsystemtimeasfiletime = empty_boost; +#endif +#ifdef BOOST_HAS_GETTIMEOFDAY +#include "boost_has_gettimeofday.ipp" +#else +namespace boost_has_gettimeofday = empty_boost; +#endif +#ifdef BOOST_HAS_HASH +#include "boost_has_hash.ipp" +#else +namespace boost_has_hash = empty_boost; +#endif +#ifdef BOOST_HAS_INT128 +#include "boost_has_int128.ipp" +#else +namespace boost_has_int128 = empty_boost; +#endif +#ifdef BOOST_HAS_LOG1P +#include "boost_has_log1p.ipp" +#else +namespace boost_has_log1p = empty_boost; +#endif +#ifdef BOOST_HAS_LONG_LONG +#include "boost_has_long_long.ipp" +#else +namespace boost_has_long_long = empty_boost; +#endif +#ifdef BOOST_HAS_MACRO_USE_FACET +#include "boost_has_macro_use_facet.ipp" +#else +namespace boost_has_macro_use_facet = empty_boost; +#endif +#ifdef BOOST_HAS_MS_INT64 +#include "boost_has_ms_int64.ipp" +#else +namespace boost_has_ms_int64 = empty_boost; +#endif +#ifdef BOOST_HAS_NANOSLEEP +#include "boost_has_nanosleep.ipp" +#else +namespace boost_has_nanosleep = empty_boost; +#endif +#ifdef BOOST_HAS_NL_TYPES_H +#include "boost_has_nl_types_h.ipp" +#else +namespace boost_has_nl_types_h = empty_boost; +#endif +#ifdef BOOST_HAS_NRVO +#include "boost_has_nrvo.ipp" +#else +namespace boost_has_nrvo = empty_boost; +#endif +#ifdef BOOST_HAS_PARTIAL_STD_ALLOCATOR +#include "boost_has_part_alloc.ipp" +#else +namespace boost_has_partial_std_allocator = empty_boost; +#endif +#ifdef BOOST_HAS_PTHREAD_DELAY_NP +#include "boost_has_pthread_delay_np.ipp" +#else +namespace boost_has_pthread_delay_np = empty_boost; +#endif +#ifdef BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE +#include "boost_has_pthread_ma_st.ipp" +#else +namespace boost_has_pthread_mutexattr_settype = empty_boost; +#endif +#ifdef BOOST_HAS_PTHREAD_YIELD +#include "boost_has_pthread_yield.ipp" +#else +namespace boost_has_pthread_yield = empty_boost; +#endif +#ifdef BOOST_HAS_PTHREADS +#include "boost_has_pthreads.ipp" +#else +namespace boost_has_pthreads = empty_boost; +#endif +#ifdef BOOST_HAS_RVALUE_REFS +#include "boost_has_rvalue_refs.ipp" +#else +namespace boost_has_rvalue_refs = empty_boost; +#endif +#ifdef BOOST_HAS_SCHED_YIELD +#include "boost_has_sched_yield.ipp" +#else +namespace boost_has_sched_yield = empty_boost; +#endif +#ifdef BOOST_HAS_SGI_TYPE_TRAITS +#include "boost_has_sgi_type_traits.ipp" +#else +namespace boost_has_sgi_type_traits = empty_boost; +#endif +#ifdef BOOST_HAS_SIGACTION +#include "boost_has_sigaction.ipp" +#else +namespace boost_has_sigaction = empty_boost; +#endif +#ifdef BOOST_HAS_SLIST +#include "boost_has_slist.ipp" +#else +namespace boost_has_slist = empty_boost; +#endif +#ifdef BOOST_HAS_STATIC_ASSERT +#include "boost_has_static_assert.ipp" +#else +namespace boost_has_static_assert = empty_boost; +#endif +#ifdef BOOST_HAS_STDINT_H +#include "boost_has_stdint_h.ipp" +#else +namespace boost_has_stdint_h = empty_boost; +#endif +#ifdef BOOST_HAS_STLP_USE_FACET +#include "boost_has_stlp_use_facet.ipp" +#else +namespace boost_has_stlp_use_facet = empty_boost; +#endif +#ifdef BOOST_HAS_UNISTD_H +#include "boost_has_unistd_h.ipp" +#else +namespace boost_has_unistd_h = empty_boost; +#endif +#ifdef BOOST_HAS_VARIADIC_TMPL +#include "boost_has_variadic_tmpl.ipp" +#else +namespace boost_has_variadic_tmpl = empty_boost; +#endif +#ifdef BOOST_MSVC6_MEMBER_TEMPLATES +#include "boost_has_vc6_mem_templ.ipp" +#else +namespace boost_msvc6_member_templates = empty_boost; +#endif +#ifdef BOOST_MSVC_STD_ITERATOR +#include "boost_has_vc_iterator.ipp" +#else +namespace boost_msvc_std_iterator = empty_boost; +#endif +#ifdef BOOST_HAS_WINTHREADS +#include "boost_has_winthreads.ipp" +#else +namespace boost_has_winthreads = empty_boost; +#endif + +int main( int, char *[] ) +{ + if(0 != boost_has_two_arg_use_facet::test()) + { + std::cerr << "Failed test for BOOST_HAS_TWO_ARG_USE_FACET at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_bethreads::test()) + { + std::cerr << "Failed test for BOOST_HAS_BETHREADS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_clock_gettime::test()) + { + std::cerr << "Failed test for BOOST_HAS_CLOCK_GETTIME at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_pragma_detect_mismatch::test()) + { + std::cerr << "Failed test for BOOST_HAS_PRAGMA_DETECT_MISMATCH at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_dirent_h::test()) + { + std::cerr << "Failed test for BOOST_HAS_DIRENT_H at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_expm1::test()) + { + std::cerr << "Failed test for BOOST_HAS_EXPM1 at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_float128::test()) + { + std::cerr << "Failed test for BOOST_HAS_FLOAT128 at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_ftime::test()) + { + std::cerr << "Failed test for BOOST_HAS_FTIME at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_getsystemtimeasfiletime::test()) + { + std::cerr << "Failed test for BOOST_HAS_GETSYSTEMTIMEASFILETIME at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_gettimeofday::test()) + { + std::cerr << "Failed test for BOOST_HAS_GETTIMEOFDAY at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_hash::test()) + { + std::cerr << "Failed test for BOOST_HAS_HASH at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_int128::test()) + { + std::cerr << "Failed test for BOOST_HAS_INT128 at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_log1p::test()) + { + std::cerr << "Failed test for BOOST_HAS_LOG1P at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_long_long::test()) + { + std::cerr << "Failed test for BOOST_HAS_LONG_LONG at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_macro_use_facet::test()) + { + std::cerr << "Failed test for BOOST_HAS_MACRO_USE_FACET at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_ms_int64::test()) + { + std::cerr << "Failed test for BOOST_HAS_MS_INT64 at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_nanosleep::test()) + { + std::cerr << "Failed test for BOOST_HAS_NANOSLEEP at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_nl_types_h::test()) + { + std::cerr << "Failed test for BOOST_HAS_NL_TYPES_H at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_nrvo::test()) + { + std::cerr << "Failed test for BOOST_HAS_NRVO at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_partial_std_allocator::test()) + { + std::cerr << "Failed test for BOOST_HAS_PARTIAL_STD_ALLOCATOR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_pthread_delay_np::test()) + { + std::cerr << "Failed test for BOOST_HAS_PTHREAD_DELAY_NP at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_pthread_mutexattr_settype::test()) + { + std::cerr << "Failed test for BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_pthread_yield::test()) + { + std::cerr << "Failed test for BOOST_HAS_PTHREAD_YIELD at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_pthreads::test()) + { + std::cerr << "Failed test for BOOST_HAS_PTHREADS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_rvalue_refs::test()) + { + std::cerr << "Failed test for BOOST_HAS_RVALUE_REFS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_sched_yield::test()) + { + std::cerr << "Failed test for BOOST_HAS_SCHED_YIELD at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_sgi_type_traits::test()) + { + std::cerr << "Failed test for BOOST_HAS_SGI_TYPE_TRAITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_sigaction::test()) + { + std::cerr << "Failed test for BOOST_HAS_SIGACTION at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_slist::test()) + { + std::cerr << "Failed test for BOOST_HAS_SLIST at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_static_assert::test()) + { + std::cerr << "Failed test for BOOST_HAS_STATIC_ASSERT at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_stdint_h::test()) + { + std::cerr << "Failed test for BOOST_HAS_STDINT_H at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_stlp_use_facet::test()) + { + std::cerr << "Failed test for BOOST_HAS_STLP_USE_FACET at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_unistd_h::test()) + { + std::cerr << "Failed test for BOOST_HAS_UNISTD_H at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_variadic_tmpl::test()) + { + std::cerr << "Failed test for BOOST_HAS_VARIADIC_TMPL at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_msvc6_member_templates::test()) + { + std::cerr << "Failed test for BOOST_MSVC6_MEMBER_TEMPLATES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_msvc_std_iterator::test()) + { + std::cerr << "Failed test for BOOST_MSVC_STD_ITERATOR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_has_winthreads::test()) + { + std::cerr << "Failed test for BOOST_HAS_WINTHREADS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_adl_barrier::test()) + { + std::cerr << "Failed test for BOOST_NO_ADL_BARRIER at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_argument_dependent_lookup::test()) + { + std::cerr << "Failed test for BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_array_type_specializations::test()) + { + std::cerr << "Failed test for BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_auto_declarations::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_AUTO_DECLARATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_auto_multideclarations::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_auto_ptr::test()) + { + std::cerr << "Failed test for BOOST_NO_AUTO_PTR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_bcb_partial_specialization_bug::test()) + { + std::cerr << "Failed test for BOOST_BCB_PARTIAL_SPECIALIZATION_BUG at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_char16_t::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_CHAR16_T at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_char32_t::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_CHAR32_T at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_complete_value_initialization::test()) + { + std::cerr << "Failed test for BOOST_NO_COMPLETE_VALUE_INITIALIZATION at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_constexpr::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_CONSTEXPR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_ctype_functions::test()) + { + std::cerr << "Failed test for BOOST_NO_CTYPE_FUNCTIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cv_specializations::test()) + { + std::cerr << "Failed test for BOOST_NO_CV_SPECIALIZATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cv_void_specializations::test()) + { + std::cerr << "Failed test for BOOST_NO_CV_VOID_SPECIALIZATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cwchar::test()) + { + std::cerr << "Failed test for BOOST_NO_CWCHAR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cwctype::test()) + { + std::cerr << "Failed test for BOOST_NO_CWCTYPE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_addressof::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_ADDRESSOF at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_alignas::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_ALIGNAS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_allocator::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_ALLOCATOR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_atomic_smart_ptr::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_ATOMIC_SMART_PTR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_defaulted_moves::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_DEFAULTED_MOVES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_final::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_FINAL at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_array::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_ARRAY at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_atomic::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_ATOMIC at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_chrono::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_CHRONO at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_codecvt::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_CODECVT at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_condition_variable::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_CONDITION_VARIABLE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_forward_list::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_FORWARD_LIST at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_future::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_FUTURE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_initializer_list::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_INITIALIZER_LIST at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_mutex::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_MUTEX at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_random::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_RANDOM at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_ratio::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_RATIO at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_regex::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_REGEX at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_system_error::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_SYSTEM_ERROR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_thread::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_THREAD at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_tuple::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_TUPLE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_type_traits::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_TYPE_TRAITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_typeindex::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_TYPEINDEX at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_unordered_map::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_UNORDERED_MAP at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_unordered_set::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_UNORDERED_SET at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_inline_namespaces::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_INLINE_NAMESPACES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_non_public_defaulted_functions::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_numeric_limits::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_NUMERIC_LIMITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_pointer_traits::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_POINTER_TRAITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_ref_qualifiers::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_REF_QUALIFIERS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_sfinae_expr::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_SFINAE_EXPR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_smart_ptr::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_SMART_PTR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_std_align::test()) + { + 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; + ++error_count; + } + if(0 != boost_no_cxx11_user_defined_literals::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_USER_DEFINED_LITERALS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_binary_literals::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_BINARY_LITERALS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_constexpr::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_CONSTEXPR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_decltype_auto::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_DECLTYPE_AUTO at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_digit_separators::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_DIGIT_SEPARATORS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_generic_lambdas::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_GENERIC_LAMBDAS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_hdr_shared_mutex::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_HDR_SHARED_MUTEX at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_initialized_lambda_captures::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_aggregate_nsdmi::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_AGGREGATE_NSDMI at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_return_type_deduction::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_std_exchange::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_STD_EXCHANGE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx14_variable_templates::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX14_VARIABLE_TEMPLATES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_fold_expressions::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_FOLD_EXPRESSIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_if_constexpr::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_IF_CONSTEXPR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_inline_variables::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_INLINE_VARIABLES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_iterator_traits::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_ITERATOR_TRAITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_std_apply::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_STD_APPLY at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_std_invoke::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_STD_INVOKE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx17_structured_bindings::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX17_STRUCTURED_BINDINGS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx98_binders::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX98_BINDERS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx98_function_base::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX98_FUNCTION_BASE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx98_random_shuffle::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX98_RANDOM_SHUFFLE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_hdr_functional::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_HDR_FUNCTIONAL at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_decltype::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_DECLTYPE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_decltype_n3276::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_DECLTYPE_N3276 at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_deduced_typename::test()) + { + std::cerr << "Failed test for BOOST_DEDUCED_TYPENAME at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_defaulted_functions::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_DEFAULTED_FUNCTIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_deleted_functions::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_DELETED_FUNCTIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_dependent_nested_derivations::test()) + { + std::cerr << "Failed test for BOOST_NO_DEPENDENT_NESTED_DERIVATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_dependent_types_in_template_value_parameters::test()) + { + std::cerr << "Failed test for BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_exception_std_namespace::test()) + { + std::cerr << "Failed test for BOOST_NO_EXCEPTION_STD_NAMESPACE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_exceptions::test()) + { + std::cerr << "Failed test for BOOST_NO_EXCEPTIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_explicit_function_template_arguments::test()) + { + std::cerr << "Failed test for BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_explicit_conversion_operators::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_extern_template::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_EXTERN_TEMPLATE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_fenv_h::test()) + { + std::cerr << "Failed test for BOOST_NO_FENV_H at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_fixed_length_variadic_template_expansion_packs::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_function_template_ordering::test()) + { + std::cerr << "Failed test for BOOST_NO_FUNCTION_TEMPLATE_ORDERING at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_function_template_default_args::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_function_type_specializations::test()) + { + std::cerr << "Failed test for BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_ms_int64_numeric_limits::test()) + { + std::cerr << "Failed test for BOOST_NO_MS_INT64_NUMERIC_LIMITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_inclass_member_initialization::test()) + { + std::cerr << "Failed test for BOOST_NO_INCLASS_MEMBER_INITIALIZATION at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_integral_int64_t::test()) + { + std::cerr << "Failed test for BOOST_NO_INTEGRAL_INT64_T at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_iosfwd::test()) + { + std::cerr << "Failed test for BOOST_NO_IOSFWD at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_iostream::test()) + { + std::cerr << "Failed test for BOOST_NO_IOSTREAM at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_is_abstract::test()) + { + std::cerr << "Failed test for BOOST_NO_IS_ABSTRACT at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_templated_iterator_constructors::test()) + { + std::cerr << "Failed test for BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_lambdas::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_LAMBDAS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_limits::test()) + { + std::cerr << "Failed test for BOOST_NO_LIMITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_limits_compile_time_constants::test()) + { + std::cerr << "Failed test for BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_long_long_numeric_limits::test()) + { + std::cerr << "Failed test for BOOST_NO_LONG_LONG_NUMERIC_LIMITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_long_long::test()) + { + std::cerr << "Failed test for BOOST_NO_LONG_LONG at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_member_function_specializations::test()) + { + std::cerr << "Failed test for BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_member_template_keyword::test()) + { + std::cerr << "Failed test for BOOST_NO_MEMBER_TEMPLATE_KEYWORD at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_pointer_to_member_template_parameters::test()) + { + std::cerr << "Failed test for BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_member_template_friends::test()) + { + std::cerr << "Failed test for BOOST_NO_MEMBER_TEMPLATE_FRIENDS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_member_templates::test()) + { + std::cerr << "Failed test for BOOST_NO_MEMBER_TEMPLATES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_nested_friendship::test()) + { + std::cerr << "Failed test for BOOST_NO_NESTED_FRIENDSHIP at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_noexcept::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_NOEXCEPT at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_nullptr::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_NULLPTR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_operators_in_namespace::test()) + { + std::cerr << "Failed test for BOOST_NO_OPERATORS_IN_NAMESPACE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_partial_specialization_implicit_default_args::test()) + { + std::cerr << "Failed test for BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_template_partial_specialization::test()) + { + std::cerr << "Failed test for BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_private_in_aggregate::test()) + { + std::cerr << "Failed test for BOOST_NO_PRIVATE_IN_AGGREGATE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_pointer_to_member_const::test()) + { + std::cerr << "Failed test for BOOST_NO_POINTER_TO_MEMBER_CONST at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_range_based_for::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_RANGE_BASED_FOR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_raw_literals::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_RAW_LITERALS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_restrict_references::test()) + { + std::cerr << "Failed test for BOOST_NO_RESTRICT_REFERENCES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_unreachable_return_detection::test()) + { + std::cerr << "Failed test for BOOST_NO_UNREACHABLE_RETURN_DETECTION at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_rtti::test()) + { + std::cerr << "Failed test for BOOST_NO_RTTI at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_rvalue_references::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_RVALUE_REFERENCES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_scoped_enums::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_SCOPED_ENUMS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_sfinae::test()) + { + std::cerr << "Failed test for BOOST_NO_SFINAE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_sfinae_expr::test()) + { + std::cerr << "Failed test for BOOST_NO_SFINAE_EXPR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_stringstream::test()) + { + std::cerr << "Failed test for BOOST_NO_STRINGSTREAM at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_static_assert::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_STATIC_ASSERT at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_allocator::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_ALLOCATOR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_distance::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_DISTANCE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_iterator_traits::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_ITERATOR_TRAITS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_iterator::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_ITERATOR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_locale::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_LOCALE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_messages::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_MESSAGES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_min_max::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_MIN_MAX at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_output_iterator_assign::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_typeinfo::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_TYPEINFO at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_use_facet::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_USE_FACET at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_wstreambuf::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_WSTREAMBUF at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_std_wstring::test()) + { + std::cerr << "Failed test for BOOST_NO_STD_WSTRING at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_stdc_namespace::test()) + { + std::cerr << "Failed test for BOOST_NO_STDC_NAMESPACE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_swprintf::test()) + { + std::cerr << "Failed test for BOOST_NO_SWPRINTF at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_local_class_template_parameters::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_template_aliases::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_TEMPLATE_ALIASES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_templated_iostreams::test()) + { + std::cerr << "Failed test for BOOST_NO_TEMPLATED_IOSTREAMS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_template_templates::test()) + { + std::cerr << "Failed test for BOOST_NO_TEMPLATE_TEMPLATES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_two_phase_name_lookup::test()) + { + std::cerr << "Failed test for BOOST_NO_TWO_PHASE_NAME_LOOKUP at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_typeid::test()) + { + std::cerr << "Failed test for BOOST_NO_TYPEID at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_typename_with_ctor::test()) + { + std::cerr << "Failed test for BOOST_NO_TYPENAME_WITH_CTOR at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_unicode_literals::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_UNICODE_LITERALS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_unified_initialization_syntax::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_function_scope_using_declaration_breaks_adl::test()) + { + std::cerr << "Failed test for BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_using_declaration_overloads_from_typename_base::test()) + { + std::cerr << "Failed test for BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_using_template::test()) + { + std::cerr << "Failed test for BOOST_NO_USING_TEMPLATE at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_variadic_macros::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_VARIADIC_MACROS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_cxx11_variadic_templates::test()) + { + std::cerr << "Failed test for BOOST_NO_CXX11_VARIADIC_TEMPLATES at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_void_returns::test()) + { + std::cerr << "Failed test for BOOST_NO_VOID_RETURNS at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + if(0 != boost_no_intrinsic_wchar_t::test()) + { + std::cerr << "Failed test for BOOST_NO_INTRINSIC_WCHAR_T at: " << __FILE__ << ":" << __LINE__ << std::endl; + ++error_count; + } + return error_count; +} + diff --git a/src/boost/libs/config/test/config_test_c.c b/src/boost/libs/config/test/config_test_c.c new file mode 100644 index 000000000..d660a1c3f --- /dev/null +++ b/src/boost/libs/config/test/config_test_c.c @@ -0,0 +1,13 @@ +/* (C) Copyright John Maddock 2011. + 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) +*/ + +#include <boost/config.hpp> + + +int main() +{ + return 0; +} diff --git a/src/boost/libs/config/test/cstdint_include_test.cpp b/src/boost/libs/config/test/cstdint_include_test.cpp new file mode 100644 index 000000000..25d37c82d --- /dev/null +++ b/src/boost/libs/config/test/cstdint_include_test.cpp @@ -0,0 +1,69 @@ +// Copyright John Maddock 2009. +// Distributed under 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) + +#define __STDC_CONSTANT_MACROS +#include <boost/cstdint.hpp> // must be the only #include! + +int main() +{ + boost::int8_t i8 = INT8_C(0); + (void)i8; + boost::uint8_t ui8 = UINT8_C(0); + (void)ui8; + boost::int16_t i16 = INT16_C(0); + (void)i16; + boost::uint16_t ui16 = UINT16_C(0); + (void)ui16; + boost::int32_t i32 = INT32_C(0); + (void)i32; + boost::uint32_t ui32 = UINT32_C(0); + (void)ui32; +#ifndef BOOST_NO_INT64_T + boost::int64_t i64 = 0; + (void)i64; + boost::uint64_t ui64 = 0; + (void)ui64; +#endif + boost::int_least8_t i8least = INT8_C(0); + (void)i8least; + boost::uint_least8_t ui8least = UINT8_C(0); + (void)ui8least; + boost::int_least16_t i16least = INT16_C(0); + (void)i16least; + boost::uint_least16_t ui16least = UINT16_C(0); + (void)ui16least; + boost::int_least32_t i32least = INT32_C(0); + (void)i32least; + boost::uint_least32_t ui32least = UINT32_C(0); + (void)ui32least; +#ifndef BOOST_NO_INT64_T + boost::int_least64_t i64least = 0; + (void)i64least; + boost::uint_least64_t ui64least = 0; + (void)ui64least; +#endif + boost::int_fast8_t i8fast = INT8_C(0); + (void)i8fast; + boost::uint_fast8_t ui8fast = UINT8_C(0); + (void)ui8fast; + boost::int_fast16_t i16fast = INT16_C(0); + (void)i16fast; + boost::uint_fast16_t ui16fast = UINT16_C(0); + (void)ui16fast; + boost::int_fast32_t i32fast = INT32_C(0); + (void)i32fast; + boost::uint_fast32_t ui32fast = UINT32_C(0); + (void)ui32fast; +#ifndef BOOST_NO_INT64_T + boost::int_fast64_t i64fast = 0; + (void)i64fast; + boost::uint_fast64_t ui64fast = 0; + (void)ui64fast; +#endif + boost::intmax_t im = 0; + (void)im; + boost::uintmax_t uim = 0; + (void)uim; +} diff --git a/src/boost/libs/config/test/cstdint_test.cpp b/src/boost/libs/config/test/cstdint_test.cpp new file mode 100644 index 000000000..f3cbd9bbf --- /dev/null +++ b/src/boost/libs/config/test/cstdint_test.cpp @@ -0,0 +1,238 @@ +// boost cstdint.hpp test program ------------------------------------------// + +// Copyright Beman Dawes 2000. Distributed under 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/integer for documentation. + +// Revision History +// 11 Sep 01 Adapted to work with macros defined in native stdint.h (John Maddock) +// 12 Nov 00 Adapted to merged <boost/cstdint.hpp> +// 23 Sep 00 Added INTXX_C constant macro support + int64_t support (John Maddock). +// 28 Jun 00 Initial version + +// +// There are two ways to test this: in version 1, we include cstdint.hpp as the first +// include, which means we get decide whether __STDC_CONSTANT_MACROS is defined. +// In version two we include stdint.h with __STDC_CONSTANT_MACROS *NOT* defined first, +// and check that we still end up with compatible definitions for the INT#_C macros. +// +// This is version 1. +// + +#if defined(__GNUC__) && (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) +// We can't suppress this warning on the command line as not all GCC versions support -Wno-type-limits : +#pragma GCC diagnostic ignored "-Wtype-limits" +#endif + +#include <boost/cstdint.hpp> +#include <boost/detail/lightweight_test.hpp> +#include <iostream> + +#ifndef BOOST_NO_INCLASS_MEMBER_INITIALIZATION +// +// the following class is designed to verify +// that the various INTXX_C macros can be used +// in integral constant expressions: +// +struct integral_constant_checker +{ + static const boost::int8_t int8 = INT8_C(-127); + static const boost::int_least8_t int_least8 = INT8_C(-127); + static const boost::int_fast8_t int_fast8 = INT8_C(-127); + + static const boost::uint8_t uint8 = UINT8_C(255); + static const boost::uint_least8_t uint_least8 = UINT8_C(255); + static const boost::uint_fast8_t uint_fast8 = UINT8_C(255); + + static const boost::int16_t int16 = INT16_C(-32767); + static const boost::int_least16_t int_least16 = INT16_C(-32767); + static const boost::int_fast16_t int_fast16 = INT16_C(-32767); + + static const boost::uint16_t uint16 = UINT16_C(65535); + static const boost::uint_least16_t uint_least16 = UINT16_C(65535); + static const boost::uint_fast16_t uint_fast16 = UINT16_C(65535); + + static const boost::int32_t int32 = INT32_C(-2147483647); + static const boost::int_least32_t int_least32 = INT32_C(-2147483647); + static const boost::int_fast32_t int_fast32 = INT32_C(-2147483647); + + static const boost::uint32_t uint32 = UINT32_C(4294967295); + static const boost::uint_least32_t uint_least32 = UINT32_C(4294967295); + static const boost::uint_fast32_t uint_fast32 = UINT32_C(4294967295); + + static void check(); +}; + +void integral_constant_checker::check() +{ + BOOST_TEST( int8 == -127 ); + BOOST_TEST( int_least8 == -127 ); + BOOST_TEST( int_fast8 == -127 ); + BOOST_TEST( uint8 == 255u ); + BOOST_TEST( uint_least8 == 255u ); + BOOST_TEST( uint_fast8 == 255u ); + BOOST_TEST( int16 == -32767 ); + BOOST_TEST( int_least16 == -32767 ); + BOOST_TEST( int_fast16 == -32767 ); + BOOST_TEST( uint16 == 65535u ); + BOOST_TEST( uint_least16 == 65535u ); + BOOST_TEST( uint_fast16 == 65535u ); + BOOST_TEST( int32 == -2147483647 ); + BOOST_TEST( int_least32 == -2147483647 ); + BOOST_TEST( int_fast32 == -2147483647 ); + BOOST_TEST( uint32 == 4294967295u ); + BOOST_TEST( uint_least32 == 4294967295u ); + BOOST_TEST( uint_fast32 == 4294967295u ); +} +#endif // BOOST_NO_INCLASS_MEMBER_INITIALIZATION + +// +// the following function simply verifies that the type +// of an integral constant is correctly defined: +// +#ifdef __BORLANDC__ +#pragma option -w-8008 +#pragma option -w-8066 +#endif +template <class T1, class T2> +void integral_constant_type_check(T1, T2) +{ + // + // the types T1 and T2 may not be exactly + // the same type, but they should be the + // same size and signedness. We could use + // numeric_limits to verify this, but + // numeric_limits implementations currently + // vary too much, or are incomplete or missing. + // + T1 t1 = static_cast<T1>(-1); // cast suppresses warnings + T2 t2 = static_cast<T2>(-1); // ditto +#if defined(BOOST_HAS_STDINT_H) + // if we have a native stdint.h + // then the INTXX_C macros may define + // a type that's wider than required: + BOOST_TEST(sizeof(T1) <= sizeof(T2)); +#else + BOOST_TEST(sizeof(T1) == sizeof(T2)); + BOOST_TEST(t1 == t2); +#endif +#if defined(BOOST_HAS_STDINT_H) + // native headers are permitted to promote small + // unsigned types to type int: + if(sizeof(T1) >= sizeof(int)) + { + if(t1 > 0) + BOOST_TEST(t2 > 0); + else + BOOST_TEST(!(t2 > 0)); + } + else if(t1 < 0) + BOOST_TEST(!(t2 > 0)); +#else + if(t1 > 0) + BOOST_TEST(t2 > 0); + else + BOOST_TEST(!(t2 > 0)); +#endif +} + + +int main(int, char*[]) +{ +#ifndef BOOST_NO_INCLASS_MEMBER_INITIALIZATION + integral_constant_checker::check(); +#endif + // + // verify the types of the integral constants: + // + integral_constant_type_check(boost::int8_t(0), INT8_C(0)); + integral_constant_type_check(boost::uint8_t(0), UINT8_C(0)); + integral_constant_type_check(boost::int16_t(0), INT16_C(0)); + integral_constant_type_check(boost::uint16_t(0), UINT16_C(0)); + integral_constant_type_check(boost::int32_t(0), INT32_C(0)); + integral_constant_type_check(boost::uint32_t(0), UINT32_C(0)); +#ifndef BOOST_NO_INT64_T + integral_constant_type_check(boost::int64_t(0), INT64_C(0)); + integral_constant_type_check(boost::uint64_t(0), UINT64_C(0)); +#endif + // + boost::int8_t int8 = INT8_C(-127); + boost::int_least8_t int_least8 = INT8_C(-127); + boost::int_fast8_t int_fast8 = INT8_C(-127); + + boost::uint8_t uint8 = UINT8_C(255); + boost::uint_least8_t uint_least8 = UINT8_C(255); + boost::uint_fast8_t uint_fast8 = UINT8_C(255); + + boost::int16_t int16 = INT16_C(-32767); + boost::int_least16_t int_least16 = INT16_C(-32767); + boost::int_fast16_t int_fast16 = INT16_C(-32767); + + boost::uint16_t uint16 = UINT16_C(65535); + boost::uint_least16_t uint_least16 = UINT16_C(65535); + boost::uint_fast16_t uint_fast16 = UINT16_C(65535); + + boost::int32_t int32 = INT32_C(-2147483647); + boost::int_least32_t int_least32 = INT32_C(-2147483647); + boost::int_fast32_t int_fast32 = INT32_C(-2147483647); + + boost::uint32_t uint32 = UINT32_C(4294967295); + boost::uint_least32_t uint_least32 = UINT32_C(4294967295); + boost::uint_fast32_t uint_fast32 = UINT32_C(4294967295); + +#ifndef BOOST_NO_INT64_T + boost::int64_t int64 = INT64_C(-9223372036854775807); + boost::int_least64_t int_least64 = INT64_C(-9223372036854775807); + boost::int_fast64_t int_fast64 = INT64_C(-9223372036854775807); + + boost::uint64_t uint64 = UINT64_C(18446744073709551615); + boost::uint_least64_t uint_least64 = UINT64_C(18446744073709551615); + boost::uint_fast64_t uint_fast64 = UINT64_C(18446744073709551615); + + boost::intmax_t intmax = INTMAX_C(-9223372036854775807); + boost::uintmax_t uintmax = UINTMAX_C(18446744073709551615); +#else + boost::intmax_t intmax = INTMAX_C(-2147483647); + boost::uintmax_t uintmax = UINTMAX_C(4294967295); +#endif + + BOOST_TEST( int8 == -127 ); + BOOST_TEST( int_least8 == -127 ); + BOOST_TEST( int_fast8 == -127 ); + BOOST_TEST( uint8 == 255u ); + BOOST_TEST( uint_least8 == 255u ); + BOOST_TEST( uint_fast8 == 255u ); + BOOST_TEST( int16 == -32767 ); + BOOST_TEST( int_least16 == -32767 ); + BOOST_TEST( int_fast16 == -32767 ); + BOOST_TEST( uint16 == 65535u ); + BOOST_TEST( uint_least16 == 65535u ); + BOOST_TEST( uint_fast16 == 65535u ); + BOOST_TEST( int32 == -2147483647 ); + BOOST_TEST( int_least32 == -2147483647 ); + BOOST_TEST( int_fast32 == -2147483647 ); + BOOST_TEST( uint32 == 4294967295u ); + BOOST_TEST( uint_least32 == 4294967295u ); + BOOST_TEST( uint_fast32 == 4294967295u ); + +#ifndef BOOST_NO_INT64_T + BOOST_TEST( int64 == INT64_C(-9223372036854775807) ); + BOOST_TEST( int_least64 == INT64_C(-9223372036854775807) ); + BOOST_TEST( int_fast64 == INT64_C(-9223372036854775807) ); + BOOST_TEST( uint64 == UINT64_C(18446744073709551615) ); + BOOST_TEST( uint_least64 == UINT64_C(18446744073709551615) ); + BOOST_TEST( uint_fast64 == UINT64_C(18446744073709551615) ); + BOOST_TEST( intmax == INT64_C(-9223372036854775807) ); + BOOST_TEST( uintmax == UINT64_C(18446744073709551615) ); +#else + BOOST_TEST( intmax == -2147483647 ); + BOOST_TEST( uintmax == 4294967295u ); +#endif + + + std::cout << "OK\n"; + return boost::report_errors(); +} diff --git a/src/boost/libs/config/test/cstdint_test2.cpp b/src/boost/libs/config/test/cstdint_test2.cpp new file mode 100644 index 000000000..91ff28f4c --- /dev/null +++ b/src/boost/libs/config/test/cstdint_test2.cpp @@ -0,0 +1,248 @@ +// boost cstdint.hpp test program ------------------------------------------// + +// Copyright Beman Dawes 2000. Distributed under 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/integer for documentation. + +// Revision History +// 11 Sep 01 Adapted to work with macros defined in native stdint.h (John Maddock) +// 12 Nov 00 Adapted to merged <boost/cstdint.hpp> +// 23 Sep 00 Added INTXX_C constant macro support + int64_t support (John Maddock). +// 28 Jun 00 Initial version + +// +// There are two ways to test this: in version 1, we include cstdint.hpp as the first +// include, which means we get decide whether __STDC_CONSTANT_MACROS is defined. +// In version two we include stdint.h with __STDC_CONSTANT_MACROS *NOT* defined first, +// and check that we still end up with compatible definitions for the INT#_C macros. +// +// This is version 2. +// + +#if defined(__GNUC__) && (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) +// We can't suppress this warning on the command line as not all GCC versions support -Wno-type-limits : +#pragma GCC diagnostic ignored "-Wtype-limits" +#endif + +#include <boost/config.hpp> + +#ifdef BOOST_HAS_STDINT_H +#ifdef __hpux +# include <inttypes.h> +#else +# include <stdint.h> +#endif +#endif + +#include <boost/cstdint.hpp> +#include <boost/detail/lightweight_test.hpp> +#include <iostream> + +#ifndef BOOST_NO_INCLASS_MEMBER_INITIALIZATION +// +// the following class is designed to verify +// that the various INTXX_C macros can be used +// in integral constant expressions: +// +struct integral_constant_checker +{ + static const boost::int8_t int8 = INT8_C(-127); + static const boost::int_least8_t int_least8 = INT8_C(-127); + static const boost::int_fast8_t int_fast8 = INT8_C(-127); + + static const boost::uint8_t uint8 = UINT8_C(255); + static const boost::uint_least8_t uint_least8 = UINT8_C(255); + static const boost::uint_fast8_t uint_fast8 = UINT8_C(255); + + static const boost::int16_t int16 = INT16_C(-32767); + static const boost::int_least16_t int_least16 = INT16_C(-32767); + static const boost::int_fast16_t int_fast16 = INT16_C(-32767); + + static const boost::uint16_t uint16 = UINT16_C(65535); + static const boost::uint_least16_t uint_least16 = UINT16_C(65535); + static const boost::uint_fast16_t uint_fast16 = UINT16_C(65535); + + static const boost::int32_t int32 = INT32_C(-2147483647); + static const boost::int_least32_t int_least32 = INT32_C(-2147483647); + static const boost::int_fast32_t int_fast32 = INT32_C(-2147483647); + + static const boost::uint32_t uint32 = UINT32_C(4294967295); + static const boost::uint_least32_t uint_least32 = UINT32_C(4294967295); + static const boost::uint_fast32_t uint_fast32 = UINT32_C(4294967295); + + static void check(); +}; + +void integral_constant_checker::check() +{ + BOOST_TEST( int8 == -127 ); + BOOST_TEST( int_least8 == -127 ); + BOOST_TEST( int_fast8 == -127 ); + BOOST_TEST( uint8 == 255u ); + BOOST_TEST( uint_least8 == 255u ); + BOOST_TEST( uint_fast8 == 255u ); + BOOST_TEST( int16 == -32767 ); + BOOST_TEST( int_least16 == -32767 ); + BOOST_TEST( int_fast16 == -32767 ); + BOOST_TEST( uint16 == 65535u ); + BOOST_TEST( uint_least16 == 65535u ); + BOOST_TEST( uint_fast16 == 65535u ); + BOOST_TEST( int32 == -2147483647 ); + BOOST_TEST( int_least32 == -2147483647 ); + BOOST_TEST( int_fast32 == -2147483647 ); + BOOST_TEST( uint32 == 4294967295u ); + BOOST_TEST( uint_least32 == 4294967295u ); + BOOST_TEST( uint_fast32 == 4294967295u ); +} +#endif // BOOST_NO_INCLASS_MEMBER_INITIALIZATION + +// +// the following function simply verifies that the type +// of an integral constant is correctly defined: +// +#ifdef __BORLANDC__ +#pragma option -w-8008 +#pragma option -w-8066 +#endif +template <class T1, class T2> +void integral_constant_type_check(T1, T2) +{ + // + // the types T1 and T2 may not be exactly + // the same type, but they should be the + // same size and signedness. We could use + // numeric_limits to verify this, but + // numeric_limits implementations currently + // vary too much, or are incomplete or missing. + // + T1 t1 = static_cast<T1>(-1); // cast suppresses warnings + T2 t2 = static_cast<T2>(-1); // ditto +#if defined(BOOST_HAS_STDINT_H) + // if we have a native stdint.h + // then the INTXX_C macros may define + // a type that's wider than required: + BOOST_TEST(sizeof(T1) <= sizeof(T2)); +#else + BOOST_TEST(sizeof(T1) == sizeof(T2)); + BOOST_TEST(t1 == t2); +#endif +#if defined(BOOST_HAS_STDINT_H) + // native headers are permitted to promote small + // unsigned types to type int: + if(sizeof(T1) >= sizeof(int)) + { + if(t1 > 0) + BOOST_TEST(t2 > 0); + else + BOOST_TEST(!(t2 > 0)); + } + else if(t1 < 0) + BOOST_TEST(!(t2 > 0)); +#else + if(t1 > 0) + BOOST_TEST(t2 > 0); + else + BOOST_TEST(!(t2 > 0)); +#endif +} + + +int main(int, char*[]) +{ +#ifndef BOOST_NO_INCLASS_MEMBER_INITIALIZATION + integral_constant_checker::check(); +#endif + // + // verify the types of the integral constants: + // + integral_constant_type_check(boost::int8_t(0), INT8_C(0)); + integral_constant_type_check(boost::uint8_t(0), UINT8_C(0)); + integral_constant_type_check(boost::int16_t(0), INT16_C(0)); + integral_constant_type_check(boost::uint16_t(0), UINT16_C(0)); + integral_constant_type_check(boost::int32_t(0), INT32_C(0)); + integral_constant_type_check(boost::uint32_t(0), UINT32_C(0)); +#ifndef BOOST_NO_INT64_T + integral_constant_type_check(boost::int64_t(0), INT64_C(0)); + integral_constant_type_check(boost::uint64_t(0), UINT64_C(0)); +#endif + // + boost::int8_t int8 = INT8_C(-127); + boost::int_least8_t int_least8 = INT8_C(-127); + boost::int_fast8_t int_fast8 = INT8_C(-127); + + boost::uint8_t uint8 = UINT8_C(255); + boost::uint_least8_t uint_least8 = UINT8_C(255); + boost::uint_fast8_t uint_fast8 = UINT8_C(255); + + boost::int16_t int16 = INT16_C(-32767); + boost::int_least16_t int_least16 = INT16_C(-32767); + boost::int_fast16_t int_fast16 = INT16_C(-32767); + + boost::uint16_t uint16 = UINT16_C(65535); + boost::uint_least16_t uint_least16 = UINT16_C(65535); + boost::uint_fast16_t uint_fast16 = UINT16_C(65535); + + boost::int32_t int32 = INT32_C(-2147483647); + boost::int_least32_t int_least32 = INT32_C(-2147483647); + boost::int_fast32_t int_fast32 = INT32_C(-2147483647); + + boost::uint32_t uint32 = UINT32_C(4294967295); + boost::uint_least32_t uint_least32 = UINT32_C(4294967295); + boost::uint_fast32_t uint_fast32 = UINT32_C(4294967295); + +#ifndef BOOST_NO_INT64_T + boost::int64_t int64 = INT64_C(-9223372036854775807); + boost::int_least64_t int_least64 = INT64_C(-9223372036854775807); + boost::int_fast64_t int_fast64 = INT64_C(-9223372036854775807); + + boost::uint64_t uint64 = UINT64_C(18446744073709551615); + boost::uint_least64_t uint_least64 = UINT64_C(18446744073709551615); + boost::uint_fast64_t uint_fast64 = UINT64_C(18446744073709551615); + + boost::intmax_t intmax = INTMAX_C(-9223372036854775807); + boost::uintmax_t uintmax = UINTMAX_C(18446744073709551615); +#else + boost::intmax_t intmax = INTMAX_C(-2147483647); + boost::uintmax_t uintmax = UINTMAX_C(4294967295); +#endif + + BOOST_TEST( int8 == -127 ); + BOOST_TEST( int_least8 == -127 ); + BOOST_TEST( int_fast8 == -127 ); + BOOST_TEST( uint8 == 255u ); + BOOST_TEST( uint_least8 == 255u ); + BOOST_TEST( uint_fast8 == 255u ); + BOOST_TEST( int16 == -32767 ); + BOOST_TEST( int_least16 == -32767 ); + BOOST_TEST( int_fast16 == -32767 ); + BOOST_TEST( uint16 == 65535u ); + BOOST_TEST( uint_least16 == 65535u ); + BOOST_TEST( uint_fast16 == 65535u ); + BOOST_TEST( int32 == -2147483647 ); + BOOST_TEST( int_least32 == -2147483647 ); + BOOST_TEST( int_fast32 == -2147483647 ); + BOOST_TEST( uint32 == 4294967295u ); + BOOST_TEST( uint_least32 == 4294967295u ); + BOOST_TEST( uint_fast32 == 4294967295u ); + +#ifndef BOOST_NO_INT64_T + BOOST_TEST( int64 == INT64_C(-9223372036854775807) ); + BOOST_TEST( int_least64 == INT64_C(-9223372036854775807) ); + BOOST_TEST( int_fast64 == INT64_C(-9223372036854775807) ); + BOOST_TEST( uint64 == UINT64_C(18446744073709551615) ); + BOOST_TEST( uint_least64 == UINT64_C(18446744073709551615) ); + BOOST_TEST( uint_fast64 == UINT64_C(18446744073709551615) ); + BOOST_TEST( intmax == INT64_C(-9223372036854775807) ); + BOOST_TEST( uintmax == UINT64_C(18446744073709551615) ); +#else + BOOST_TEST( intmax == -2147483647 ); + BOOST_TEST( uintmax == 4294967295u ); +#endif + + + std::cout << "OK\n"; + return boost::report_errors(); +} diff --git a/src/boost/libs/config/test/has_2arg_use_facet_fail.cpp b/src/boost/libs/config/test/has_2arg_use_facet_fail.cpp new file mode 100644 index 000000000..1d0999dcb --- /dev/null +++ b/src/boost/libs/config/test/has_2arg_use_facet_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:03:59 2004 +// 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. + +// Test file for macro BOOST_HAS_TWO_ARG_USE_FACET +// This file should not compile, if it does then +// BOOST_HAS_TWO_ARG_USE_FACET should be defined. +// See file boost_has_2arg_use_facet.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_TWO_ARG_USE_FACET +#include "boost_has_2arg_use_facet.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_two_arg_use_facet::test(); +} + diff --git a/src/boost/libs/config/test/has_2arg_use_facet_pass.cpp b/src/boost/libs/config/test/has_2arg_use_facet_pass.cpp new file mode 100644 index 000000000..dbfda303b --- /dev/null +++ b/src/boost/libs/config/test/has_2arg_use_facet_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:03:59 2004 +// 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. + +// Test file for macro BOOST_HAS_TWO_ARG_USE_FACET +// This file should compile, if it does not then +// BOOST_HAS_TWO_ARG_USE_FACET should not be defined. +// See file boost_has_2arg_use_facet.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_TWO_ARG_USE_FACET +#include "boost_has_2arg_use_facet.ipp" +#else +namespace boost_has_two_arg_use_facet = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_two_arg_use_facet::test(); +} + diff --git a/src/boost/libs/config/test/has_bethreads_fail.cpp b/src/boost/libs/config/test/has_bethreads_fail.cpp new file mode 100644 index 000000000..8606f3dc1 --- /dev/null +++ b/src/boost/libs/config/test/has_bethreads_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:03:59 2004 +// 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. + +// Test file for macro BOOST_HAS_BETHREADS +// This file should not compile, if it does then +// BOOST_HAS_BETHREADS should be defined. +// See file boost_has_bethreads.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_BETHREADS +#include "boost_has_bethreads.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_bethreads::test(); +} + diff --git a/src/boost/libs/config/test/has_bethreads_pass.cpp b/src/boost/libs/config/test/has_bethreads_pass.cpp new file mode 100644 index 000000000..5f4bbdbec --- /dev/null +++ b/src/boost/libs/config/test/has_bethreads_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:03:59 2004 +// 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. + +// Test file for macro BOOST_HAS_BETHREADS +// This file should compile, if it does not then +// BOOST_HAS_BETHREADS should not be defined. +// See file boost_has_bethreads.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_BETHREADS +#include "boost_has_bethreads.ipp" +#else +namespace boost_has_bethreads = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_bethreads::test(); +} + diff --git a/src/boost/libs/config/test/has_clock_gettime_fail.cpp b/src/boost/libs/config/test/has_clock_gettime_fail.cpp new file mode 100644 index 000000000..4cf5dfe01 --- /dev/null +++ b/src/boost/libs/config/test/has_clock_gettime_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:03:59 2004 +// 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. + +// Test file for macro BOOST_HAS_CLOCK_GETTIME +// This file should not compile, if it does then +// BOOST_HAS_CLOCK_GETTIME should be defined. +// See file boost_has_clock_gettime.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_CLOCK_GETTIME +#include "boost_has_clock_gettime.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_clock_gettime::test(); +} + diff --git a/src/boost/libs/config/test/has_clock_gettime_pass.cpp b/src/boost/libs/config/test/has_clock_gettime_pass.cpp new file mode 100644 index 000000000..16e57b4ac --- /dev/null +++ b/src/boost/libs/config/test/has_clock_gettime_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:03:59 2004 +// 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. + +// Test file for macro BOOST_HAS_CLOCK_GETTIME +// This file should compile, if it does not then +// BOOST_HAS_CLOCK_GETTIME should not be defined. +// See file boost_has_clock_gettime.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_CLOCK_GETTIME +#include "boost_has_clock_gettime.ipp" +#else +namespace boost_has_clock_gettime = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_clock_gettime::test(); +} + diff --git a/src/boost/libs/config/test/has_detect_mismatch_fail.cpp b/src/boost/libs/config/test/has_detect_mismatch_fail.cpp new file mode 100644 index 000000000..5a544b134 --- /dev/null +++ b/src/boost/libs/config/test/has_detect_mismatch_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Wed Apr 18 20:03:40 2018 +// 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_HAS_PRAGMA_DETECT_MISMATCH +// This file should not compile, if it does then +// BOOST_HAS_PRAGMA_DETECT_MISMATCH should be defined. +// See file boost_has_detect_mismatch.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_PRAGMA_DETECT_MISMATCH +#include "boost_has_detect_mismatch.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_pragma_detect_mismatch::test(); +} + diff --git a/src/boost/libs/config/test/has_detect_mismatch_pass.cpp b/src/boost/libs/config/test/has_detect_mismatch_pass.cpp new file mode 100644 index 000000000..ea47fb888 --- /dev/null +++ b/src/boost/libs/config/test/has_detect_mismatch_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Wed Apr 18 20:03:40 2018 +// 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_HAS_PRAGMA_DETECT_MISMATCH +// This file should compile, if it does not then +// BOOST_HAS_PRAGMA_DETECT_MISMATCH should not be defined. +// See file boost_has_detect_mismatch.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_PRAGMA_DETECT_MISMATCH +#include "boost_has_detect_mismatch.ipp" +#else +namespace boost_has_pragma_detect_mismatch = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_pragma_detect_mismatch::test(); +} + diff --git a/src/boost/libs/config/test/has_dirent_h_fail.cpp b/src/boost/libs/config/test/has_dirent_h_fail.cpp new file mode 100644 index 000000000..4304df30f --- /dev/null +++ b/src/boost/libs/config/test/has_dirent_h_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:03:59 2004 +// 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. + +// Test file for macro BOOST_HAS_DIRENT_H +// This file should not compile, if it does then +// BOOST_HAS_DIRENT_H should be defined. +// See file boost_has_dirent_h.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_DIRENT_H +#include "boost_has_dirent_h.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_dirent_h::test(); +} + diff --git a/src/boost/libs/config/test/has_dirent_h_pass.cpp b/src/boost/libs/config/test/has_dirent_h_pass.cpp new file mode 100644 index 000000000..184152b67 --- /dev/null +++ b/src/boost/libs/config/test/has_dirent_h_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:03:59 2004 +// 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. + +// Test file for macro BOOST_HAS_DIRENT_H +// This file should compile, if it does not then +// BOOST_HAS_DIRENT_H should not be defined. +// See file boost_has_dirent_h.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_DIRENT_H +#include "boost_has_dirent_h.ipp" +#else +namespace boost_has_dirent_h = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_dirent_h::test(); +} + diff --git a/src/boost/libs/config/test/has_expm1_fail.cpp b/src/boost/libs/config/test/has_expm1_fail.cpp new file mode 100644 index 000000000..2ccd2868e --- /dev/null +++ b/src/boost/libs/config/test/has_expm1_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Oct 14 18:38:49 2005 +// 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. + +// Test file for macro BOOST_HAS_EXPM1 +// This file should not compile, if it does then +// BOOST_HAS_EXPM1 should be defined. +// See file boost_has_expm1.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_EXPM1 +#include "boost_has_expm1.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_expm1::test(); +} + diff --git a/src/boost/libs/config/test/has_expm1_pass.cpp b/src/boost/libs/config/test/has_expm1_pass.cpp new file mode 100644 index 000000000..9f9af2f85 --- /dev/null +++ b/src/boost/libs/config/test/has_expm1_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Oct 14 18:38:49 2005 +// 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. + +// Test file for macro BOOST_HAS_EXPM1 +// This file should compile, if it does not then +// BOOST_HAS_EXPM1 should not be defined. +// See file boost_has_expm1.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_EXPM1 +#include "boost_has_expm1.ipp" +#else +namespace boost_has_expm1 = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_expm1::test(); +} + diff --git a/src/boost/libs/config/test/has_float128_fail.cpp b/src/boost/libs/config/test/has_float128_fail.cpp new file mode 100644 index 000000000..cbb42b210 --- /dev/null +++ b/src/boost/libs/config/test/has_float128_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Aug 13 16:29:35 2015 +// 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_HAS_FLOAT128 +// This file should not compile, if it does then +// BOOST_HAS_FLOAT128 should be defined. +// See file boost_has_float128.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_FLOAT128 +#include "boost_has_float128.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_float128::test(); +} + diff --git a/src/boost/libs/config/test/has_float128_pass.cpp b/src/boost/libs/config/test/has_float128_pass.cpp new file mode 100644 index 000000000..fb0a56833 --- /dev/null +++ b/src/boost/libs/config/test/has_float128_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Aug 13 16:29:35 2015 +// 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_HAS_FLOAT128 +// This file should compile, if it does not then +// BOOST_HAS_FLOAT128 should not be defined. +// See file boost_has_float128.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_FLOAT128 +#include "boost_has_float128.ipp" +#else +namespace boost_has_float128 = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_float128::test(); +} + diff --git a/src/boost/libs/config/test/has_ftime_fail.cpp b/src/boost/libs/config/test/has_ftime_fail.cpp new file mode 100644 index 000000000..ecbfde361 --- /dev/null +++ b/src/boost/libs/config/test/has_ftime_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:03:59 2004 +// 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. + +// Test file for macro BOOST_HAS_FTIME +// This file should not compile, if it does then +// BOOST_HAS_FTIME should be defined. +// See file boost_has_ftime.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_FTIME +#include "boost_has_ftime.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_ftime::test(); +} + diff --git a/src/boost/libs/config/test/has_ftime_pass.cpp b/src/boost/libs/config/test/has_ftime_pass.cpp new file mode 100644 index 000000000..6dc150f2b --- /dev/null +++ b/src/boost/libs/config/test/has_ftime_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:03:59 2004 +// 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. + +// Test file for macro BOOST_HAS_FTIME +// This file should compile, if it does not then +// BOOST_HAS_FTIME should not be defined. +// See file boost_has_ftime.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_FTIME +#include "boost_has_ftime.ipp" +#else +namespace boost_has_ftime = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_ftime::test(); +} + diff --git a/src/boost/libs/config/test/has_getsystemtimeasfiletime_fail.cpp b/src/boost/libs/config/test/has_getsystemtimeasfiletime_fail.cpp new file mode 100644 index 000000000..154149385 --- /dev/null +++ b/src/boost/libs/config/test/has_getsystemtimeasfiletime_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Wed Jul 13 18:50:13 2011 +// 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: generate.cpp 72327 2011-06-01 14:51:03Z eric_niebler $ +// + + +// Test file for macro BOOST_HAS_GETSYSTEMTIMEASFILETIME +// This file should not compile, if it does then +// BOOST_HAS_GETSYSTEMTIMEASFILETIME should be defined. +// See file boost_has_getsystemtimeasfiletime.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_GETSYSTEMTIMEASFILETIME +#include "boost_has_getsystemtimeasfiletime.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_getsystemtimeasfiletime::test(); +} + diff --git a/src/boost/libs/config/test/has_getsystemtimeasfiletime_pass.cpp b/src/boost/libs/config/test/has_getsystemtimeasfiletime_pass.cpp new file mode 100644 index 000000000..e8ea83bbe --- /dev/null +++ b/src/boost/libs/config/test/has_getsystemtimeasfiletime_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Wed Jul 13 18:50:13 2011 +// 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: generate.cpp 72327 2011-06-01 14:51:03Z eric_niebler $ +// + + +// Test file for macro BOOST_HAS_GETSYSTEMTIMEASFILETIME +// This file should compile, if it does not then +// BOOST_HAS_GETSYSTEMTIMEASFILETIME should not be defined. +// See file boost_has_getsystemtimeasfiletime.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_GETSYSTEMTIMEASFILETIME +#include "boost_has_getsystemtimeasfiletime.ipp" +#else +namespace boost_has_getsystemtimeasfiletime = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_getsystemtimeasfiletime::test(); +} + diff --git a/src/boost/libs/config/test/has_gettimeofday_fail.cpp b/src/boost/libs/config/test/has_gettimeofday_fail.cpp new file mode 100644 index 000000000..4f59b562c --- /dev/null +++ b/src/boost/libs/config/test/has_gettimeofday_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:03:59 2004 +// 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. + +// Test file for macro BOOST_HAS_GETTIMEOFDAY +// This file should not compile, if it does then +// BOOST_HAS_GETTIMEOFDAY should be defined. +// See file boost_has_gettimeofday.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_GETTIMEOFDAY +#include "boost_has_gettimeofday.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_gettimeofday::test(); +} + diff --git a/src/boost/libs/config/test/has_gettimeofday_pass.cpp b/src/boost/libs/config/test/has_gettimeofday_pass.cpp new file mode 100644 index 000000000..033a88fe3 --- /dev/null +++ b/src/boost/libs/config/test/has_gettimeofday_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:03:59 2004 +// 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. + +// Test file for macro BOOST_HAS_GETTIMEOFDAY +// This file should compile, if it does not then +// BOOST_HAS_GETTIMEOFDAY should not be defined. +// See file boost_has_gettimeofday.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_GETTIMEOFDAY +#include "boost_has_gettimeofday.ipp" +#else +namespace boost_has_gettimeofday = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_gettimeofday::test(); +} + diff --git a/src/boost/libs/config/test/has_hash_fail.cpp b/src/boost/libs/config/test/has_hash_fail.cpp new file mode 100644 index 000000000..6b3ac3a60 --- /dev/null +++ b/src/boost/libs/config/test/has_hash_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:03:59 2004 +// 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. + +// Test file for macro BOOST_HAS_HASH +// This file should not compile, if it does then +// BOOST_HAS_HASH should be defined. +// See file boost_has_hash.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_HASH +#include "boost_has_hash.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_hash::test(); +} + diff --git a/src/boost/libs/config/test/has_hash_pass.cpp b/src/boost/libs/config/test/has_hash_pass.cpp new file mode 100644 index 000000000..3f3dd82f5 --- /dev/null +++ b/src/boost/libs/config/test/has_hash_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:03:59 2004 +// 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. + +// Test file for macro BOOST_HAS_HASH +// This file should compile, if it does not then +// BOOST_HAS_HASH should not be defined. +// See file boost_has_hash.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_HASH +#include "boost_has_hash.ipp" +#else +namespace boost_has_hash = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_hash::test(); +} + diff --git a/src/boost/libs/config/test/has_int128_fail.cpp b/src/boost/libs/config/test/has_int128_fail.cpp new file mode 100644 index 000000000..a22755710 --- /dev/null +++ b/src/boost/libs/config/test/has_int128_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Oct 25 10:14:36 2012 +// 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_HAS_INT128 +// This file should not compile, if it does then +// BOOST_HAS_INT128 should be defined. +// See file boost_has_int128.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_INT128 +#include "boost_has_int128.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_int128::test(); +} + diff --git a/src/boost/libs/config/test/has_int128_pass.cpp b/src/boost/libs/config/test/has_int128_pass.cpp new file mode 100644 index 000000000..9c5939013 --- /dev/null +++ b/src/boost/libs/config/test/has_int128_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Oct 25 10:14:36 2012 +// 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_HAS_INT128 +// This file should compile, if it does not then +// BOOST_HAS_INT128 should not be defined. +// See file boost_has_int128.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_INT128 +#include "boost_has_int128.ipp" +#else +namespace boost_has_int128 = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_int128::test(); +} + diff --git a/src/boost/libs/config/test/has_log1p_fail.cpp b/src/boost/libs/config/test/has_log1p_fail.cpp new file mode 100644 index 000000000..a2de7cbe4 --- /dev/null +++ b/src/boost/libs/config/test/has_log1p_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Apr 02 11:49:11 2005 +// 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. + +// Test file for macro BOOST_HAS_LOG1P +// This file should not compile, if it does then +// BOOST_HAS_LOG1P should be defined. +// See file boost_has_log1p.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_LOG1P +#include "boost_has_log1p.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_log1p::test(); +} + diff --git a/src/boost/libs/config/test/has_log1p_pass.cpp b/src/boost/libs/config/test/has_log1p_pass.cpp new file mode 100644 index 000000000..bf44febfe --- /dev/null +++ b/src/boost/libs/config/test/has_log1p_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Apr 02 11:49:11 2005 +// 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. + +// Test file for macro BOOST_HAS_LOG1P +// This file should compile, if it does not then +// BOOST_HAS_LOG1P should not be defined. +// See file boost_has_log1p.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_LOG1P +#include "boost_has_log1p.ipp" +#else +namespace boost_has_log1p = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_log1p::test(); +} + diff --git a/src/boost/libs/config/test/has_long_long_fail.cpp b/src/boost/libs/config/test/has_long_long_fail.cpp new file mode 100644 index 000000000..84632676d --- /dev/null +++ b/src/boost/libs/config/test/has_long_long_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_LONG_LONG +// This file should not compile, if it does then +// BOOST_HAS_LONG_LONG should be defined. +// See file boost_has_long_long.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_LONG_LONG +#include "boost_has_long_long.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_long_long::test(); +} + diff --git a/src/boost/libs/config/test/has_long_long_pass.cpp b/src/boost/libs/config/test/has_long_long_pass.cpp new file mode 100644 index 000000000..6042e6677 --- /dev/null +++ b/src/boost/libs/config/test/has_long_long_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_LONG_LONG +// This file should compile, if it does not then +// BOOST_HAS_LONG_LONG should not be defined. +// See file boost_has_long_long.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_LONG_LONG +#include "boost_has_long_long.ipp" +#else +namespace boost_has_long_long = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_long_long::test(); +} + diff --git a/src/boost/libs/config/test/has_macro_use_facet_fail.cpp b/src/boost/libs/config/test/has_macro_use_facet_fail.cpp new file mode 100644 index 000000000..8da11830a --- /dev/null +++ b/src/boost/libs/config/test/has_macro_use_facet_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_MACRO_USE_FACET +// This file should not compile, if it does then +// BOOST_HAS_MACRO_USE_FACET should be defined. +// See file boost_has_macro_use_facet.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_MACRO_USE_FACET +#include "boost_has_macro_use_facet.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_macro_use_facet::test(); +} + diff --git a/src/boost/libs/config/test/has_macro_use_facet_pass.cpp b/src/boost/libs/config/test/has_macro_use_facet_pass.cpp new file mode 100644 index 000000000..041d026ab --- /dev/null +++ b/src/boost/libs/config/test/has_macro_use_facet_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_MACRO_USE_FACET +// This file should compile, if it does not then +// BOOST_HAS_MACRO_USE_FACET should not be defined. +// See file boost_has_macro_use_facet.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_MACRO_USE_FACET +#include "boost_has_macro_use_facet.ipp" +#else +namespace boost_has_macro_use_facet = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_macro_use_facet::test(); +} + diff --git a/src/boost/libs/config/test/has_ms_int64_fail.cpp b/src/boost/libs/config/test/has_ms_int64_fail.cpp new file mode 100644 index 000000000..6171feda5 --- /dev/null +++ b/src/boost/libs/config/test/has_ms_int64_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_MS_INT64 +// This file should not compile, if it does then +// BOOST_HAS_MS_INT64 should be defined. +// See file boost_has_ms_int64.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_MS_INT64 +#include "boost_has_ms_int64.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_ms_int64::test(); +} + diff --git a/src/boost/libs/config/test/has_ms_int64_pass.cpp b/src/boost/libs/config/test/has_ms_int64_pass.cpp new file mode 100644 index 000000000..94038d994 --- /dev/null +++ b/src/boost/libs/config/test/has_ms_int64_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_MS_INT64 +// This file should compile, if it does not then +// BOOST_HAS_MS_INT64 should not be defined. +// See file boost_has_ms_int64.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_MS_INT64 +#include "boost_has_ms_int64.ipp" +#else +namespace boost_has_ms_int64 = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_ms_int64::test(); +} + diff --git a/src/boost/libs/config/test/has_nanosleep_fail.cpp b/src/boost/libs/config/test/has_nanosleep_fail.cpp new file mode 100644 index 000000000..cb7eba90a --- /dev/null +++ b/src/boost/libs/config/test/has_nanosleep_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_NANOSLEEP +// This file should not compile, if it does then +// BOOST_HAS_NANOSLEEP should be defined. +// See file boost_has_nanosleep.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_NANOSLEEP +#include "boost_has_nanosleep.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_nanosleep::test(); +} + diff --git a/src/boost/libs/config/test/has_nanosleep_pass.cpp b/src/boost/libs/config/test/has_nanosleep_pass.cpp new file mode 100644 index 000000000..3aeac63cc --- /dev/null +++ b/src/boost/libs/config/test/has_nanosleep_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_NANOSLEEP +// This file should compile, if it does not then +// BOOST_HAS_NANOSLEEP should not be defined. +// See file boost_has_nanosleep.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_NANOSLEEP +#include "boost_has_nanosleep.ipp" +#else +namespace boost_has_nanosleep = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_nanosleep::test(); +} + diff --git a/src/boost/libs/config/test/has_nl_types_h_fail.cpp b/src/boost/libs/config/test/has_nl_types_h_fail.cpp new file mode 100644 index 000000000..ffd76cf32 --- /dev/null +++ b/src/boost/libs/config/test/has_nl_types_h_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_NL_TYPES_H +// This file should not compile, if it does then +// BOOST_HAS_NL_TYPES_H should be defined. +// See file boost_has_nl_types_h.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_NL_TYPES_H +#include "boost_has_nl_types_h.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_nl_types_h::test(); +} + diff --git a/src/boost/libs/config/test/has_nl_types_h_pass.cpp b/src/boost/libs/config/test/has_nl_types_h_pass.cpp new file mode 100644 index 000000000..631031491 --- /dev/null +++ b/src/boost/libs/config/test/has_nl_types_h_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_NL_TYPES_H +// This file should compile, if it does not then +// BOOST_HAS_NL_TYPES_H should not be defined. +// See file boost_has_nl_types_h.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_NL_TYPES_H +#include "boost_has_nl_types_h.ipp" +#else +namespace boost_has_nl_types_h = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_nl_types_h::test(); +} + diff --git a/src/boost/libs/config/test/has_nrvo_fail.cpp b/src/boost/libs/config/test/has_nrvo_fail.cpp new file mode 100644 index 000000000..c05f17cee --- /dev/null +++ b/src/boost/libs/config/test/has_nrvo_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_NRVO +// This file should not compile, if it does then +// BOOST_HAS_NRVO should be defined. +// See file boost_has_nrvo.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_NRVO +#include "boost_has_nrvo.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_nrvo::test(); +} + diff --git a/src/boost/libs/config/test/has_nrvo_pass.cpp b/src/boost/libs/config/test/has_nrvo_pass.cpp new file mode 100644 index 000000000..e216186a7 --- /dev/null +++ b/src/boost/libs/config/test/has_nrvo_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_NRVO +// This file should compile, if it does not then +// BOOST_HAS_NRVO should not be defined. +// See file boost_has_nrvo.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_NRVO +#include "boost_has_nrvo.ipp" +#else +namespace boost_has_nrvo = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_nrvo::test(); +} + diff --git a/src/boost/libs/config/test/has_part_alloc_fail.cpp b/src/boost/libs/config/test/has_part_alloc_fail.cpp new file mode 100644 index 000000000..33c54247e --- /dev/null +++ b/src/boost/libs/config/test/has_part_alloc_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_PARTIAL_STD_ALLOCATOR +// This file should not compile, if it does then +// BOOST_HAS_PARTIAL_STD_ALLOCATOR should be defined. +// See file boost_has_part_alloc.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_PARTIAL_STD_ALLOCATOR +#include "boost_has_part_alloc.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_partial_std_allocator::test(); +} + diff --git a/src/boost/libs/config/test/has_part_alloc_pass.cpp b/src/boost/libs/config/test/has_part_alloc_pass.cpp new file mode 100644 index 000000000..c885e20b7 --- /dev/null +++ b/src/boost/libs/config/test/has_part_alloc_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_PARTIAL_STD_ALLOCATOR +// This file should compile, if it does not then +// BOOST_HAS_PARTIAL_STD_ALLOCATOR should not be defined. +// See file boost_has_part_alloc.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_PARTIAL_STD_ALLOCATOR +#include "boost_has_part_alloc.ipp" +#else +namespace boost_has_partial_std_allocator = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_partial_std_allocator::test(); +} + diff --git a/src/boost/libs/config/test/has_pthread_delay_np_fail.cpp b/src/boost/libs/config/test/has_pthread_delay_np_fail.cpp new file mode 100644 index 000000000..9f21869ac --- /dev/null +++ b/src/boost/libs/config/test/has_pthread_delay_np_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_PTHREAD_DELAY_NP +// This file should not compile, if it does then +// BOOST_HAS_PTHREAD_DELAY_NP should be defined. +// See file boost_has_pthread_delay_np.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_PTHREAD_DELAY_NP +#include "boost_has_pthread_delay_np.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_pthread_delay_np::test(); +} + diff --git a/src/boost/libs/config/test/has_pthread_delay_np_pass.cpp b/src/boost/libs/config/test/has_pthread_delay_np_pass.cpp new file mode 100644 index 000000000..6f78617a4 --- /dev/null +++ b/src/boost/libs/config/test/has_pthread_delay_np_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_PTHREAD_DELAY_NP +// This file should compile, if it does not then +// BOOST_HAS_PTHREAD_DELAY_NP should not be defined. +// See file boost_has_pthread_delay_np.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_PTHREAD_DELAY_NP +#include "boost_has_pthread_delay_np.ipp" +#else +namespace boost_has_pthread_delay_np = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_pthread_delay_np::test(); +} + diff --git a/src/boost/libs/config/test/has_pthread_ma_st_fail.cpp b/src/boost/libs/config/test/has_pthread_ma_st_fail.cpp new file mode 100644 index 000000000..a3bbab8e0 --- /dev/null +++ b/src/boost/libs/config/test/has_pthread_ma_st_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE +// This file should not compile, if it does then +// BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE should be defined. +// See file boost_has_pthread_ma_st.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE +#include "boost_has_pthread_ma_st.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_pthread_mutexattr_settype::test(); +} + diff --git a/src/boost/libs/config/test/has_pthread_ma_st_pass.cpp b/src/boost/libs/config/test/has_pthread_ma_st_pass.cpp new file mode 100644 index 000000000..a0cb1a091 --- /dev/null +++ b/src/boost/libs/config/test/has_pthread_ma_st_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE +// This file should compile, if it does not then +// BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE should not be defined. +// See file boost_has_pthread_ma_st.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE +#include "boost_has_pthread_ma_st.ipp" +#else +namespace boost_has_pthread_mutexattr_settype = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_pthread_mutexattr_settype::test(); +} + diff --git a/src/boost/libs/config/test/has_pthread_yield_fail.cpp b/src/boost/libs/config/test/has_pthread_yield_fail.cpp new file mode 100644 index 000000000..eb4228b25 --- /dev/null +++ b/src/boost/libs/config/test/has_pthread_yield_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_PTHREAD_YIELD +// This file should not compile, if it does then +// BOOST_HAS_PTHREAD_YIELD should be defined. +// See file boost_has_pthread_yield.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_PTHREAD_YIELD +#include "boost_has_pthread_yield.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_pthread_yield::test(); +} + diff --git a/src/boost/libs/config/test/has_pthread_yield_pass.cpp b/src/boost/libs/config/test/has_pthread_yield_pass.cpp new file mode 100644 index 000000000..4af209a09 --- /dev/null +++ b/src/boost/libs/config/test/has_pthread_yield_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_PTHREAD_YIELD +// This file should compile, if it does not then +// BOOST_HAS_PTHREAD_YIELD should not be defined. +// See file boost_has_pthread_yield.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_PTHREAD_YIELD +#include "boost_has_pthread_yield.ipp" +#else +namespace boost_has_pthread_yield = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_pthread_yield::test(); +} + diff --git a/src/boost/libs/config/test/has_pthreads_fail.cpp b/src/boost/libs/config/test/has_pthreads_fail.cpp new file mode 100644 index 000000000..14156648a --- /dev/null +++ b/src/boost/libs/config/test/has_pthreads_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_PTHREADS +// This file should not compile, if it does then +// BOOST_HAS_PTHREADS should be defined. +// See file boost_has_pthreads.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_PTHREADS +#include "boost_has_pthreads.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_pthreads::test(); +} + diff --git a/src/boost/libs/config/test/has_pthreads_pass.cpp b/src/boost/libs/config/test/has_pthreads_pass.cpp new file mode 100644 index 000000000..0737392f7 --- /dev/null +++ b/src/boost/libs/config/test/has_pthreads_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_PTHREADS +// This file should compile, if it does not then +// BOOST_HAS_PTHREADS should not be defined. +// See file boost_has_pthreads.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_PTHREADS +#include "boost_has_pthreads.ipp" +#else +namespace boost_has_pthreads = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_pthreads::test(); +} + diff --git a/src/boost/libs/config/test/has_rvalue_refs_fail.cpp b/src/boost/libs/config/test/has_rvalue_refs_fail.cpp new file mode 100644 index 000000000..cf880e965 --- /dev/null +++ b/src/boost/libs/config/test/has_rvalue_refs_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Aug 25 12:32:21 2007 +// 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. + +// Test file for macro BOOST_HAS_RVALUE_REFS +// This file should not compile, if it does then +// BOOST_HAS_RVALUE_REFS should be defined. +// See file boost_has_rvalue_refs.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_RVALUE_REFS +#include "boost_has_rvalue_refs.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_rvalue_refs::test(); +} + diff --git a/src/boost/libs/config/test/has_rvalue_refs_pass.cpp b/src/boost/libs/config/test/has_rvalue_refs_pass.cpp new file mode 100644 index 000000000..616924949 --- /dev/null +++ b/src/boost/libs/config/test/has_rvalue_refs_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Aug 25 12:32:21 2007 +// 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. + +// Test file for macro BOOST_HAS_RVALUE_REFS +// This file should compile, if it does not then +// BOOST_HAS_RVALUE_REFS should not be defined. +// See file boost_has_rvalue_refs.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_RVALUE_REFS +#include "boost_has_rvalue_refs.ipp" +#else +namespace boost_has_rvalue_refs = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_rvalue_refs::test(); +} + diff --git a/src/boost/libs/config/test/has_sched_yield_fail.cpp b/src/boost/libs/config/test/has_sched_yield_fail.cpp new file mode 100644 index 000000000..b494ed10e --- /dev/null +++ b/src/boost/libs/config/test/has_sched_yield_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_SCHED_YIELD +// This file should not compile, if it does then +// BOOST_HAS_SCHED_YIELD should be defined. +// See file boost_has_sched_yield.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_SCHED_YIELD +#include "boost_has_sched_yield.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_sched_yield::test(); +} + diff --git a/src/boost/libs/config/test/has_sched_yield_pass.cpp b/src/boost/libs/config/test/has_sched_yield_pass.cpp new file mode 100644 index 000000000..56741d1f7 --- /dev/null +++ b/src/boost/libs/config/test/has_sched_yield_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_SCHED_YIELD +// This file should compile, if it does not then +// BOOST_HAS_SCHED_YIELD should not be defined. +// See file boost_has_sched_yield.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_SCHED_YIELD +#include "boost_has_sched_yield.ipp" +#else +namespace boost_has_sched_yield = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_sched_yield::test(); +} + diff --git a/src/boost/libs/config/test/has_sgi_type_traits_fail.cpp b/src/boost/libs/config/test/has_sgi_type_traits_fail.cpp new file mode 100644 index 000000000..1be718299 --- /dev/null +++ b/src/boost/libs/config/test/has_sgi_type_traits_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_SGI_TYPE_TRAITS +// This file should not compile, if it does then +// BOOST_HAS_SGI_TYPE_TRAITS should be defined. +// See file boost_has_sgi_type_traits.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_SGI_TYPE_TRAITS +#include "boost_has_sgi_type_traits.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_sgi_type_traits::test(); +} + diff --git a/src/boost/libs/config/test/has_sgi_type_traits_pass.cpp b/src/boost/libs/config/test/has_sgi_type_traits_pass.cpp new file mode 100644 index 000000000..81f059205 --- /dev/null +++ b/src/boost/libs/config/test/has_sgi_type_traits_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_SGI_TYPE_TRAITS +// This file should compile, if it does not then +// BOOST_HAS_SGI_TYPE_TRAITS should not be defined. +// See file boost_has_sgi_type_traits.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_SGI_TYPE_TRAITS +#include "boost_has_sgi_type_traits.ipp" +#else +namespace boost_has_sgi_type_traits = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_sgi_type_traits::test(); +} + diff --git a/src/boost/libs/config/test/has_sigaction_fail.cpp b/src/boost/libs/config/test/has_sigaction_fail.cpp new file mode 100644 index 000000000..b9ea9891f --- /dev/null +++ b/src/boost/libs/config/test/has_sigaction_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_SIGACTION +// This file should not compile, if it does then +// BOOST_HAS_SIGACTION should be defined. +// See file boost_has_sigaction.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_SIGACTION +#include "boost_has_sigaction.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_sigaction::test(); +} + diff --git a/src/boost/libs/config/test/has_sigaction_pass.cpp b/src/boost/libs/config/test/has_sigaction_pass.cpp new file mode 100644 index 000000000..5fa104091 --- /dev/null +++ b/src/boost/libs/config/test/has_sigaction_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_SIGACTION +// This file should compile, if it does not then +// BOOST_HAS_SIGACTION should not be defined. +// See file boost_has_sigaction.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_SIGACTION +#include "boost_has_sigaction.ipp" +#else +namespace boost_has_sigaction = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_sigaction::test(); +} + diff --git a/src/boost/libs/config/test/has_slist_fail.cpp b/src/boost/libs/config/test/has_slist_fail.cpp new file mode 100644 index 000000000..0d656fda2 --- /dev/null +++ b/src/boost/libs/config/test/has_slist_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_SLIST +// This file should not compile, if it does then +// BOOST_HAS_SLIST should be defined. +// See file boost_has_slist.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_SLIST +#include "boost_has_slist.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_slist::test(); +} + diff --git a/src/boost/libs/config/test/has_slist_pass.cpp b/src/boost/libs/config/test/has_slist_pass.cpp new file mode 100644 index 000000000..79af70055 --- /dev/null +++ b/src/boost/libs/config/test/has_slist_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_SLIST +// This file should compile, if it does not then +// BOOST_HAS_SLIST should not be defined. +// See file boost_has_slist.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_SLIST +#include "boost_has_slist.ipp" +#else +namespace boost_has_slist = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_slist::test(); +} + diff --git a/src/boost/libs/config/test/has_static_assert_fail.cpp b/src/boost/libs/config/test/has_static_assert_fail.cpp new file mode 100644 index 000000000..a6456edb2 --- /dev/null +++ b/src/boost/libs/config/test/has_static_assert_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Aug 25 12:32:21 2007 +// 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. + +// Test file for macro BOOST_HAS_STATIC_ASSERT +// This file should not compile, if it does then +// BOOST_HAS_STATIC_ASSERT should be defined. +// See file boost_has_static_assert.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_STATIC_ASSERT +#include "boost_has_static_assert.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_static_assert::test(); +} + diff --git a/src/boost/libs/config/test/has_static_assert_pass.cpp b/src/boost/libs/config/test/has_static_assert_pass.cpp new file mode 100644 index 000000000..00f038975 --- /dev/null +++ b/src/boost/libs/config/test/has_static_assert_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Aug 25 12:32:21 2007 +// 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. + +// Test file for macro BOOST_HAS_STATIC_ASSERT +// This file should compile, if it does not then +// BOOST_HAS_STATIC_ASSERT should not be defined. +// See file boost_has_static_assert.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_STATIC_ASSERT +#include "boost_has_static_assert.ipp" +#else +namespace boost_has_static_assert = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_static_assert::test(); +} + diff --git a/src/boost/libs/config/test/has_stdint_h_fail.cpp b/src/boost/libs/config/test/has_stdint_h_fail.cpp new file mode 100644 index 000000000..66a1017bf --- /dev/null +++ b/src/boost/libs/config/test/has_stdint_h_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_STDINT_H +// This file should not compile, if it does then +// BOOST_HAS_STDINT_H should be defined. +// See file boost_has_stdint_h.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_STDINT_H +#include "boost_has_stdint_h.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_stdint_h::test(); +} + diff --git a/src/boost/libs/config/test/has_stdint_h_pass.cpp b/src/boost/libs/config/test/has_stdint_h_pass.cpp new file mode 100644 index 000000000..4b8eca9b2 --- /dev/null +++ b/src/boost/libs/config/test/has_stdint_h_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_STDINT_H +// This file should compile, if it does not then +// BOOST_HAS_STDINT_H should not be defined. +// See file boost_has_stdint_h.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_STDINT_H +#include "boost_has_stdint_h.ipp" +#else +namespace boost_has_stdint_h = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_stdint_h::test(); +} + diff --git a/src/boost/libs/config/test/has_stlp_use_facet_fail.cpp b/src/boost/libs/config/test/has_stlp_use_facet_fail.cpp new file mode 100644 index 000000000..115f03b3f --- /dev/null +++ b/src/boost/libs/config/test/has_stlp_use_facet_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_STLP_USE_FACET +// This file should not compile, if it does then +// BOOST_HAS_STLP_USE_FACET should be defined. +// See file boost_has_stlp_use_facet.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_STLP_USE_FACET +#include "boost_has_stlp_use_facet.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_stlp_use_facet::test(); +} + diff --git a/src/boost/libs/config/test/has_stlp_use_facet_pass.cpp b/src/boost/libs/config/test/has_stlp_use_facet_pass.cpp new file mode 100644 index 000000000..9c50c6336 --- /dev/null +++ b/src/boost/libs/config/test/has_stlp_use_facet_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_STLP_USE_FACET +// This file should compile, if it does not then +// BOOST_HAS_STLP_USE_FACET should not be defined. +// See file boost_has_stlp_use_facet.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_STLP_USE_FACET +#include "boost_has_stlp_use_facet.ipp" +#else +namespace boost_has_stlp_use_facet = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_stlp_use_facet::test(); +} + diff --git a/src/boost/libs/config/test/has_unistd_h_fail.cpp b/src/boost/libs/config/test/has_unistd_h_fail.cpp new file mode 100644 index 000000000..363aea220 --- /dev/null +++ b/src/boost/libs/config/test/has_unistd_h_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_UNISTD_H +// This file should not compile, if it does then +// BOOST_HAS_UNISTD_H should be defined. +// See file boost_has_unistd_h.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_UNISTD_H +#include "boost_has_unistd_h.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_unistd_h::test(); +} + diff --git a/src/boost/libs/config/test/has_unistd_h_pass.cpp b/src/boost/libs/config/test/has_unistd_h_pass.cpp new file mode 100644 index 000000000..70f813755 --- /dev/null +++ b/src/boost/libs/config/test/has_unistd_h_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_UNISTD_H +// This file should compile, if it does not then +// BOOST_HAS_UNISTD_H should not be defined. +// See file boost_has_unistd_h.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_UNISTD_H +#include "boost_has_unistd_h.ipp" +#else +namespace boost_has_unistd_h = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_unistd_h::test(); +} + diff --git a/src/boost/libs/config/test/has_variadic_tmpl_fail.cpp b/src/boost/libs/config/test/has_variadic_tmpl_fail.cpp new file mode 100644 index 000000000..17baab780 --- /dev/null +++ b/src/boost/libs/config/test/has_variadic_tmpl_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Aug 25 12:32:21 2007 +// 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. + +// Test file for macro BOOST_HAS_VARIADIC_TMPL +// This file should not compile, if it does then +// BOOST_HAS_VARIADIC_TMPL should be defined. +// See file boost_has_variadic_tmpl.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_VARIADIC_TMPL +#include "boost_has_variadic_tmpl.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_variadic_tmpl::test(); +} + diff --git a/src/boost/libs/config/test/has_variadic_tmpl_pass.cpp b/src/boost/libs/config/test/has_variadic_tmpl_pass.cpp new file mode 100644 index 000000000..8b65b8d22 --- /dev/null +++ b/src/boost/libs/config/test/has_variadic_tmpl_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Aug 25 12:32:21 2007 +// 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. + +// Test file for macro BOOST_HAS_VARIADIC_TMPL +// This file should compile, if it does not then +// BOOST_HAS_VARIADIC_TMPL should not be defined. +// See file boost_has_variadic_tmpl.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_VARIADIC_TMPL +#include "boost_has_variadic_tmpl.ipp" +#else +namespace boost_has_variadic_tmpl = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_variadic_tmpl::test(); +} + diff --git a/src/boost/libs/config/test/has_vc6_mem_templ_fail.cpp b/src/boost/libs/config/test/has_vc6_mem_templ_fail.cpp new file mode 100644 index 000000000..6fa512abe --- /dev/null +++ b/src/boost/libs/config/test/has_vc6_mem_templ_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_MSVC6_MEMBER_TEMPLATES +// This file should not compile, if it does then +// BOOST_MSVC6_MEMBER_TEMPLATES should be defined. +// See file boost_has_vc6_mem_templ.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_MSVC6_MEMBER_TEMPLATES +#include "boost_has_vc6_mem_templ.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_msvc6_member_templates::test(); +} + diff --git a/src/boost/libs/config/test/has_vc6_mem_templ_pass.cpp b/src/boost/libs/config/test/has_vc6_mem_templ_pass.cpp new file mode 100644 index 000000000..85325a9de --- /dev/null +++ b/src/boost/libs/config/test/has_vc6_mem_templ_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_MSVC6_MEMBER_TEMPLATES +// This file should compile, if it does not then +// BOOST_MSVC6_MEMBER_TEMPLATES should not be defined. +// See file boost_has_vc6_mem_templ.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_MSVC6_MEMBER_TEMPLATES +#include "boost_has_vc6_mem_templ.ipp" +#else +namespace boost_msvc6_member_templates = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_msvc6_member_templates::test(); +} + diff --git a/src/boost/libs/config/test/has_vc_iterator_fail.cpp b/src/boost/libs/config/test/has_vc_iterator_fail.cpp new file mode 100644 index 000000000..e453e56ac --- /dev/null +++ b/src/boost/libs/config/test/has_vc_iterator_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_MSVC_STD_ITERATOR +// This file should not compile, if it does then +// BOOST_MSVC_STD_ITERATOR should be defined. +// See file boost_has_vc_iterator.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_MSVC_STD_ITERATOR +#include "boost_has_vc_iterator.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_msvc_std_iterator::test(); +} + diff --git a/src/boost/libs/config/test/has_vc_iterator_pass.cpp b/src/boost/libs/config/test/has_vc_iterator_pass.cpp new file mode 100644 index 000000000..102cab736 --- /dev/null +++ b/src/boost/libs/config/test/has_vc_iterator_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_MSVC_STD_ITERATOR +// This file should compile, if it does not then +// BOOST_MSVC_STD_ITERATOR should not be defined. +// See file boost_has_vc_iterator.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_MSVC_STD_ITERATOR +#include "boost_has_vc_iterator.ipp" +#else +namespace boost_msvc_std_iterator = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_msvc_std_iterator::test(); +} + diff --git a/src/boost/libs/config/test/has_winthreads_fail.cpp b/src/boost/libs/config/test/has_winthreads_fail.cpp new file mode 100644 index 000000000..e9f6c7142 --- /dev/null +++ b/src/boost/libs/config/test/has_winthreads_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_WINTHREADS +// This file should not compile, if it does then +// BOOST_HAS_WINTHREADS should be defined. +// See file boost_has_winthreads.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_HAS_WINTHREADS +#include "boost_has_winthreads.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_has_winthreads::test(); +} + diff --git a/src/boost/libs/config/test/has_winthreads_pass.cpp b/src/boost/libs/config/test/has_winthreads_pass.cpp new file mode 100644 index 000000000..49d020fc9 --- /dev/null +++ b/src/boost/libs/config/test/has_winthreads_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_HAS_WINTHREADS +// This file should compile, if it does not then +// BOOST_HAS_WINTHREADS should not be defined. +// See file boost_has_winthreads.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_HAS_WINTHREADS +#include "boost_has_winthreads.ipp" +#else +namespace boost_has_winthreads = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_has_winthreads::test(); +} + diff --git a/src/boost/libs/config/test/header_deprecated_test.cpp b/src/boost/libs/config/test/header_deprecated_test.cpp new file mode 100644 index 000000000..6a99a97d5 --- /dev/null +++ b/src/boost/libs/config/test/header_deprecated_test.cpp @@ -0,0 +1,18 @@ +// Copyright 2017 Peter Dimov. +// +// Distributed under 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 + +#include <boost/config/header_deprecated.hpp> + +BOOST_HEADER_DEPRECATED("<boost/config/workaround.hpp>") + +#define ALTERNATIVE "the suitable component header" +BOOST_HEADER_DEPRECATED(ALTERNATIVE) + +#include <boost/config.hpp> // BOOST_STRINGIZE + +#define HEADER <boost/config/workaround.hpp> +BOOST_HEADER_DEPRECATED(BOOST_STRINGIZE(HEADER)) diff --git a/src/boost/libs/config/test/helper_macro_test.cpp b/src/boost/libs/config/test/helper_macro_test.cpp new file mode 100644 index 000000000..18b9268a7 --- /dev/null +++ b/src/boost/libs/config/test/helper_macro_test.cpp @@ -0,0 +1,87 @@ +// (C) Copyright John Maddock 2014-9. +// (C) Copyright Andrey Semashev 2017. +// 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) + +#include <boost/config.hpp> + +int test_fallthrough(int n) +{ + switch (n) + { + case 0: + n++; + BOOST_FALLTHROUGH; + case 1: + n++; + break; + } + return n; +} + +int test_unreachable(int i) +{ + if(BOOST_LIKELY(i)) return i; + + throw i; + BOOST_UNREACHABLE_RETURN(0) // NOTE: no semicolon afterwards!! +} + +BOOST_FORCEINLINE int always_inline(int i){ return ++i; } +BOOST_NOINLINE int never_inline(int i){ return ++i; } + +BOOST_NORETURN void always_throw() +{ + throw 0; +} + +struct BOOST_MAY_ALIAS aliasing_struct {}; +typedef unsigned int BOOST_MAY_ALIAS aliasing_uint; + +struct BOOST_ATTRIBUTE_NODISCARD nodiscard_struct {}; + + +#define test_fallthrough(x) foobar(x) + +struct empty {}; +struct no_unique +{ + int a; + BOOST_ATTRIBUTE_NO_UNIQUE_ADDRESS empty b; +}; + +template <bool b> +struct trait +{ + enum { value = b }; +}; + + +int main() +{ + typedef int unused_type BOOST_ATTRIBUTE_UNUSED; + try + { + int result = test_fallthrough BOOST_PREVENT_MACRO_SUBSTITUTION(0); + BOOST_STATIC_CONSTANT(bool, value = 0); + result += test_unreachable(1); + result += always_inline(2); + result += never_inline(3); + if(BOOST_UNLIKELY(!result)) + always_throw(); + nodiscard_struct s; + no_unique no_un; + + BOOST_IF_CONSTEXPR(trait<true>::value) + { + result += 2; + } + } + catch(int) + { + return 1; + } + return 0; +} + diff --git a/src/boost/libs/config/test/helper_macros_test.cpp b/src/boost/libs/config/test/helper_macros_test.cpp new file mode 100644 index 000000000..5bbea8ddb --- /dev/null +++ b/src/boost/libs/config/test/helper_macros_test.cpp @@ -0,0 +1,30 @@ +// Copyright 2017 Peter Dimov. +// +// Distributed under 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 + +#include <boost/config/helper_macros.hpp> +#include <boost/core/lightweight_test.hpp> + +int main() +{ +#define X pumpkin + + BOOST_TEST_CSTR_EQ( BOOST_STRINGIZE(X), "pumpkin" ); + BOOST_TEST_CSTR_EQ( BOOST_STRINGIZE(__LINE__), "16" ); + +#define Y 2 + + int BOOST_JOIN(X, Y) = 0; + (void)pumpkin2; + + int BOOST_JOIN(X, __LINE__) = 0; + (void)pumpkin23; + + BOOST_TEST_CSTR_EQ( BOOST_STRINGIZE(BOOST_JOIN(X, Y)), "pumpkin2" ); + BOOST_TEST_CSTR_EQ( BOOST_STRINGIZE(BOOST_JOIN(X, __LINE__)), "pumpkin27" ); + + return boost::report_errors(); +} diff --git a/src/boost/libs/config/test/limits_test.cpp b/src/boost/libs/config/test/limits_test.cpp new file mode 100644 index 000000000..8c43ac0ec --- /dev/null +++ b/src/boost/libs/config/test/limits_test.cpp @@ -0,0 +1,213 @@ +/* boost limits_test.cpp test your <limits> file for important + * + * Copyright Jens Maurer 2000 + * Distributed under 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) + * + * $Id$ + */ + +#include <boost/limits.hpp> +#include <boost/detail/lightweight_main.hpp> +#include <boost/core/lightweight_test.hpp> +#include <iostream> + +/* + * General portability note: + * MSVC mis-compiles explicit function template instantiations. + * For example, f<A>() and f<B>() are both compiled to call f<A>(). + * BCC is unable to implicitly convert a "const char *" to a std::string + * when using explicit function template instantiations. + * + * Therefore, avoid explicit function template instantiations. + */ +#if defined(BOOST_MSVC) && (BOOST_MSVC <= 1300) +template<typename T> inline T make_char_numeric_for_streaming(T x) { return x; } +namespace fix{ +inline int make_char_numeric_for_streaming(char c) { return c; } +inline int make_char_numeric_for_streaming(signed char c) { return c; } +inline int make_char_numeric_for_streaming(unsigned char c) { return c; } +} +using namespace fix; +# if defined(_YVALS) && !defined(_CPPLIB_VER) && !defined(__SGI_STL_PORT) && !defined(_STLPORT_VERSION) +// fix for missing operator<< in original Dinkumware lib: +std::ostream& operator<<(std::ostream& os, __int64 i ) +{ + char buf[80]; + sprintf(buf,"%I64d", i ); + os << buf; + return os; +} +std::ostream& operator<<(std::ostream& os, unsigned __int64 i ) +{ + char buf[80]; + sprintf(buf,"%I64u", i ); + os << buf; + return os; +} +# endif +#else +template<typename T> inline T make_char_numeric_for_streaming(T x) { return x; } +inline int make_char_numeric_for_streaming(char c) { return c; } +inline int make_char_numeric_for_streaming(signed char c) { return c; } +inline int make_char_numeric_for_streaming(unsigned char c) { return c; } +#endif + +#if (defined(_GLIBCPP_VERSION) || defined(_GLIBCXX_VERSION)) \ + && defined(BOOST_HAS_LONG_LONG) \ + && !defined(_GLIBCPP_USE_LONG_LONG) \ + && !defined(_GLIBCXX_USE_LONG_LONG) +// +// Some libstdc++ versions have numeric_limits<long long> but no +// iostream support for long long. TODO, find a better fix!! +// +std::ostream& operator<<(std::ostream& os, long long i ) +{ + return os << static_cast<long double>(i); +} +std::ostream& operator<<(std::ostream& os, unsigned long long i ) +{ + return os << static_cast<long double>(i); +} +#endif + +template<class T> +void test_integral_limits(const T &, const char * msg) +{ + typedef std::numeric_limits<T> lim; + std::cout << "Testing " << msg + << " (size " << sizeof(T) << ")" + << " min: " << make_char_numeric_for_streaming((lim::min)()) + << ", max: " << make_char_numeric_for_streaming((lim::max)()) + << std::endl; + + BOOST_TEST(static_cast<bool>(lim::is_specialized)); + BOOST_TEST(static_cast<bool>(lim::is_integer)); + // BOOST_TEST(lim::is_modulo); + BOOST_TEST(static_cast<bool>((lim::min)() < (lim::max)())); +} + +template <class T> +void print_hex_val(T t, const char* name) +{ + const unsigned char* p = (const unsigned char*)&t; + std::cout << "hex value of " << name << " is: "; + for (unsigned int i = 0; i < sizeof(T); ++i) { + if(p[i] <= 0xF) + std::cout << "0"; + std::cout << std::hex << (int)p[i]; + } + std::cout << std::dec << std::endl; +} + +template<class T> +void test_float_limits(const T &, const char * msg) +{ + std::cout << "\nTesting " << msg << std::endl; + typedef std::numeric_limits<T> lim; + + BOOST_TEST(static_cast<bool>(lim::is_specialized)); + BOOST_TEST(static_cast<bool>(!lim::is_modulo)); + BOOST_TEST(static_cast<bool>(!lim::is_integer)); + BOOST_TEST(static_cast<bool>(lim::is_signed)); + + const T infinity = lim::infinity(); + const T qnan = lim::quiet_NaN(); + const T snan = lim::signaling_NaN(); + + std::cout << "IEEE-compatible: " << lim::is_iec559 + << ", traps: " << lim::traps + << ", bounded: " << lim::is_bounded + << ", exact: " << lim::is_exact << '\n' + << "min: " << (lim::min)() << ", max: " << (lim::max)() << '\n' + << "infinity: " << infinity << ", QNaN: " << qnan << '\n'; + print_hex_val((lim::max)(), "max"); + print_hex_val(infinity, "infinity"); + print_hex_val(qnan, "qnan"); + print_hex_val(snan, "snan"); + + BOOST_TEST((lim::max)() > 1000); + BOOST_TEST((lim::min)() > 0); + BOOST_TEST((lim::min)() < 0.001); + BOOST_TEST(lim::epsilon() > 0); + + if(lim::is_iec559) { + BOOST_TEST(static_cast<bool>(lim::has_infinity)); + BOOST_TEST(static_cast<bool>(lim::has_quiet_NaN)); + BOOST_TEST(static_cast<bool>(lim::has_signaling_NaN)); + } else { + std::cout << "Does not claim IEEE conformance" << std::endl; + } + + if(lim::has_infinity) { + // Make sure those values are not 0 or similar nonsense. + // Infinity must compare as if larger than the maximum representable value. + BOOST_TEST(infinity > (lim::max)()); + BOOST_TEST(-infinity < -(lim::max)()); + } else { + std::cout << "Does not have infinity" << std::endl; + } + + if(lim::has_quiet_NaN) { + // NaNs shall always compare "false" when compared for equality + // If one of these fail, your compiler may be optimizing incorrectly, + // or the standard library is incorrectly configured. + BOOST_TEST(! (qnan == 42)); + BOOST_TEST(qnan != 42); + if(lim::is_iec559) + { + BOOST_TEST(! (qnan == qnan)); + BOOST_TEST(qnan != qnan); + } + + // The following tests may cause arithmetic traps. + // BOOST_TEST(! (qnan < 42)); + // BOOST_TEST(! (qnan > 42)); + // BOOST_TEST(! (qnan <= 42)); + // BOOST_TEST(! (qnan >= 42)); + } else { + std::cout << "Does not have QNaN" << std::endl; + } +} + + +int cpp_main(int, char*[]) +{ + test_integral_limits(bool(), "bool"); + test_integral_limits(char(), "char"); + typedef signed char signed_char; + test_integral_limits(signed_char(), "signed char"); + typedef unsigned char unsigned_char; + test_integral_limits(unsigned_char(), "unsigned char"); + test_integral_limits(wchar_t(), "wchar_t"); + test_integral_limits(short(), "short"); + typedef unsigned short unsigned_short; + test_integral_limits(unsigned_short(), "unsigned short"); + test_integral_limits(int(), "int"); + typedef unsigned int unsigned_int; + test_integral_limits(unsigned_int(), "unsigned int"); + test_integral_limits(long(), "long"); + typedef unsigned long unsigned_long; + test_integral_limits(unsigned_long(), "unsigned long"); +#if defined(BOOST_HAS_LONG_LONG) + test_integral_limits(::boost::long_long_type(), "long long"); + test_integral_limits(::boost::ulong_long_type(), "unsigned long long"); +#endif +#ifdef BOOST_HAS_MS_INT64 + typedef __int64 long_long2; + test_integral_limits(long_long2(), "__int64"); + typedef unsigned __int64 unsigned_long_long2; + test_integral_limits(unsigned_long_long2(), "unsigned __int64"); +#endif + + test_float_limits(float(), "float"); + test_float_limits(double(), "double"); + typedef long double long_double; + test_float_limits(long_double(), "long double"); + // Some compilers don't pay attention to std:3.6.1/5 and issue a + // warning here if "return 0;" is omitted. + return boost::report_errors(); +} + + diff --git a/src/boost/libs/config/test/link/Jamfile.v2 b/src/boost/libs/config/test/link/Jamfile.v2 new file mode 100644 index 000000000..c5da6c29e --- /dev/null +++ b/src/boost/libs/config/test/link/Jamfile.v2 @@ -0,0 +1,19 @@ +# copyright John Maddock 2003 +# 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) + +lib link_test : link_test.cpp + : <link>shared <runtime-link>shared + # This is needed to make the test work, I'm unsure if this + # should be set globally. + <define>BOOST_DYN_LINK=1 + # Override <threading>multi inherited from parent. + <threading>single + : + debug release + ; + +run main.cpp link_test : : : <define>BOOST_DYN_LINK=1 <define>BOOST_CONFIG_NO_LIB <link>shared <runtime-link>shared <threading>single : link_test_test ; + + diff --git a/src/boost/libs/config/test/link/bc_gen.sh b/src/boost/libs/config/test/link/bc_gen.sh new file mode 100644 index 000000000..07ff3aa59 --- /dev/null +++ b/src/boost/libs/config/test/link/bc_gen.sh @@ -0,0 +1,286 @@ +#! /usr/bin/env bash + +# copyright John Maddock 2005 +# 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) + +libname="" +src="" +header="" +all_dep="" + +# current makefile: +out="" +# temporary file: +tout="" +# install target temp file: +iout="" +# debug flag: +debug="no" +# compile options: +opts="" +# main output sub-directory: +subdir="" + +####################################################################### +# +# section for C++ Builder +# +####################################################################### + +function bcb_gen_lib() +{ + all_dep="$all_dep $subdir\\$libname $subdir\\$libname.lib $subdir\\$libname.exe" + echo " copy $subdir\\$libname.lib \$(BCROOT)\\lib" >> $iout +# +# set up section comments: + cat >> $tout << EOF +######################################################## +# +# section for $libname.lib +# +######################################################## +EOF +# +# process source files: + all_obj="" + all_lib_obj="" + for file in $src + do + obj=`echo "$file" | sed 's/\(.*\)cpp/\1obj/g'` + obj="$subdir\\$libname\\$obj" + all_obj="$all_obj $obj" + all_lib_obj="$all_lib_obj \"$obj\"" + echo "$obj: $file \$(ALL_HEADER)" >> $tout + echo " bcc32 @&&|" >> $tout + echo "-c \$(INCLUDES) $opts \$(CXXFLAGS) -o$obj $file" >> $tout + echo "|" >> $tout + echo "" >> $tout + done +# +# now for the directories for this library: + echo "$subdir\\$libname : " >> $tout + echo " -@mkdir $subdir\\$libname" >> $tout + echo "" >> $tout +# +# now for the clean options for this library: + all_clean="$all_clean $libname""_clean" + echo "$libname"_clean : >> $tout + echo " del $subdir\\$libname\\"'*.obj' >> $tout + echo " del $subdir\\$libname\\"'*.il?' >> $tout + echo " del $subdir\\$libname\\"'*.csm' >> $tout + echo " del $subdir\\$libname\\"'*.tds' >> $tout + echo "" >> $tout +# +# now for the main target for this library: + echo $subdir\\$libname.lib : $all_obj >> $tout + echo " tlib @&&|" >> $tout + echo "/P128 /C /u /a \$(XSFLAGS) \"$subdir\\$libname.lib\" $all_lib_obj" >> $tout + echo "|" >> $tout + echo "" >> $tout +# now the test program: + echo "$subdir\\$libname.exe : main.cpp $subdir\\$libname.lib" >> $tout + echo " bcc32 \$(INCLUDES) $opts /DBOOST_LIB_DIAGNOSTIC=1 \$(CXXFLAGS) -L./$subdir -e./$subdir/$libname.exe main.cpp" >> $tout + echo " echo running test progam $subdir"'\'"$libname.exe" >> $tout + echo " $subdir"'\'"$libname.exe" >> $tout + echo "" >> $tout +} + +function bcb_gen_dll() +{ + all_dep="$all_dep $subdir\\$libname $subdir\\$libname.lib $subdir\\$libname.exe" + echo " copy $subdir\\$libname.lib \$(BCROOT)\\lib" >> $iout + echo " copy $subdir\\$libname.dll \$(BCROOT)\\bin" >> $iout + echo " copy $subdir\\$libname.tds \$(BCROOT)\\bin" >> $iout +# +# set up section comments: + cat >> $tout << EOF +######################################################## +# +# section for $libname.lib +# +######################################################## +EOF +# +# process source files: + all_obj="" + for file in $src + do + obj=`echo "$file" | sed 's/\(.*\)cpp/\1obj/g'` + obj="$subdir\\$libname\\$obj" + all_obj="$all_obj $obj" + echo "$obj: $file \$(ALL_HEADER)" >> $tout + echo " bcc32 @&&|" >> $tout + echo "-c \$(INCLUDES) $opts \$(CXXFLAGS) -DBOOST_DYN_LINK -o$obj $file" >> $tout + echo "|" >> $tout + echo "" >> $tout + done +# +# now for the directories for this library: + echo "$subdir\\$libname :" >> $tout + echo " -@mkdir $subdir\\$libname" >> $tout + echo "" >> $tout +# +# now for the clean options for this library: + all_clean="$all_clean $libname""_clean" + echo "$libname"_clean : >> $tout + echo " del $subdir\\$libname\\"'*.obj' >> $tout + echo " del $subdir\\$libname\\"'*.il?' >> $tout + echo " del $subdir\\$libname\\"'*.csm' >> $tout + echo " del $subdir\\$libname\\"'*.tds' >> $tout + echo " del $subdir\\"'*.tds' >> $tout + echo "" >> $tout +# +# now for the main target for this library: + echo $subdir\\$libname.lib : $all_obj >> $tout + echo " bcc32 @&&|" >> $tout + echo "-lw-dup -lw-dpl $opts -e$subdir\\$libname.dll \$(XLFLAGS) $all_obj \$(LIBS)" >> $tout + echo "|" >> $tout + echo " implib -w $subdir\\$libname.lib $subdir\\$libname.dll" >> $tout + echo "" >> $tout +# now the test program: + echo "$subdir\\$libname.exe : main.cpp $subdir\\$libname.lib" >> $tout + echo " bcc32 \$(INCLUDES) $opts /DBOOST_LIB_DIAGNOSTIC=1 \$(CXXFLAGS) -DBOOST_DYN_LINK -L./$subdir -e./$subdir/$libname.exe main.cpp" >> $tout + echo " echo running test program $subdir"'\'"$libname.exe" >> $tout + echo " $subdir"'\'"$libname.exe" >> $tout + echo "" >> $tout +} + + + +function bcb_gen() +{ + tout="temp" + iout="temp_install" + all_dep="$subdir" + all_clean="" + echo > $out + echo > $tout + rm -f $iout + + libname="liblink_test-${subdir}-s-${boost_version}" + opts="-tWM- -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I\$(BCROOT)\include;../../../../" + bcb_gen_lib + + libname="liblink_test-${subdir}-mt-s-${boost_version}" + opts="-tWM -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../" + bcb_gen_lib + + libname="link_test-${subdir}-mt-${boost_version}" + opts="-tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;" + bcb_gen_dll + + libname="link_test-${subdir}-${boost_version}" + opts="-tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;" + bcb_gen_dll + + libname="liblink_test-${subdir}-mt-${boost_version}" + opts="-tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;" + bcb_gen_lib + + libname="liblink_test-${subdir}-${boost_version}" + opts="-tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;" + bcb_gen_lib + # + # debug versions: + libname="liblink_test-${subdir}-sd-${boost_version}" + opts="-tWM- -D_NO_VCL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I\$(BCROOT)\include;../../../../" + bcb_gen_lib + + libname="liblink_test-${subdir}-mt-sd-${boost_version}" + opts="-tWM -D_NO_VCL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../" + bcb_gen_lib + + libname="link_test-${subdir}-mt-d-${boost_version}" + opts="-tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;" + bcb_gen_dll + + libname="link_test-${subdir}-d-${boost_version}" + opts="-tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;" + bcb_gen_dll + + libname="liblink_test-${subdir}-mt-d-${boost_version}" + opts="-tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;" + bcb_gen_lib + + libname="liblink_test-${subdir}-d-${boost_version}" + opts="-tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;" + bcb_gen_lib + + + cat > $out << EOF +# copyright John Maddock 2005 +# 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) +# +# auto generated makefile for C++ Builder +# +# usage: +# make +# brings libraries up to date +# make install +# brings libraries up to date and copies binaries to your C++ Builder /lib and /bin directories (recomended) +# make clean +# removes all temporary files. + +# +# Add additional compiler options here: +# +CXXFLAGS= +# +# Add additional include directories here: +# +INCLUDES= +# +# add additional linker flags here: +# +XLFLAGS= +# +# add additional libraries to link to here: +# +LIBS= +# +# add additional static-library creation flags here: +# +XSFLAGS= + +!ifndef BCROOT +BCROOT=\$(MAKEDIR)\\.. +!endif + +EOF + echo "" >> $out + echo "ALL_HEADER=$header" >> $out + echo "" >> $out + echo "all : $all_dep" >> $out + echo >> $out + echo "clean : $all_clean" >> $out + echo >> $out + echo "install : all" >> $out + cat $iout >> $out + echo >> $out + echo $subdir : >> $out + echo " -@mkdir $subdir" >> $out + echo "" >> $out + + cat $tout >> $out +} + +. common.sh + +# +# generate C++ Builder 6 files: +out="borland.mak" +subdir="borland" +has_stlport="yes" +bcb_gen + + + + + + + + diff --git a/src/boost/libs/config/test/link/borland.mak b/src/boost/libs/config/test/link/borland.mak new file mode 100644 index 000000000..624759c77 --- /dev/null +++ b/src/boost/libs/config/test/link/borland.mak @@ -0,0 +1,429 @@ +# copyright John Maddock 2005 +# 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) +# +# auto generated makefile for C++ Builder +# +# usage: +# make +# brings libraries up to date +# make install +# brings libraries up to date and copies binaries to your C++ Builder /lib and /bin directories (recomended) +# make clean +# removes all temporary files. + +# +# Add additional compiler options here: +# +CXXFLAGS= +# +# Add additional include directories here: +# +INCLUDES= +# +# add additional linker flags here: +# +XLFLAGS= +# +# add additional libraries to link to here: +# +LIBS= +# +# add additional static-library creation flags here: +# +XSFLAGS= + +!ifndef BCROOT +BCROOT=$(MAKEDIR)\.. +!endif + + +ALL_HEADER= + +all : borland borland\liblink_test-borland-s-1_35 borland\liblink_test-borland-s-1_35.lib borland\liblink_test-borland-s-1_35.exe borland\liblink_test-borland-mt-s-1_35 borland\liblink_test-borland-mt-s-1_35.lib borland\liblink_test-borland-mt-s-1_35.exe borland\link_test-borland-mt-1_35 borland\link_test-borland-mt-1_35.lib borland\link_test-borland-mt-1_35.exe borland\link_test-borland-1_35 borland\link_test-borland-1_35.lib borland\link_test-borland-1_35.exe borland\liblink_test-borland-mt-1_35 borland\liblink_test-borland-mt-1_35.lib borland\liblink_test-borland-mt-1_35.exe borland\liblink_test-borland-1_35 borland\liblink_test-borland-1_35.lib borland\liblink_test-borland-1_35.exe borland\liblink_test-borland-sd-1_35 borland\liblink_test-borland-sd-1_35.lib borland\liblink_test-borland-sd-1_35.exe borland\liblink_test-borland-mt-sd-1_35 borland\liblink_test-borland-mt-sd-1_35.lib borland\liblink_test-borland-mt-sd-1_35.exe borland\link_test-borland-mt-d-1_35 borland\link_test-borland-mt-d-1_35.lib borland\link_test-borland-mt-d-1_35.exe borland\link_test-borland-d-1_35 borland\link_test-borland-d-1_35.lib borland\link_test-borland-d-1_35.exe borland\liblink_test-borland-mt-d-1_35 borland\liblink_test-borland-mt-d-1_35.lib borland\liblink_test-borland-mt-d-1_35.exe borland\liblink_test-borland-d-1_35 borland\liblink_test-borland-d-1_35.lib borland\liblink_test-borland-d-1_35.exe + +clean : liblink_test-borland-s-1_35_clean liblink_test-borland-mt-s-1_35_clean link_test-borland-mt-1_35_clean link_test-borland-1_35_clean liblink_test-borland-mt-1_35_clean liblink_test-borland-1_35_clean liblink_test-borland-sd-1_35_clean liblink_test-borland-mt-sd-1_35_clean link_test-borland-mt-d-1_35_clean link_test-borland-d-1_35_clean liblink_test-borland-mt-d-1_35_clean liblink_test-borland-d-1_35_clean + +install : all + copy borland\liblink_test-borland-s-1_35.lib $(BCROOT)\lib + copy borland\liblink_test-borland-mt-s-1_35.lib $(BCROOT)\lib + copy borland\link_test-borland-mt-1_35.lib $(BCROOT)\lib + copy borland\link_test-borland-mt-1_35.dll $(BCROOT)\bin + copy borland\link_test-borland-mt-1_35.tds $(BCROOT)\bin + copy borland\link_test-borland-1_35.lib $(BCROOT)\lib + copy borland\link_test-borland-1_35.dll $(BCROOT)\bin + copy borland\link_test-borland-1_35.tds $(BCROOT)\bin + copy borland\liblink_test-borland-mt-1_35.lib $(BCROOT)\lib + copy borland\liblink_test-borland-1_35.lib $(BCROOT)\lib + copy borland\liblink_test-borland-sd-1_35.lib $(BCROOT)\lib + copy borland\liblink_test-borland-mt-sd-1_35.lib $(BCROOT)\lib + copy borland\link_test-borland-mt-d-1_35.lib $(BCROOT)\lib + copy borland\link_test-borland-mt-d-1_35.dll $(BCROOT)\bin + copy borland\link_test-borland-mt-d-1_35.tds $(BCROOT)\bin + copy borland\link_test-borland-d-1_35.lib $(BCROOT)\lib + copy borland\link_test-borland-d-1_35.dll $(BCROOT)\bin + copy borland\link_test-borland-d-1_35.tds $(BCROOT)\bin + copy borland\liblink_test-borland-mt-d-1_35.lib $(BCROOT)\lib + copy borland\liblink_test-borland-d-1_35.lib $(BCROOT)\lib + +borland : + -@mkdir borland + + +######################################################## +# +# section for liblink_test-borland-s-1_35.lib +# +######################################################## +borland\liblink_test-borland-s-1_35\link_test.obj: link_test.cpp $(ALL_HEADER) + bcc32 @&&| +-c $(INCLUDES) -tWM- -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -oborland\liblink_test-borland-s-1_35\link_test.obj link_test.cpp +| + +borland\liblink_test-borland-s-1_35 : + -@mkdir borland\liblink_test-borland-s-1_35 + +liblink_test-borland-s-1_35_clean : + del borland\liblink_test-borland-s-1_35\*.obj + del borland\liblink_test-borland-s-1_35\*.il? + del borland\liblink_test-borland-s-1_35\*.csm + del borland\liblink_test-borland-s-1_35\*.tds + +borland\liblink_test-borland-s-1_35.lib : borland\liblink_test-borland-s-1_35\link_test.obj + tlib @&&| +/P128 /C /u /a $(XSFLAGS) "borland\liblink_test-borland-s-1_35.lib" "borland\liblink_test-borland-s-1_35\link_test.obj" +| + +borland\liblink_test-borland-s-1_35.exe : main.cpp borland\liblink_test-borland-s-1_35.lib + bcc32 $(INCLUDES) -tWM- -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I$(BCROOT)\include;../../../../ /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -L./borland -e./borland/liblink_test-borland-s-1_35.exe main.cpp + echo running test progam borland\liblink_test-borland-s-1_35.exe + borland\liblink_test-borland-s-1_35.exe + +######################################################## +# +# section for liblink_test-borland-mt-s-1_35.lib +# +######################################################## +borland\liblink_test-borland-mt-s-1_35\link_test.obj: link_test.cpp $(ALL_HEADER) + bcc32 @&&| +-c $(INCLUDES) -tWM -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -oborland\liblink_test-borland-mt-s-1_35\link_test.obj link_test.cpp +| + +borland\liblink_test-borland-mt-s-1_35 : + -@mkdir borland\liblink_test-borland-mt-s-1_35 + +liblink_test-borland-mt-s-1_35_clean : + del borland\liblink_test-borland-mt-s-1_35\*.obj + del borland\liblink_test-borland-mt-s-1_35\*.il? + del borland\liblink_test-borland-mt-s-1_35\*.csm + del borland\liblink_test-borland-mt-s-1_35\*.tds + +borland\liblink_test-borland-mt-s-1_35.lib : borland\liblink_test-borland-mt-s-1_35\link_test.obj + tlib @&&| +/P128 /C /u /a $(XSFLAGS) "borland\liblink_test-borland-mt-s-1_35.lib" "borland\liblink_test-borland-mt-s-1_35\link_test.obj" +| + +borland\liblink_test-borland-mt-s-1_35.exe : main.cpp borland\liblink_test-borland-mt-s-1_35.lib + bcc32 $(INCLUDES) -tWM -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -L./borland -e./borland/liblink_test-borland-mt-s-1_35.exe main.cpp + echo running test progam borland\liblink_test-borland-mt-s-1_35.exe + borland\liblink_test-borland-mt-s-1_35.exe + +######################################################## +# +# section for link_test-borland-mt-1_35.lib +# +######################################################## +borland\link_test-borland-mt-1_35\link_test.obj: link_test.cpp $(ALL_HEADER) + bcc32 @&&| +-c $(INCLUDES) -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -oborland\link_test-borland-mt-1_35\link_test.obj link_test.cpp +| + +borland\link_test-borland-mt-1_35 : + -@mkdir borland\link_test-borland-mt-1_35 + +link_test-borland-mt-1_35_clean : + del borland\link_test-borland-mt-1_35\*.obj + del borland\link_test-borland-mt-1_35\*.il? + del borland\link_test-borland-mt-1_35\*.csm + del borland\link_test-borland-mt-1_35\*.tds + del borland\*.tds + +borland\link_test-borland-mt-1_35.lib : borland\link_test-borland-mt-1_35\link_test.obj + bcc32 @&&| +-lw-dup -lw-dpl -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; -eborland\link_test-borland-mt-1_35.dll $(XLFLAGS) borland\link_test-borland-mt-1_35\link_test.obj $(LIBS) +| + implib -w borland\link_test-borland-mt-1_35.lib borland\link_test-borland-mt-1_35.dll + +borland\link_test-borland-mt-1_35.exe : main.cpp borland\link_test-borland-mt-1_35.lib + bcc32 $(INCLUDES) -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -DBOOST_DYN_LINK -L./borland -e./borland/link_test-borland-mt-1_35.exe main.cpp + echo running test program borland\link_test-borland-mt-1_35.exe + borland\link_test-borland-mt-1_35.exe + +######################################################## +# +# section for link_test-borland-1_35.lib +# +######################################################## +borland\link_test-borland-1_35\link_test.obj: link_test.cpp $(ALL_HEADER) + bcc32 @&&| +-c $(INCLUDES) -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -oborland\link_test-borland-1_35\link_test.obj link_test.cpp +| + +borland\link_test-borland-1_35 : + -@mkdir borland\link_test-borland-1_35 + +link_test-borland-1_35_clean : + del borland\link_test-borland-1_35\*.obj + del borland\link_test-borland-1_35\*.il? + del borland\link_test-borland-1_35\*.csm + del borland\link_test-borland-1_35\*.tds + del borland\*.tds + +borland\link_test-borland-1_35.lib : borland\link_test-borland-1_35\link_test.obj + bcc32 @&&| +-lw-dup -lw-dpl -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; -eborland\link_test-borland-1_35.dll $(XLFLAGS) borland\link_test-borland-1_35\link_test.obj $(LIBS) +| + implib -w borland\link_test-borland-1_35.lib borland\link_test-borland-1_35.dll + +borland\link_test-borland-1_35.exe : main.cpp borland\link_test-borland-1_35.lib + bcc32 $(INCLUDES) -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -DBOOST_DYN_LINK -L./borland -e./borland/link_test-borland-1_35.exe main.cpp + echo running test program borland\link_test-borland-1_35.exe + borland\link_test-borland-1_35.exe + +######################################################## +# +# section for liblink_test-borland-mt-1_35.lib +# +######################################################## +borland\liblink_test-borland-mt-1_35\link_test.obj: link_test.cpp $(ALL_HEADER) + bcc32 @&&| +-c $(INCLUDES) -tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -oborland\liblink_test-borland-mt-1_35\link_test.obj link_test.cpp +| + +borland\liblink_test-borland-mt-1_35 : + -@mkdir borland\liblink_test-borland-mt-1_35 + +liblink_test-borland-mt-1_35_clean : + del borland\liblink_test-borland-mt-1_35\*.obj + del borland\liblink_test-borland-mt-1_35\*.il? + del borland\liblink_test-borland-mt-1_35\*.csm + del borland\liblink_test-borland-mt-1_35\*.tds + +borland\liblink_test-borland-mt-1_35.lib : borland\liblink_test-borland-mt-1_35\link_test.obj + tlib @&&| +/P128 /C /u /a $(XSFLAGS) "borland\liblink_test-borland-mt-1_35.lib" "borland\liblink_test-borland-mt-1_35\link_test.obj" +| + +borland\liblink_test-borland-mt-1_35.exe : main.cpp borland\liblink_test-borland-mt-1_35.lib + bcc32 $(INCLUDES) -tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -L./borland -e./borland/liblink_test-borland-mt-1_35.exe main.cpp + echo running test progam borland\liblink_test-borland-mt-1_35.exe + borland\liblink_test-borland-mt-1_35.exe + +######################################################## +# +# section for liblink_test-borland-1_35.lib +# +######################################################## +borland\liblink_test-borland-1_35\link_test.obj: link_test.cpp $(ALL_HEADER) + bcc32 @&&| +-c $(INCLUDES) -tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -oborland\liblink_test-borland-1_35\link_test.obj link_test.cpp +| + +borland\liblink_test-borland-1_35 : + -@mkdir borland\liblink_test-borland-1_35 + +liblink_test-borland-1_35_clean : + del borland\liblink_test-borland-1_35\*.obj + del borland\liblink_test-borland-1_35\*.il? + del borland\liblink_test-borland-1_35\*.csm + del borland\liblink_test-borland-1_35\*.tds + +borland\liblink_test-borland-1_35.lib : borland\liblink_test-borland-1_35\link_test.obj + tlib @&&| +/P128 /C /u /a $(XSFLAGS) "borland\liblink_test-borland-1_35.lib" "borland\liblink_test-borland-1_35\link_test.obj" +| + +borland\liblink_test-borland-1_35.exe : main.cpp borland\liblink_test-borland-1_35.lib + bcc32 $(INCLUDES) -tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -L./borland -e./borland/liblink_test-borland-1_35.exe main.cpp + echo running test progam borland\liblink_test-borland-1_35.exe + borland\liblink_test-borland-1_35.exe + +######################################################## +# +# section for liblink_test-borland-sd-1_35.lib +# +######################################################## +borland\liblink_test-borland-sd-1_35\link_test.obj: link_test.cpp $(ALL_HEADER) + bcc32 @&&| +-c $(INCLUDES) -tWM- -D_NO_VCL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -oborland\liblink_test-borland-sd-1_35\link_test.obj link_test.cpp +| + +borland\liblink_test-borland-sd-1_35 : + -@mkdir borland\liblink_test-borland-sd-1_35 + +liblink_test-borland-sd-1_35_clean : + del borland\liblink_test-borland-sd-1_35\*.obj + del borland\liblink_test-borland-sd-1_35\*.il? + del borland\liblink_test-borland-sd-1_35\*.csm + del borland\liblink_test-borland-sd-1_35\*.tds + +borland\liblink_test-borland-sd-1_35.lib : borland\liblink_test-borland-sd-1_35\link_test.obj + tlib @&&| +/P128 /C /u /a $(XSFLAGS) "borland\liblink_test-borland-sd-1_35.lib" "borland\liblink_test-borland-sd-1_35\link_test.obj" +| + +borland\liblink_test-borland-sd-1_35.exe : main.cpp borland\liblink_test-borland-sd-1_35.lib + bcc32 $(INCLUDES) -tWM- -D_NO_VCL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I$(BCROOT)\include;../../../../ /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -L./borland -e./borland/liblink_test-borland-sd-1_35.exe main.cpp + echo running test progam borland\liblink_test-borland-sd-1_35.exe + borland\liblink_test-borland-sd-1_35.exe + +######################################################## +# +# section for liblink_test-borland-mt-sd-1_35.lib +# +######################################################## +borland\liblink_test-borland-mt-sd-1_35\link_test.obj: link_test.cpp $(ALL_HEADER) + bcc32 @&&| +-c $(INCLUDES) -tWM -D_NO_VCL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ $(CXXFLAGS) -oborland\liblink_test-borland-mt-sd-1_35\link_test.obj link_test.cpp +| + +borland\liblink_test-borland-mt-sd-1_35 : + -@mkdir borland\liblink_test-borland-mt-sd-1_35 + +liblink_test-borland-mt-sd-1_35_clean : + del borland\liblink_test-borland-mt-sd-1_35\*.obj + del borland\liblink_test-borland-mt-sd-1_35\*.il? + del borland\liblink_test-borland-mt-sd-1_35\*.csm + del borland\liblink_test-borland-mt-sd-1_35\*.tds + +borland\liblink_test-borland-mt-sd-1_35.lib : borland\liblink_test-borland-mt-sd-1_35\link_test.obj + tlib @&&| +/P128 /C /u /a $(XSFLAGS) "borland\liblink_test-borland-mt-sd-1_35.lib" "borland\liblink_test-borland-mt-sd-1_35\link_test.obj" +| + +borland\liblink_test-borland-mt-sd-1_35.exe : main.cpp borland\liblink_test-borland-mt-sd-1_35.lib + bcc32 $(INCLUDES) -tWM -D_NO_VCL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -L./borland -e./borland/liblink_test-borland-mt-sd-1_35.exe main.cpp + echo running test progam borland\liblink_test-borland-mt-sd-1_35.exe + borland\liblink_test-borland-mt-sd-1_35.exe + +######################################################## +# +# section for link_test-borland-mt-d-1_35.lib +# +######################################################## +borland\link_test-borland-mt-d-1_35\link_test.obj: link_test.cpp $(ALL_HEADER) + bcc32 @&&| +-c $(INCLUDES) -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -oborland\link_test-borland-mt-d-1_35\link_test.obj link_test.cpp +| + +borland\link_test-borland-mt-d-1_35 : + -@mkdir borland\link_test-borland-mt-d-1_35 + +link_test-borland-mt-d-1_35_clean : + del borland\link_test-borland-mt-d-1_35\*.obj + del borland\link_test-borland-mt-d-1_35\*.il? + del borland\link_test-borland-mt-d-1_35\*.csm + del borland\link_test-borland-mt-d-1_35\*.tds + del borland\*.tds + +borland\link_test-borland-mt-d-1_35.lib : borland\link_test-borland-mt-d-1_35\link_test.obj + bcc32 @&&| +-lw-dup -lw-dpl -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; -eborland\link_test-borland-mt-d-1_35.dll $(XLFLAGS) borland\link_test-borland-mt-d-1_35\link_test.obj $(LIBS) +| + implib -w borland\link_test-borland-mt-d-1_35.lib borland\link_test-borland-mt-d-1_35.dll + +borland\link_test-borland-mt-d-1_35.exe : main.cpp borland\link_test-borland-mt-d-1_35.lib + bcc32 $(INCLUDES) -tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -DBOOST_DYN_LINK -L./borland -e./borland/link_test-borland-mt-d-1_35.exe main.cpp + echo running test program borland\link_test-borland-mt-d-1_35.exe + borland\link_test-borland-mt-d-1_35.exe + +######################################################## +# +# section for link_test-borland-d-1_35.lib +# +######################################################## +borland\link_test-borland-d-1_35\link_test.obj: link_test.cpp $(ALL_HEADER) + bcc32 @&&| +-c $(INCLUDES) -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -DBOOST_DYN_LINK -oborland\link_test-borland-d-1_35\link_test.obj link_test.cpp +| + +borland\link_test-borland-d-1_35 : + -@mkdir borland\link_test-borland-d-1_35 + +link_test-borland-d-1_35_clean : + del borland\link_test-borland-d-1_35\*.obj + del borland\link_test-borland-d-1_35\*.il? + del borland\link_test-borland-d-1_35\*.csm + del borland\link_test-borland-d-1_35\*.tds + del borland\*.tds + +borland\link_test-borland-d-1_35.lib : borland\link_test-borland-d-1_35\link_test.obj + bcc32 @&&| +-lw-dup -lw-dpl -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; -eborland\link_test-borland-d-1_35.dll $(XLFLAGS) borland\link_test-borland-d-1_35\link_test.obj $(LIBS) +| + implib -w borland\link_test-borland-d-1_35.lib borland\link_test-borland-d-1_35.dll + +borland\link_test-borland-d-1_35.exe : main.cpp borland\link_test-borland-d-1_35.lib + bcc32 $(INCLUDES) -tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -DBOOST_DYN_LINK -L./borland -e./borland/link_test-borland-d-1_35.exe main.cpp + echo running test program borland\link_test-borland-d-1_35.exe + borland\link_test-borland-d-1_35.exe + +######################################################## +# +# section for liblink_test-borland-mt-d-1_35.lib +# +######################################################## +borland\liblink_test-borland-mt-d-1_35\link_test.obj: link_test.cpp $(ALL_HEADER) + bcc32 @&&| +-c $(INCLUDES) -tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -oborland\liblink_test-borland-mt-d-1_35\link_test.obj link_test.cpp +| + +borland\liblink_test-borland-mt-d-1_35 : + -@mkdir borland\liblink_test-borland-mt-d-1_35 + +liblink_test-borland-mt-d-1_35_clean : + del borland\liblink_test-borland-mt-d-1_35\*.obj + del borland\liblink_test-borland-mt-d-1_35\*.il? + del borland\liblink_test-borland-mt-d-1_35\*.csm + del borland\liblink_test-borland-mt-d-1_35\*.tds + +borland\liblink_test-borland-mt-d-1_35.lib : borland\liblink_test-borland-mt-d-1_35\link_test.obj + tlib @&&| +/P128 /C /u /a $(XSFLAGS) "borland\liblink_test-borland-mt-d-1_35.lib" "borland\liblink_test-borland-mt-d-1_35\link_test.obj" +| + +borland\liblink_test-borland-mt-d-1_35.exe : main.cpp borland\liblink_test-borland-mt-d-1_35.lib + bcc32 $(INCLUDES) -tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -L./borland -e./borland/liblink_test-borland-mt-d-1_35.exe main.cpp + echo running test progam borland\liblink_test-borland-mt-d-1_35.exe + borland\liblink_test-borland-mt-d-1_35.exe + +######################################################## +# +# section for liblink_test-borland-d-1_35.lib +# +######################################################## +borland\liblink_test-borland-d-1_35\link_test.obj: link_test.cpp $(ALL_HEADER) + bcc32 @&&| +-c $(INCLUDES) -tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; $(CXXFLAGS) -oborland\liblink_test-borland-d-1_35\link_test.obj link_test.cpp +| + +borland\liblink_test-borland-d-1_35 : + -@mkdir borland\liblink_test-borland-d-1_35 + +liblink_test-borland-d-1_35_clean : + del borland\liblink_test-borland-d-1_35\*.obj + del borland\liblink_test-borland-d-1_35\*.il? + del borland\liblink_test-borland-d-1_35\*.csm + del borland\liblink_test-borland-d-1_35\*.tds + +borland\liblink_test-borland-d-1_35.lib : borland\liblink_test-borland-d-1_35\link_test.obj + tlib @&&| +/P128 /C /u /a $(XSFLAGS) "borland\liblink_test-borland-d-1_35.lib" "borland\liblink_test-borland-d-1_35\link_test.obj" +| + +borland\liblink_test-borland-d-1_35.exe : main.cpp borland\liblink_test-borland-d-1_35.lib + bcc32 $(INCLUDES) -tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I$(BCROOT)\include;../../../../ -L$(BCROOT)\lib;$(BCROOT)\lib\release; /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -L./borland -e./borland/liblink_test-borland-d-1_35.exe main.cpp + echo running test progam borland\liblink_test-borland-d-1_35.exe + borland\liblink_test-borland-d-1_35.exe + diff --git a/src/boost/libs/config/test/link/common.sh b/src/boost/libs/config/test/link/common.sh new file mode 100644 index 000000000..9725a5c36 --- /dev/null +++ b/src/boost/libs/config/test/link/common.sh @@ -0,0 +1,19 @@ +# copyright John Maddock 2005 +# 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) +# +# locate all the header dependencies: +header="" +# +# locate all the source files: +src=link_test.cpp + +boost_version=$(grep 'define.*BOOST_LIB_VERSION' ../../../../boost/version.hpp | sed 's/.*"\([^"]*\)".*/\1/') + + + + + + + diff --git a/src/boost/libs/config/test/link/link_test.cpp b/src/boost/libs/config/test/link/link_test.cpp new file mode 100644 index 000000000..be80bfcdc --- /dev/null +++ b/src/boost/libs/config/test/link/link_test.cpp @@ -0,0 +1,54 @@ +// (C) Copyright John Maddock 2003. +// 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. + + +#define BOOST_CONFIG_SOURCE + +#include "link_test.hpp" +#include <iostream> +#include <iomanip> + +bool BOOST_CONFIG_DECL check_options( + bool m_dyn_link, + bool m_dyn_rtl, + bool m_has_threads, + bool m_debug, + bool m_stlp_debug) +{ + if(m_dyn_link != dyn_link) + { + std::cout << "Dynamic link options do not match" << std::endl; + std::cout << "Application setting = " << m_dyn_link << " Library setting = " << dyn_link << std::endl; + return false; + } + if(m_dyn_rtl != dyn_rtl) + { + std::cout << "Runtime library options do not match" << std::endl; + std::cout << "Application setting = " << m_dyn_rtl << " Library setting = " << dyn_rtl << std::endl; + return false; + } + if(m_has_threads != has_threads) + { + std::cout << "Threading options do not match" << std::endl; + std::cout << "Application setting = " << m_has_threads << " Library setting = " << has_threads << std::endl; + return false; + } + if(m_debug != debug) + { + std::cout << "Debug options do not match" << std::endl; + std::cout << "Application setting = " << m_debug << " Library setting = " << debug << std::endl; + return false; + } + if(m_stlp_debug != stl_debug) + { + std::cout << "STLPort debug options do not match" << std::endl; + std::cout << "Application setting = " << m_stlp_debug << " Library setting = " << stl_debug << std::endl; + return false; + } + return true; +} + diff --git a/src/boost/libs/config/test/link/link_test.hpp b/src/boost/libs/config/test/link/link_test.hpp new file mode 100644 index 000000000..c95d963a4 --- /dev/null +++ b/src/boost/libs/config/test/link/link_test.hpp @@ -0,0 +1,108 @@ +// (C) Copyright John Maddock 2003. +// 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. + +#ifndef BOOST_LINK_TEST_HPP +#define BOOST_LINK_TEST_HPP + +#include <boost/config.hpp> + +// +// set up code to determine our compilers options, +// we will check that these are the same in the +// .exe and the .dll: +// +#ifdef BOOST_DYN_LINK +static const bool dyn_link = true; +#else +static const bool dyn_link = false; +#endif +#if defined(_DLL) || defined(_RTLDLL) +static const bool dyn_rtl = true; +#else +static const bool dyn_rtl = false; +#endif +#if defined(BOOST_HAS_THREADS) +static const bool has_threads = true; +#else +static const bool has_threads = false; +#endif +#if defined(_DEBUG) +static const bool debug = true; +#else +static const bool debug = false; +#endif +#if defined(__STL_DEBUG) || defined(_STLP_DEBUG) +static const bool stl_debug = true; +#else +static const bool stl_debug = false; +#endif + +// +// set up import and export options: +// +#if defined(BOOST_DYN_LINK) +# ifdef BOOST_CONFIG_SOURCE +# define BOOST_CONFIG_DECL BOOST_SYMBOL_EXPORT +# else +# define BOOST_CONFIG_DECL BOOST_SYMBOL_IMPORT +# endif +#endif +#ifndef BOOST_CONFIG_DECL +# define BOOST_CONFIG_DECL +#endif + +// +// define our entry point: +// +bool BOOST_CONFIG_DECL check_options( + bool m_dyn_link, + bool m_dyn_rtl, + bool m_has_threads, + bool m_debug, + bool m_stlp_debug); + +// +// set up automatic linking: +// +#if !defined(BOOST_CONFIG_SOURCE) && !defined(BOOST_CONFIG_NO_LIB) +# define BOOST_LIB_NAME link_test +# include <boost/config/auto_link.hpp> +#endif + +#ifndef BOOST_NO_CXX11_EXTERN_TEMPLATE + +template <class T> +T test_free_proc(T v) +{ + return v; +} + +template <class T> +struct tester +{ + static int test(); +}; + +template <class T> +int tester<T>::test() +{ + return 0; +} + +#ifdef BOOST_CONFIG_SOURCE +template BOOST_SYMBOL_EXPORT int test_free_proc<int>(int); +template BOOST_SYMBOL_EXPORT int tester<int>::test(); +#else +extern template BOOST_SYMBOL_IMPORT int test_free_proc<int>(int); +extern template BOOST_SYMBOL_IMPORT int tester<int>::test(); +#endif + +#endif // BOOST_NO_CXX11_EXTERN_TEMPLATE + +#endif // BOOST_LINK_TEST_HPP + + diff --git a/src/boost/libs/config/test/link/main.cpp b/src/boost/libs/config/test/link/main.cpp new file mode 100644 index 000000000..7233560e2 --- /dev/null +++ b/src/boost/libs/config/test/link/main.cpp @@ -0,0 +1,19 @@ +// (C) Copyright John Maddock 2003. +// 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. + +#include "link_test.hpp" + +int main() +{ +#ifndef BOOST_NO_CXX11_EXTERN_TEMPLATE + test_free_proc<int>(0); + tester<int>::test(); +#endif + return check_options(dyn_link, dyn_rtl, has_threads, debug, stl_debug) ? 0 : -1; +} + + diff --git a/src/boost/libs/config/test/link/test/Jamfile.v2 b/src/boost/libs/config/test/link/test/Jamfile.v2 new file mode 100644 index 000000000..251e52566 --- /dev/null +++ b/src/boost/libs/config/test/link/test/Jamfile.v2 @@ -0,0 +1,117 @@ +# copyright John Maddock 2006 +# 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) + +import type ; + +type.register AUTOLINK_LIB ; + +import generators ; +import "class" : new ; + +# This generator creates library using standard generators, +# and then add <library-path> usage requirements with the +# path of the created library. +class autolink-generator : generator +{ + import generators ; + import "class" ; + import property-set ; + import path ; + + rule run ( project name ? : property-set : sources + ) + { + local result = [ generators.construct $(project) $(name) + : LIB : $(property-set) : $(sources) ] ; + + local targets ; + local usage-requirements ; + + if [ class.is-a $(result[1]) : property-set ] + { + usage-requirements = $(result[1]) ; + targets = $(result[2-]) ; + } + else + { + usage-requirements = [ property-set.empty ] ; + targets = $(result) ; + } + + local extra ; + local paths ; + local pwd = [ path.pwd ] ; + for local t in $(targets) + { + if [ type.is-derived [ $(t).type ] LIB ] + { + paths += [ path.root [ path.make [ $(t).path ] ] $(pwd) ] ; + } + } + extra += $(paths:G=<library-path>) ; + if $(extra) + { + extra = [ sequence.unique $(extra) ] ; + usage-requirements = [ $(usage-requirements).add-raw $(extra) ] ; + } + return $(usage-requirements) $(targets) ; + } +} + +generators.register [ + new autolink-generator $(__name__).autolink : : AUTOLINK_LIB ] ; + +project : requirements -<threading>multi <hardcode-dll-paths>false ; + +autolink-lib link_test : ../link_test.cpp + : <link>shared:<define>BOOST_DYN_LINK=1 + : + ; + + +explicit link_test ; + +run ../main.cpp link_test + : : : <toolset>msvc-8.0:<build>no <toolset>msvc-9.0:<build>no <toolset>msvc-10.0:<build>no <toolset>msvc-11.0:<build>no <toolset>msvc-12.0:<build>no <link>static <runtime-link>static <threading>single debug : link_test_ssd ; + +run ../main.cpp link_test + : : : <toolset>msvc-8.0:<build>no <toolset>msvc-9.0:<build>no <toolset>msvc-10.0:<build>no <toolset>msvc-11.0:<build>no <toolset>msvc-12.0:<build>no <link>static <runtime-link>static <threading>single release : link_test_ssr ; + +run ../main.cpp link_test + : : : <link>static <runtime-link>static <threading>multi debug : link_test_smd ; + +run ../main.cpp link_test + : : : <link>static <runtime-link>static <threading>multi release : link_test_smr ; + +run ../main.cpp link_test + : : : <link>static <runtime-link>shared <threading>multi debug : link_test_dmd ; + +run ../main.cpp link_test + : : : <link>static <runtime-link>shared <threading>multi release : link_test_dmr ; + +run ../main.cpp link_test + : : : <link>static <runtime-link>shared <threading>single debug : link_test_dsd ; + +run ../main.cpp link_test + : : : <link>static <runtime-link>shared <threading>single release : link_test_dsr ; + +run ../main.cpp link_test + : : : <define>BOOST_DYN_LINK=1 <link>shared <runtime-link>shared <threading>multi debug : link_test_dll_dmd ; + +run ../main.cpp link_test + : : : <define>BOOST_DYN_LINK=1 <link>shared <runtime-link>shared <threading>multi release : link_test_dll_dmr ; + +run ../main.cpp link_test + : : : <define>BOOST_DYN_LINK=1 <link>shared <runtime-link>shared <threading>single debug : link_test_dll_dsd ; + +run ../main.cpp link_test + : : : <define>BOOST_DYN_LINK=1 <link>shared <runtime-link>shared <threading>single release : link_test_dll_dsr ; + + + + + + + + diff --git a/src/boost/libs/config/test/link/vc6-stlport.mak b/src/boost/libs/config/test/link/vc6-stlport.mak new file mode 100644 index 000000000..3eb3dc56d --- /dev/null +++ b/src/boost/libs/config/test/link/vc6-stlport.mak @@ -0,0 +1,292 @@ +# copyright John Maddock 2005 +# 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) +# +# auto generated makefile for VC6+STLPort +# +# usage: +# make +# brings libraries up to date +# make install +# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended) +# + +# +# Add additional compiler options here: +# +CXXFLAGS= +# +# Add additional include directories here: +# +INCLUDES= +# +# add additional linker flags here: +# +XLFLAGS= +# +# add additional static-library creation flags here: +# +XSFLAGS= + +!IF "$(OS)" == "Windows_NT" +NULL= +!ELSE +NULL=nul +!ENDIF + +!IF "$(MSVCDIR)" == "" +!ERROR Variable MSVCDIR not set. +!ENDIF + +!IF "$(STLPORT_PATH)" == "" +!ERROR Variable STLPORT_PATH not set. +!ENDIF + + +ALL_HEADER= + +all : main_dir liblink_test-vc6-stlport-mt-s-1_35_dir ./vc6-stlport/liblink_test-vc6-stlport-mt-s-1_35.lib ./vc6-stlport/liblink_test-vc6-stlport-mt-s-1_35.exe liblink_test-vc6-stlport-mt-sgd-1_35_dir ./vc6-stlport/liblink_test-vc6-stlport-mt-sgd-1_35.lib ./vc6-stlport/liblink_test-vc6-stlport-mt-sgd-1_35.exe link_test-vc6-stlport-mt-gd-1_35_dir ./vc6-stlport/link_test-vc6-stlport-mt-gd-1_35.lib ./vc6-stlport/link_test-vc6-stlport-mt-gd-1_35.exe link_test-vc6-stlport-mt-1_35_dir ./vc6-stlport/link_test-vc6-stlport-mt-1_35.lib ./vc6-stlport/link_test-vc6-stlport-mt-1_35.exe liblink_test-vc6-stlport-mt-1_35_dir ./vc6-stlport/liblink_test-vc6-stlport-mt-1_35.lib ./vc6-stlport/liblink_test-vc6-stlport-mt-1_35.exe liblink_test-vc6-stlport-mt-gd-1_35_dir ./vc6-stlport/liblink_test-vc6-stlport-mt-gd-1_35.lib ./vc6-stlport/liblink_test-vc6-stlport-mt-gd-1_35.exe link_test-vc6-stlport-mt-pgd-1_35_dir ./vc6-stlport/link_test-vc6-stlport-mt-pgd-1_35.lib ./vc6-stlport/link_test-vc6-stlport-mt-pgd-1_35.exe liblink_test-vc6-stlport-mt-spgd-1_35_dir ./vc6-stlport/liblink_test-vc6-stlport-mt-spgd-1_35.lib ./vc6-stlport/liblink_test-vc6-stlport-mt-spgd-1_35.exe liblink_test-vc6-stlport-mt-pgd-1_35_dir ./vc6-stlport/liblink_test-vc6-stlport-mt-pgd-1_35.lib ./vc6-stlport/liblink_test-vc6-stlport-mt-pgd-1_35.exe + +clean : liblink_test-vc6-stlport-mt-s-1_35_clean liblink_test-vc6-stlport-mt-sgd-1_35_clean link_test-vc6-stlport-mt-gd-1_35_clean link_test-vc6-stlport-mt-1_35_clean liblink_test-vc6-stlport-mt-1_35_clean liblink_test-vc6-stlport-mt-gd-1_35_clean link_test-vc6-stlport-mt-pgd-1_35_clean liblink_test-vc6-stlport-mt-spgd-1_35_clean liblink_test-vc6-stlport-mt-pgd-1_35_clean + +install : stlport_check all + copy vc6-stlport\liblink_test-vc6-stlport-mt-s-1_35.lib "$(MSVCDIR)\lib" + copy vc6-stlport\liblink_test-vc6-stlport-mt-sgd-1_35.lib "$(MSVCDIR)\lib" + copy vc6-stlport\link_test-vc6-stlport-mt-gd-1_35.lib "$(MSVCDIR)\lib" + copy vc6-stlport\link_test-vc6-stlport-mt-gd-1_35.dll "$(MSVCDIR)\bin" + copy vc6-stlport\link_test-vc6-stlport-mt-1_35.lib "$(MSVCDIR)\lib" + copy vc6-stlport\link_test-vc6-stlport-mt-1_35.dll "$(MSVCDIR)\bin" + copy vc6-stlport\liblink_test-vc6-stlport-mt-1_35.lib "$(MSVCDIR)\lib" + copy vc6-stlport\liblink_test-vc6-stlport-mt-gd-1_35.lib "$(MSVCDIR)\lib" + copy vc6-stlport\link_test-vc6-stlport-mt-pgd-1_35.lib "$(MSVCDIR)\lib" + copy vc6-stlport\link_test-vc6-stlport-mt-pgd-1_35.dll "$(MSVCDIR)\bin" + copy vc6-stlport\link_test-vc6-stlport-mt-pgd-1_35.pdb "$(MSVCDIR)\lib" + copy vc6-stlport\liblink_test-vc6-stlport-mt-spgd-1_35.lib "$(MSVCDIR)\lib" + copy vc6-stlport\liblink_test-vc6-stlport-mt-spgd-1_35.pdb "$(MSVCDIR)\lib" + copy vc6-stlport\liblink_test-vc6-stlport-mt-pgd-1_35.lib "$(MSVCDIR)\lib" + copy vc6-stlport\liblink_test-vc6-stlport-mt-pgd-1_35.pdb "$(MSVCDIR)\lib" + +main_dir : + @if not exist "vc6-stlport\$(NULL)" mkdir vc6-stlport + +stlport_check : $(STLPORT_PATH)\stlport\string + echo + + +######################################################## +# +# section for liblink_test-vc6-stlport-mt-s-1_35.lib +# +######################################################## +vc6-stlport/liblink_test-vc6-stlport-mt-s-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB $(CXXFLAGS) -Y- -Fo./vc6-stlport/liblink_test-vc6-stlport-mt-s-1_35/ -Fdvc6-stlport/liblink_test-vc6-stlport-mt-s-1_35.pdb link_test.cpp + +liblink_test-vc6-stlport-mt-s-1_35_dir : + @if not exist "vc6-stlport\liblink_test-vc6-stlport-mt-s-1_35\$(NULL)" mkdir vc6-stlport\liblink_test-vc6-stlport-mt-s-1_35 + +liblink_test-vc6-stlport-mt-s-1_35_clean : + del vc6-stlport\liblink_test-vc6-stlport-mt-s-1_35\*.obj + del vc6-stlport\liblink_test-vc6-stlport-mt-s-1_35\*.idb + del vc6-stlport\liblink_test-vc6-stlport-mt-s-1_35\*.exp + del vc6-stlport\liblink_test-vc6-stlport-mt-s-1_35\*.pch + +./vc6-stlport/liblink_test-vc6-stlport-mt-s-1_35.lib : vc6-stlport/liblink_test-vc6-stlport-mt-s-1_35/link_test.obj + link -lib /nologo /out:vc6-stlport/liblink_test-vc6-stlport-mt-s-1_35.lib $(XSFLAGS) vc6-stlport/liblink_test-vc6-stlport-mt-s-1_35/link_test.obj + +./vc6-stlport/liblink_test-vc6-stlport-mt-s-1_35.exe : main.cpp ./vc6-stlport/liblink_test-vc6-stlport-mt-s-1_35.lib + cl $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6-stlport/liblink_test-vc6-stlport-mt-s-1_35.exe main.cpp /link /LIBPATH:./vc6-stlport + vc6-stlport\liblink_test-vc6-stlport-mt-s-1_35.exe + +######################################################## +# +# section for liblink_test-vc6-stlport-mt-sgd-1_35.lib +# +######################################################## +vc6-stlport/liblink_test-vc6-stlport-mt-sgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX $(CXXFLAGS) -Y- -Fo./vc6-stlport/liblink_test-vc6-stlport-mt-sgd-1_35/ -Fdvc6-stlport/liblink_test-vc6-stlport-mt-sgd-1_35.pdb link_test.cpp + +liblink_test-vc6-stlport-mt-sgd-1_35_dir : + @if not exist "vc6-stlport\liblink_test-vc6-stlport-mt-sgd-1_35\$(NULL)" mkdir vc6-stlport\liblink_test-vc6-stlport-mt-sgd-1_35 + +liblink_test-vc6-stlport-mt-sgd-1_35_clean : + del vc6-stlport\liblink_test-vc6-stlport-mt-sgd-1_35\*.obj + del vc6-stlport\liblink_test-vc6-stlport-mt-sgd-1_35\*.idb + del vc6-stlport\liblink_test-vc6-stlport-mt-sgd-1_35\*.exp + del vc6-stlport\liblink_test-vc6-stlport-mt-sgd-1_35\*.pch + +./vc6-stlport/liblink_test-vc6-stlport-mt-sgd-1_35.lib : vc6-stlport/liblink_test-vc6-stlport-mt-sgd-1_35/link_test.obj + link -lib /nologo /out:vc6-stlport/liblink_test-vc6-stlport-mt-sgd-1_35.lib $(XSFLAGS) vc6-stlport/liblink_test-vc6-stlport-mt-sgd-1_35/link_test.obj + +./vc6-stlport/liblink_test-vc6-stlport-mt-sgd-1_35.exe : main.cpp ./vc6-stlport/liblink_test-vc6-stlport-mt-sgd-1_35.lib + cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6-stlport/liblink_test-vc6-stlport-mt-sgd-1_35.exe main.cpp /link /LIBPATH:./vc6-stlport + vc6-stlport\liblink_test-vc6-stlport-mt-sgd-1_35.exe + +######################################################## +# +# section for link_test-vc6-stlport-mt-gd-1_35.lib +# +######################################################## +vc6-stlport/link_test-vc6-stlport-mt-gd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX $(CXXFLAGS) -Y- -Fo./vc6-stlport/link_test-vc6-stlport-mt-gd-1_35/ -Fdvc6-stlport/link_test-vc6-stlport-mt-gd-1_35.pdb link_test.cpp + +link_test-vc6-stlport-mt-gd-1_35_dir : + @if not exist "vc6-stlport\link_test-vc6-stlport-mt-gd-1_35\$(NULL)" mkdir vc6-stlport\link_test-vc6-stlport-mt-gd-1_35 + +link_test-vc6-stlport-mt-gd-1_35_clean : + del vc6-stlport\link_test-vc6-stlport-mt-gd-1_35\*.obj + del vc6-stlport\link_test-vc6-stlport-mt-gd-1_35\*.idb + del vc6-stlport\link_test-vc6-stlport-mt-gd-1_35\*.exp + del vc6-stlport\link_test-vc6-stlport-mt-gd-1_35\*.pch + +./vc6-stlport/link_test-vc6-stlport-mt-gd-1_35.lib : vc6-stlport/link_test-vc6-stlport-mt-gd-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc6-stlport/link_test-vc6-stlport-mt-gd-1_35.pdb" /debug /machine:I386 /out:"vc6-stlport/link_test-vc6-stlport-mt-gd-1_35.dll" /implib:"vc6-stlport/link_test-vc6-stlport-mt-gd-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc6-stlport/link_test-vc6-stlport-mt-gd-1_35/link_test.obj + +./vc6-stlport/link_test-vc6-stlport-mt-gd-1_35.exe : main.cpp ./vc6-stlport/link_test-vc6-stlport-mt-gd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6-stlport/link_test-vc6-stlport-mt-gd-1_35.exe main.cpp /link /LIBPATH:./vc6-stlport + vc6-stlport\link_test-vc6-stlport-mt-gd-1_35.exe + +######################################################## +# +# section for link_test-vc6-stlport-mt-1_35.lib +# +######################################################## +vc6-stlport/link_test-vc6-stlport-mt-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /I$(STLPORT_PATH)\stlport /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -Y- -Fo./vc6-stlport/link_test-vc6-stlport-mt-1_35/ -Fdvc6-stlport/link_test-vc6-stlport-mt-1_35.pdb link_test.cpp + +link_test-vc6-stlport-mt-1_35_dir : + @if not exist "vc6-stlport\link_test-vc6-stlport-mt-1_35\$(NULL)" mkdir vc6-stlport\link_test-vc6-stlport-mt-1_35 + +link_test-vc6-stlport-mt-1_35_clean : + del vc6-stlport\link_test-vc6-stlport-mt-1_35\*.obj + del vc6-stlport\link_test-vc6-stlport-mt-1_35\*.idb + del vc6-stlport\link_test-vc6-stlport-mt-1_35\*.exp + del vc6-stlport\link_test-vc6-stlport-mt-1_35\*.pch + +./vc6-stlport/link_test-vc6-stlport-mt-1_35.lib : vc6-stlport/link_test-vc6-stlport-mt-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc6-stlport/link_test-vc6-stlport-mt-1_35.pdb" /debug /machine:I386 /out:"vc6-stlport/link_test-vc6-stlport-mt-1_35.dll" /implib:"vc6-stlport/link_test-vc6-stlport-mt-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc6-stlport/link_test-vc6-stlport-mt-1_35/link_test.obj + +./vc6-stlport/link_test-vc6-stlport-mt-1_35.exe : main.cpp ./vc6-stlport/link_test-vc6-stlport-mt-1_35.lib + cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /I$(STLPORT_PATH)\stlport /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6-stlport/link_test-vc6-stlport-mt-1_35.exe main.cpp /link /LIBPATH:./vc6-stlport + vc6-stlport\link_test-vc6-stlport-mt-1_35.exe + +######################################################## +# +# section for liblink_test-vc6-stlport-mt-1_35.lib +# +######################################################## +vc6-stlport/liblink_test-vc6-stlport-mt-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -Y- -Fo./vc6-stlport/liblink_test-vc6-stlport-mt-1_35/ -Fdvc6-stlport/liblink_test-vc6-stlport-mt-1_35.pdb link_test.cpp + +liblink_test-vc6-stlport-mt-1_35_dir : + @if not exist "vc6-stlport\liblink_test-vc6-stlport-mt-1_35\$(NULL)" mkdir vc6-stlport\liblink_test-vc6-stlport-mt-1_35 + +liblink_test-vc6-stlport-mt-1_35_clean : + del vc6-stlport\liblink_test-vc6-stlport-mt-1_35\*.obj + del vc6-stlport\liblink_test-vc6-stlport-mt-1_35\*.idb + del vc6-stlport\liblink_test-vc6-stlport-mt-1_35\*.exp + del vc6-stlport\liblink_test-vc6-stlport-mt-1_35\*.pch + +./vc6-stlport/liblink_test-vc6-stlport-mt-1_35.lib : vc6-stlport/liblink_test-vc6-stlport-mt-1_35/link_test.obj + link -lib /nologo /out:vc6-stlport/liblink_test-vc6-stlport-mt-1_35.lib $(XSFLAGS) vc6-stlport/liblink_test-vc6-stlport-mt-1_35/link_test.obj + +./vc6-stlport/liblink_test-vc6-stlport-mt-1_35.exe : main.cpp ./vc6-stlport/liblink_test-vc6-stlport-mt-1_35.lib + cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6-stlport/liblink_test-vc6-stlport-mt-1_35.exe main.cpp /link /LIBPATH:./vc6-stlport + vc6-stlport\liblink_test-vc6-stlport-mt-1_35.exe + +######################################################## +# +# section for liblink_test-vc6-stlport-mt-gd-1_35.lib +# +######################################################## +vc6-stlport/liblink_test-vc6-stlport-mt-gd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX $(CXXFLAGS) -Y- -Fo./vc6-stlport/liblink_test-vc6-stlport-mt-gd-1_35/ -Fdvc6-stlport/liblink_test-vc6-stlport-mt-gd-1_35.pdb link_test.cpp + +liblink_test-vc6-stlport-mt-gd-1_35_dir : + @if not exist "vc6-stlport\liblink_test-vc6-stlport-mt-gd-1_35\$(NULL)" mkdir vc6-stlport\liblink_test-vc6-stlport-mt-gd-1_35 + +liblink_test-vc6-stlport-mt-gd-1_35_clean : + del vc6-stlport\liblink_test-vc6-stlport-mt-gd-1_35\*.obj + del vc6-stlport\liblink_test-vc6-stlport-mt-gd-1_35\*.idb + del vc6-stlport\liblink_test-vc6-stlport-mt-gd-1_35\*.exp + del vc6-stlport\liblink_test-vc6-stlport-mt-gd-1_35\*.pch + +./vc6-stlport/liblink_test-vc6-stlport-mt-gd-1_35.lib : vc6-stlport/liblink_test-vc6-stlport-mt-gd-1_35/link_test.obj + link -lib /nologo /out:vc6-stlport/liblink_test-vc6-stlport-mt-gd-1_35.lib $(XSFLAGS) vc6-stlport/liblink_test-vc6-stlport-mt-gd-1_35/link_test.obj + +./vc6-stlport/liblink_test-vc6-stlport-mt-gd-1_35.exe : main.cpp ./vc6-stlport/liblink_test-vc6-stlport-mt-gd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6-stlport/liblink_test-vc6-stlport-mt-gd-1_35.exe main.cpp /link /LIBPATH:./vc6-stlport + vc6-stlport\liblink_test-vc6-stlport-mt-gd-1_35.exe + +######################################################## +# +# section for link_test-vc6-stlport-mt-pgd-1_35.lib +# +######################################################## +vc6-stlport/link_test-vc6-stlport-mt-pgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX $(CXXFLAGS) -Y- -Fo./vc6-stlport/link_test-vc6-stlport-mt-pgd-1_35/ -Fdvc6-stlport/link_test-vc6-stlport-mt-pgd-1_35.pdb link_test.cpp + +link_test-vc6-stlport-mt-pgd-1_35_dir : + @if not exist "vc6-stlport\link_test-vc6-stlport-mt-pgd-1_35\$(NULL)" mkdir vc6-stlport\link_test-vc6-stlport-mt-pgd-1_35 + +link_test-vc6-stlport-mt-pgd-1_35_clean : + del vc6-stlport\link_test-vc6-stlport-mt-pgd-1_35\*.obj + del vc6-stlport\link_test-vc6-stlport-mt-pgd-1_35\*.idb + del vc6-stlport\link_test-vc6-stlport-mt-pgd-1_35\*.exp + del vc6-stlport\link_test-vc6-stlport-mt-pgd-1_35\*.pch + +./vc6-stlport/link_test-vc6-stlport-mt-pgd-1_35.lib : vc6-stlport/link_test-vc6-stlport-mt-pgd-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc6-stlport/link_test-vc6-stlport-mt-pgd-1_35.pdb" /debug /machine:I386 /out:"vc6-stlport/link_test-vc6-stlport-mt-pgd-1_35.dll" /implib:"vc6-stlport/link_test-vc6-stlport-mt-pgd-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc6-stlport/link_test-vc6-stlport-mt-pgd-1_35/link_test.obj + +./vc6-stlport/link_test-vc6-stlport-mt-pgd-1_35.exe : main.cpp ./vc6-stlport/link_test-vc6-stlport-mt-pgd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6-stlport/link_test-vc6-stlport-mt-pgd-1_35.exe main.cpp /link /LIBPATH:./vc6-stlport + vc6-stlport\link_test-vc6-stlport-mt-pgd-1_35.exe + +######################################################## +# +# section for liblink_test-vc6-stlport-mt-spgd-1_35.lib +# +######################################################## +vc6-stlport/liblink_test-vc6-stlport-mt-spgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D__STL_DEBUG /D_STLP_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX $(CXXFLAGS) -Y- -Fo./vc6-stlport/liblink_test-vc6-stlport-mt-spgd-1_35/ -Fdvc6-stlport/liblink_test-vc6-stlport-mt-spgd-1_35.pdb link_test.cpp + +liblink_test-vc6-stlport-mt-spgd-1_35_dir : + @if not exist "vc6-stlport\liblink_test-vc6-stlport-mt-spgd-1_35\$(NULL)" mkdir vc6-stlport\liblink_test-vc6-stlport-mt-spgd-1_35 + +liblink_test-vc6-stlport-mt-spgd-1_35_clean : + del vc6-stlport\liblink_test-vc6-stlport-mt-spgd-1_35\*.obj + del vc6-stlport\liblink_test-vc6-stlport-mt-spgd-1_35\*.idb + del vc6-stlport\liblink_test-vc6-stlport-mt-spgd-1_35\*.exp + del vc6-stlport\liblink_test-vc6-stlport-mt-spgd-1_35\*.pch + +./vc6-stlport/liblink_test-vc6-stlport-mt-spgd-1_35.lib : vc6-stlport/liblink_test-vc6-stlport-mt-spgd-1_35/link_test.obj + link -lib /nologo /out:vc6-stlport/liblink_test-vc6-stlport-mt-spgd-1_35.lib $(XSFLAGS) vc6-stlport/liblink_test-vc6-stlport-mt-spgd-1_35/link_test.obj + +./vc6-stlport/liblink_test-vc6-stlport-mt-spgd-1_35.exe : main.cpp ./vc6-stlport/liblink_test-vc6-stlport-mt-spgd-1_35.lib + cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D__STL_DEBUG /D_STLP_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6-stlport/liblink_test-vc6-stlport-mt-spgd-1_35.exe main.cpp /link /LIBPATH:./vc6-stlport + vc6-stlport\liblink_test-vc6-stlport-mt-spgd-1_35.exe + +######################################################## +# +# section for liblink_test-vc6-stlport-mt-pgd-1_35.lib +# +######################################################## +vc6-stlport/liblink_test-vc6-stlport-mt-pgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX $(CXXFLAGS) -Y- -Fo./vc6-stlport/liblink_test-vc6-stlport-mt-pgd-1_35/ -Fdvc6-stlport/liblink_test-vc6-stlport-mt-pgd-1_35.pdb link_test.cpp + +liblink_test-vc6-stlport-mt-pgd-1_35_dir : + @if not exist "vc6-stlport\liblink_test-vc6-stlport-mt-pgd-1_35\$(NULL)" mkdir vc6-stlport\liblink_test-vc6-stlport-mt-pgd-1_35 + +liblink_test-vc6-stlport-mt-pgd-1_35_clean : + del vc6-stlport\liblink_test-vc6-stlport-mt-pgd-1_35\*.obj + del vc6-stlport\liblink_test-vc6-stlport-mt-pgd-1_35\*.idb + del vc6-stlport\liblink_test-vc6-stlport-mt-pgd-1_35\*.exp + del vc6-stlport\liblink_test-vc6-stlport-mt-pgd-1_35\*.pch + +./vc6-stlport/liblink_test-vc6-stlport-mt-pgd-1_35.lib : vc6-stlport/liblink_test-vc6-stlport-mt-pgd-1_35/link_test.obj + link -lib /nologo /out:vc6-stlport/liblink_test-vc6-stlport-mt-pgd-1_35.lib $(XSFLAGS) vc6-stlport/liblink_test-vc6-stlport-mt-pgd-1_35/link_test.obj + +./vc6-stlport/liblink_test-vc6-stlport-mt-pgd-1_35.exe : main.cpp ./vc6-stlport/liblink_test-vc6-stlport-mt-pgd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6-stlport/liblink_test-vc6-stlport-mt-pgd-1_35.exe main.cpp /link /LIBPATH:./vc6-stlport + vc6-stlport\liblink_test-vc6-stlport-mt-pgd-1_35.exe + diff --git a/src/boost/libs/config/test/link/vc6.mak b/src/boost/libs/config/test/link/vc6.mak new file mode 100644 index 000000000..b5a7798f2 --- /dev/null +++ b/src/boost/libs/config/test/link/vc6.mak @@ -0,0 +1,260 @@ +# copyright John Maddock 2005 +# 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) +# +# auto generated makefile for VC6 compiler +# +# usage: +# make +# brings libraries up to date +# make install +# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended) +# + +# +# Add additional compiler options here: +# +CXXFLAGS= +# +# Add additional include directories here: +# +INCLUDES= +# +# add additional linker flags here: +# +XLFLAGS= +# +# add additional static-library creation flags here: +# +XSFLAGS= + +!IF "$(OS)" == "Windows_NT" +NULL= +!ELSE +NULL=nul +!ENDIF + +!IF "$(MSVCDIR)" == "" +!ERROR Variable MSVCDIR not set. +!ENDIF + + +ALL_HEADER= + +all : main_dir liblink_test-vc6-s-1_35_dir ./vc6/liblink_test-vc6-s-1_35.lib ./vc6/liblink_test-vc6-s-1_35.exe liblink_test-vc6-mt-s-1_35_dir ./vc6/liblink_test-vc6-mt-s-1_35.lib ./vc6/liblink_test-vc6-mt-s-1_35.exe liblink_test-vc6-sgd-1_35_dir ./vc6/liblink_test-vc6-sgd-1_35.lib ./vc6/liblink_test-vc6-sgd-1_35.exe liblink_test-vc6-mt-sgd-1_35_dir ./vc6/liblink_test-vc6-mt-sgd-1_35.lib ./vc6/liblink_test-vc6-mt-sgd-1_35.exe link_test-vc6-mt-gd-1_35_dir ./vc6/link_test-vc6-mt-gd-1_35.lib ./vc6/link_test-vc6-mt-gd-1_35.exe link_test-vc6-mt-1_35_dir ./vc6/link_test-vc6-mt-1_35.lib ./vc6/link_test-vc6-mt-1_35.exe liblink_test-vc6-mt-1_35_dir ./vc6/liblink_test-vc6-mt-1_35.lib ./vc6/liblink_test-vc6-mt-1_35.exe liblink_test-vc6-mt-gd-1_35_dir ./vc6/liblink_test-vc6-mt-gd-1_35.lib ./vc6/liblink_test-vc6-mt-gd-1_35.exe + +clean : liblink_test-vc6-s-1_35_clean liblink_test-vc6-mt-s-1_35_clean liblink_test-vc6-sgd-1_35_clean liblink_test-vc6-mt-sgd-1_35_clean link_test-vc6-mt-gd-1_35_clean link_test-vc6-mt-1_35_clean liblink_test-vc6-mt-1_35_clean liblink_test-vc6-mt-gd-1_35_clean + +install : all + copy vc6\liblink_test-vc6-s-1_35.lib "$(MSVCDIR)\lib" + copy vc6\liblink_test-vc6-mt-s-1_35.lib "$(MSVCDIR)\lib" + copy vc6\liblink_test-vc6-sgd-1_35.lib "$(MSVCDIR)\lib" + copy vc6\liblink_test-vc6-sgd-1_35.pdb "$(MSVCDIR)\lib" + copy vc6\liblink_test-vc6-mt-sgd-1_35.lib "$(MSVCDIR)\lib" + copy vc6\liblink_test-vc6-mt-sgd-1_35.pdb "$(MSVCDIR)\lib" + copy vc6\link_test-vc6-mt-gd-1_35.lib "$(MSVCDIR)\lib" + copy vc6\link_test-vc6-mt-gd-1_35.dll "$(MSVCDIR)\bin" + copy vc6\link_test-vc6-mt-gd-1_35.pdb "$(MSVCDIR)\lib" + copy vc6\link_test-vc6-mt-1_35.lib "$(MSVCDIR)\lib" + copy vc6\link_test-vc6-mt-1_35.dll "$(MSVCDIR)\bin" + copy vc6\liblink_test-vc6-mt-1_35.lib "$(MSVCDIR)\lib" + copy vc6\liblink_test-vc6-mt-gd-1_35.lib "$(MSVCDIR)\lib" + copy vc6\liblink_test-vc6-mt-gd-1_35.pdb "$(MSVCDIR)\lib" + +main_dir : + @if not exist "vc6\$(NULL)" mkdir vc6 + + +######################################################## +# +# section for liblink_test-vc6-s-1_35.lib +# +######################################################## +vc6/liblink_test-vc6-s-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -Y- -Fo./vc6/liblink_test-vc6-s-1_35/ -Fdvc6/liblink_test-vc6-s-1_35.pdb link_test.cpp + +liblink_test-vc6-s-1_35_dir : + @if not exist "vc6\liblink_test-vc6-s-1_35\$(NULL)" mkdir vc6\liblink_test-vc6-s-1_35 + +liblink_test-vc6-s-1_35_clean : + del vc6\liblink_test-vc6-s-1_35\*.obj + del vc6\liblink_test-vc6-s-1_35\*.idb + del vc6\liblink_test-vc6-s-1_35\*.exp + del vc6\liblink_test-vc6-s-1_35\*.pch + +./vc6/liblink_test-vc6-s-1_35.lib : vc6/liblink_test-vc6-s-1_35/link_test.obj + link -lib /nologo /out:vc6/liblink_test-vc6-s-1_35.lib $(XSFLAGS) vc6/liblink_test-vc6-s-1_35/link_test.obj + +./vc6/liblink_test-vc6-s-1_35.exe : main.cpp ./vc6/liblink_test-vc6-s-1_35.lib + cl $(INCLUDES) /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6/liblink_test-vc6-s-1_35.exe main.cpp /link /LIBPATH:./vc6 + vc6\liblink_test-vc6-s-1_35.exe + +######################################################## +# +# section for liblink_test-vc6-mt-s-1_35.lib +# +######################################################## +vc6/liblink_test-vc6-mt-s-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -Y- -Fo./vc6/liblink_test-vc6-mt-s-1_35/ -Fdvc6/liblink_test-vc6-mt-s-1_35.pdb link_test.cpp + +liblink_test-vc6-mt-s-1_35_dir : + @if not exist "vc6\liblink_test-vc6-mt-s-1_35\$(NULL)" mkdir vc6\liblink_test-vc6-mt-s-1_35 + +liblink_test-vc6-mt-s-1_35_clean : + del vc6\liblink_test-vc6-mt-s-1_35\*.obj + del vc6\liblink_test-vc6-mt-s-1_35\*.idb + del vc6\liblink_test-vc6-mt-s-1_35\*.exp + del vc6\liblink_test-vc6-mt-s-1_35\*.pch + +./vc6/liblink_test-vc6-mt-s-1_35.lib : vc6/liblink_test-vc6-mt-s-1_35/link_test.obj + link -lib /nologo /out:vc6/liblink_test-vc6-mt-s-1_35.lib $(XSFLAGS) vc6/liblink_test-vc6-mt-s-1_35/link_test.obj + +./vc6/liblink_test-vc6-mt-s-1_35.exe : main.cpp ./vc6/liblink_test-vc6-mt-s-1_35.lib + cl $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6/liblink_test-vc6-mt-s-1_35.exe main.cpp /link /LIBPATH:./vc6 + vc6\liblink_test-vc6-mt-s-1_35.exe + +######################################################## +# +# section for liblink_test-vc6-sgd-1_35.lib +# +######################################################## +vc6/liblink_test-vc6-sgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MLd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_DEBUG /D_MBCS /D_LIB /FD /GX $(CXXFLAGS) -Y- -Fo./vc6/liblink_test-vc6-sgd-1_35/ -Fdvc6/liblink_test-vc6-sgd-1_35.pdb link_test.cpp + +liblink_test-vc6-sgd-1_35_dir : + @if not exist "vc6\liblink_test-vc6-sgd-1_35\$(NULL)" mkdir vc6\liblink_test-vc6-sgd-1_35 + +liblink_test-vc6-sgd-1_35_clean : + del vc6\liblink_test-vc6-sgd-1_35\*.obj + del vc6\liblink_test-vc6-sgd-1_35\*.idb + del vc6\liblink_test-vc6-sgd-1_35\*.exp + del vc6\liblink_test-vc6-sgd-1_35\*.pch + +./vc6/liblink_test-vc6-sgd-1_35.lib : vc6/liblink_test-vc6-sgd-1_35/link_test.obj + link -lib /nologo /out:vc6/liblink_test-vc6-sgd-1_35.lib $(XSFLAGS) vc6/liblink_test-vc6-sgd-1_35/link_test.obj + +./vc6/liblink_test-vc6-sgd-1_35.exe : main.cpp ./vc6/liblink_test-vc6-sgd-1_35.lib + cl $(INCLUDES) /nologo /MLd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_DEBUG /D_MBCS /D_LIB /FD /GX /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6/liblink_test-vc6-sgd-1_35.exe main.cpp /link /LIBPATH:./vc6 + vc6\liblink_test-vc6-sgd-1_35.exe + +######################################################## +# +# section for liblink_test-vc6-mt-sgd-1_35.lib +# +######################################################## +vc6/liblink_test-vc6-mt-sgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /FD /GX $(CXXFLAGS) -Y- -Fo./vc6/liblink_test-vc6-mt-sgd-1_35/ -Fdvc6/liblink_test-vc6-mt-sgd-1_35.pdb link_test.cpp + +liblink_test-vc6-mt-sgd-1_35_dir : + @if not exist "vc6\liblink_test-vc6-mt-sgd-1_35\$(NULL)" mkdir vc6\liblink_test-vc6-mt-sgd-1_35 + +liblink_test-vc6-mt-sgd-1_35_clean : + del vc6\liblink_test-vc6-mt-sgd-1_35\*.obj + del vc6\liblink_test-vc6-mt-sgd-1_35\*.idb + del vc6\liblink_test-vc6-mt-sgd-1_35\*.exp + del vc6\liblink_test-vc6-mt-sgd-1_35\*.pch + +./vc6/liblink_test-vc6-mt-sgd-1_35.lib : vc6/liblink_test-vc6-mt-sgd-1_35/link_test.obj + link -lib /nologo /out:vc6/liblink_test-vc6-mt-sgd-1_35.lib $(XSFLAGS) vc6/liblink_test-vc6-mt-sgd-1_35/link_test.obj + +./vc6/liblink_test-vc6-mt-sgd-1_35.exe : main.cpp ./vc6/liblink_test-vc6-mt-sgd-1_35.lib + cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /FD /GX /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6/liblink_test-vc6-mt-sgd-1_35.exe main.cpp /link /LIBPATH:./vc6 + vc6\liblink_test-vc6-mt-sgd-1_35.exe + +######################################################## +# +# section for link_test-vc6-mt-gd-1_35.lib +# +######################################################## +vc6/link_test-vc6-mt-gd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /D_DEBUG /DBOOST_DYN_LINK /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX $(CXXFLAGS) -Y- -Fo./vc6/link_test-vc6-mt-gd-1_35/ -Fdvc6/link_test-vc6-mt-gd-1_35.pdb link_test.cpp + +link_test-vc6-mt-gd-1_35_dir : + @if not exist "vc6\link_test-vc6-mt-gd-1_35\$(NULL)" mkdir vc6\link_test-vc6-mt-gd-1_35 + +link_test-vc6-mt-gd-1_35_clean : + del vc6\link_test-vc6-mt-gd-1_35\*.obj + del vc6\link_test-vc6-mt-gd-1_35\*.idb + del vc6\link_test-vc6-mt-gd-1_35\*.exp + del vc6\link_test-vc6-mt-gd-1_35\*.pch + +./vc6/link_test-vc6-mt-gd-1_35.lib : vc6/link_test-vc6-mt-gd-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc6/link_test-vc6-mt-gd-1_35.pdb" /debug /machine:I386 /out:"vc6/link_test-vc6-mt-gd-1_35.dll" /implib:"vc6/link_test-vc6-mt-gd-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc6/link_test-vc6-mt-gd-1_35/link_test.obj + +./vc6/link_test-vc6-mt-gd-1_35.exe : main.cpp ./vc6/link_test-vc6-mt-gd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /D_DEBUG /DBOOST_DYN_LINK /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6/link_test-vc6-mt-gd-1_35.exe main.cpp /link /LIBPATH:./vc6 + vc6\link_test-vc6-mt-gd-1_35.exe + +######################################################## +# +# section for link_test-vc6-mt-1_35.lib +# +######################################################## +vc6/link_test-vc6-mt-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -Y- -Fo./vc6/link_test-vc6-mt-1_35/ -Fdvc6/link_test-vc6-mt-1_35.pdb link_test.cpp + +link_test-vc6-mt-1_35_dir : + @if not exist "vc6\link_test-vc6-mt-1_35\$(NULL)" mkdir vc6\link_test-vc6-mt-1_35 + +link_test-vc6-mt-1_35_clean : + del vc6\link_test-vc6-mt-1_35\*.obj + del vc6\link_test-vc6-mt-1_35\*.idb + del vc6\link_test-vc6-mt-1_35\*.exp + del vc6\link_test-vc6-mt-1_35\*.pch + +./vc6/link_test-vc6-mt-1_35.lib : vc6/link_test-vc6-mt-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc6/link_test-vc6-mt-1_35.pdb" /debug /machine:I386 /out:"vc6/link_test-vc6-mt-1_35.dll" /implib:"vc6/link_test-vc6-mt-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc6/link_test-vc6-mt-1_35/link_test.obj + +./vc6/link_test-vc6-mt-1_35.exe : main.cpp ./vc6/link_test-vc6-mt-1_35.lib + cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6/link_test-vc6-mt-1_35.exe main.cpp /link /LIBPATH:./vc6 + vc6\link_test-vc6-mt-1_35.exe + +######################################################## +# +# section for liblink_test-vc6-mt-1_35.lib +# +######################################################## +vc6/liblink_test-vc6-mt-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -Y- -Fo./vc6/liblink_test-vc6-mt-1_35/ -Fdvc6/liblink_test-vc6-mt-1_35.pdb link_test.cpp + +liblink_test-vc6-mt-1_35_dir : + @if not exist "vc6\liblink_test-vc6-mt-1_35\$(NULL)" mkdir vc6\liblink_test-vc6-mt-1_35 + +liblink_test-vc6-mt-1_35_clean : + del vc6\liblink_test-vc6-mt-1_35\*.obj + del vc6\liblink_test-vc6-mt-1_35\*.idb + del vc6\liblink_test-vc6-mt-1_35\*.exp + del vc6\liblink_test-vc6-mt-1_35\*.pch + +./vc6/liblink_test-vc6-mt-1_35.lib : vc6/liblink_test-vc6-mt-1_35/link_test.obj + link -lib /nologo /out:vc6/liblink_test-vc6-mt-1_35.lib $(XSFLAGS) vc6/liblink_test-vc6-mt-1_35/link_test.obj + +./vc6/liblink_test-vc6-mt-1_35.exe : main.cpp ./vc6/liblink_test-vc6-mt-1_35.lib + cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6/liblink_test-vc6-mt-1_35.exe main.cpp /link /LIBPATH:./vc6 + vc6\liblink_test-vc6-mt-1_35.exe + +######################################################## +# +# section for liblink_test-vc6-mt-gd-1_35.lib +# +######################################################## +vc6/liblink_test-vc6-mt-gd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX $(CXXFLAGS) -Y- -Fo./vc6/liblink_test-vc6-mt-gd-1_35/ -Fdvc6/liblink_test-vc6-mt-gd-1_35.pdb link_test.cpp + +liblink_test-vc6-mt-gd-1_35_dir : + @if not exist "vc6\liblink_test-vc6-mt-gd-1_35\$(NULL)" mkdir vc6\liblink_test-vc6-mt-gd-1_35 + +liblink_test-vc6-mt-gd-1_35_clean : + del vc6\liblink_test-vc6-mt-gd-1_35\*.obj + del vc6\liblink_test-vc6-mt-gd-1_35\*.idb + del vc6\liblink_test-vc6-mt-gd-1_35\*.exp + del vc6\liblink_test-vc6-mt-gd-1_35\*.pch + +./vc6/liblink_test-vc6-mt-gd-1_35.lib : vc6/liblink_test-vc6-mt-gd-1_35/link_test.obj + link -lib /nologo /out:vc6/liblink_test-vc6-mt-gd-1_35.lib $(XSFLAGS) vc6/liblink_test-vc6-mt-gd-1_35/link_test.obj + +./vc6/liblink_test-vc6-mt-gd-1_35.exe : main.cpp ./vc6/liblink_test-vc6-mt-gd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc6/liblink_test-vc6-mt-gd-1_35.exe main.cpp /link /LIBPATH:./vc6 + vc6\liblink_test-vc6-mt-gd-1_35.exe + diff --git a/src/boost/libs/config/test/link/vc7-stlport.mak b/src/boost/libs/config/test/link/vc7-stlport.mak new file mode 100644 index 000000000..5e500f197 --- /dev/null +++ b/src/boost/libs/config/test/link/vc7-stlport.mak @@ -0,0 +1,292 @@ +# copyright John Maddock 2005 +# 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) +# +# auto generated makefile for VC6+STLPort +# +# usage: +# make +# brings libraries up to date +# make install +# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended) +# + +# +# Add additional compiler options here: +# +CXXFLAGS= +# +# Add additional include directories here: +# +INCLUDES= +# +# add additional linker flags here: +# +XLFLAGS= +# +# add additional static-library creation flags here: +# +XSFLAGS= + +!IF "$(OS)" == "Windows_NT" +NULL= +!ELSE +NULL=nul +!ENDIF + +!IF "$(MSVCDIR)" == "" +!ERROR Variable MSVCDIR not set. +!ENDIF + +!IF "$(STLPORT_PATH)" == "" +!ERROR Variable STLPORT_PATH not set. +!ENDIF + + +ALL_HEADER= + +all : main_dir liblink_test-vc7-stlport-mt-s-1_35_dir ./vc7-stlport/liblink_test-vc7-stlport-mt-s-1_35.lib ./vc7-stlport/liblink_test-vc7-stlport-mt-s-1_35.exe liblink_test-vc7-stlport-mt-sgd-1_35_dir ./vc7-stlport/liblink_test-vc7-stlport-mt-sgd-1_35.lib ./vc7-stlport/liblink_test-vc7-stlport-mt-sgd-1_35.exe link_test-vc7-stlport-mt-gd-1_35_dir ./vc7-stlport/link_test-vc7-stlport-mt-gd-1_35.lib ./vc7-stlport/link_test-vc7-stlport-mt-gd-1_35.exe link_test-vc7-stlport-mt-1_35_dir ./vc7-stlport/link_test-vc7-stlport-mt-1_35.lib ./vc7-stlport/link_test-vc7-stlport-mt-1_35.exe liblink_test-vc7-stlport-mt-1_35_dir ./vc7-stlport/liblink_test-vc7-stlport-mt-1_35.lib ./vc7-stlport/liblink_test-vc7-stlport-mt-1_35.exe liblink_test-vc7-stlport-mt-gd-1_35_dir ./vc7-stlport/liblink_test-vc7-stlport-mt-gd-1_35.lib ./vc7-stlport/liblink_test-vc7-stlport-mt-gd-1_35.exe link_test-vc7-stlport-mt-pgd-1_35_dir ./vc7-stlport/link_test-vc7-stlport-mt-pgd-1_35.lib ./vc7-stlport/link_test-vc7-stlport-mt-pgd-1_35.exe liblink_test-vc7-stlport-mt-spgd-1_35_dir ./vc7-stlport/liblink_test-vc7-stlport-mt-spgd-1_35.lib ./vc7-stlport/liblink_test-vc7-stlport-mt-spgd-1_35.exe liblink_test-vc7-stlport-mt-pgd-1_35_dir ./vc7-stlport/liblink_test-vc7-stlport-mt-pgd-1_35.lib ./vc7-stlport/liblink_test-vc7-stlport-mt-pgd-1_35.exe + +clean : liblink_test-vc7-stlport-mt-s-1_35_clean liblink_test-vc7-stlport-mt-sgd-1_35_clean link_test-vc7-stlport-mt-gd-1_35_clean link_test-vc7-stlport-mt-1_35_clean liblink_test-vc7-stlport-mt-1_35_clean liblink_test-vc7-stlport-mt-gd-1_35_clean link_test-vc7-stlport-mt-pgd-1_35_clean liblink_test-vc7-stlport-mt-spgd-1_35_clean liblink_test-vc7-stlport-mt-pgd-1_35_clean + +install : stlport_check all + copy vc7-stlport\liblink_test-vc7-stlport-mt-s-1_35.lib "$(MSVCDIR)\lib" + copy vc7-stlport\liblink_test-vc7-stlport-mt-sgd-1_35.lib "$(MSVCDIR)\lib" + copy vc7-stlport\link_test-vc7-stlport-mt-gd-1_35.lib "$(MSVCDIR)\lib" + copy vc7-stlport\link_test-vc7-stlport-mt-gd-1_35.dll "$(MSVCDIR)\bin" + copy vc7-stlport\link_test-vc7-stlport-mt-1_35.lib "$(MSVCDIR)\lib" + copy vc7-stlport\link_test-vc7-stlport-mt-1_35.dll "$(MSVCDIR)\bin" + copy vc7-stlport\liblink_test-vc7-stlport-mt-1_35.lib "$(MSVCDIR)\lib" + copy vc7-stlport\liblink_test-vc7-stlport-mt-gd-1_35.lib "$(MSVCDIR)\lib" + copy vc7-stlport\link_test-vc7-stlport-mt-pgd-1_35.lib "$(MSVCDIR)\lib" + copy vc7-stlport\link_test-vc7-stlport-mt-pgd-1_35.dll "$(MSVCDIR)\bin" + copy vc7-stlport\link_test-vc7-stlport-mt-pgd-1_35.pdb "$(MSVCDIR)\lib" + copy vc7-stlport\liblink_test-vc7-stlport-mt-spgd-1_35.lib "$(MSVCDIR)\lib" + copy vc7-stlport\liblink_test-vc7-stlport-mt-spgd-1_35.pdb "$(MSVCDIR)\lib" + copy vc7-stlport\liblink_test-vc7-stlport-mt-pgd-1_35.lib "$(MSVCDIR)\lib" + copy vc7-stlport\liblink_test-vc7-stlport-mt-pgd-1_35.pdb "$(MSVCDIR)\lib" + +main_dir : + @if not exist "vc7-stlport\$(NULL)" mkdir vc7-stlport + +stlport_check : $(STLPORT_PATH)\stlport\string + echo + + +######################################################## +# +# section for liblink_test-vc7-stlport-mt-s-1_35.lib +# +######################################################## +vc7-stlport/liblink_test-vc7-stlport-mt-s-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB $(CXXFLAGS) -Y- -Fo./vc7-stlport/liblink_test-vc7-stlport-mt-s-1_35/ -Fdvc7-stlport/liblink_test-vc7-stlport-mt-s-1_35.pdb link_test.cpp + +liblink_test-vc7-stlport-mt-s-1_35_dir : + @if not exist "vc7-stlport\liblink_test-vc7-stlport-mt-s-1_35\$(NULL)" mkdir vc7-stlport\liblink_test-vc7-stlport-mt-s-1_35 + +liblink_test-vc7-stlport-mt-s-1_35_clean : + del vc7-stlport\liblink_test-vc7-stlport-mt-s-1_35\*.obj + del vc7-stlport\liblink_test-vc7-stlport-mt-s-1_35\*.idb + del vc7-stlport\liblink_test-vc7-stlport-mt-s-1_35\*.exp + del vc7-stlport\liblink_test-vc7-stlport-mt-s-1_35\*.pch + +./vc7-stlport/liblink_test-vc7-stlport-mt-s-1_35.lib : vc7-stlport/liblink_test-vc7-stlport-mt-s-1_35/link_test.obj + link -lib /nologo /out:vc7-stlport/liblink_test-vc7-stlport-mt-s-1_35.lib $(XSFLAGS) vc7-stlport/liblink_test-vc7-stlport-mt-s-1_35/link_test.obj + +./vc7-stlport/liblink_test-vc7-stlport-mt-s-1_35.exe : main.cpp ./vc7-stlport/liblink_test-vc7-stlport-mt-s-1_35.lib + cl $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7-stlport/liblink_test-vc7-stlport-mt-s-1_35.exe main.cpp /link /LIBPATH:./vc7-stlport + vc7-stlport\liblink_test-vc7-stlport-mt-s-1_35.exe + +######################################################## +# +# section for liblink_test-vc7-stlport-mt-sgd-1_35.lib +# +######################################################## +vc7-stlport/liblink_test-vc7-stlport-mt-sgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7-stlport/liblink_test-vc7-stlport-mt-sgd-1_35/ -Fdvc7-stlport/liblink_test-vc7-stlport-mt-sgd-1_35.pdb link_test.cpp + +liblink_test-vc7-stlport-mt-sgd-1_35_dir : + @if not exist "vc7-stlport\liblink_test-vc7-stlport-mt-sgd-1_35\$(NULL)" mkdir vc7-stlport\liblink_test-vc7-stlport-mt-sgd-1_35 + +liblink_test-vc7-stlport-mt-sgd-1_35_clean : + del vc7-stlport\liblink_test-vc7-stlport-mt-sgd-1_35\*.obj + del vc7-stlport\liblink_test-vc7-stlport-mt-sgd-1_35\*.idb + del vc7-stlport\liblink_test-vc7-stlport-mt-sgd-1_35\*.exp + del vc7-stlport\liblink_test-vc7-stlport-mt-sgd-1_35\*.pch + +./vc7-stlport/liblink_test-vc7-stlport-mt-sgd-1_35.lib : vc7-stlport/liblink_test-vc7-stlport-mt-sgd-1_35/link_test.obj + link -lib /nologo /out:vc7-stlport/liblink_test-vc7-stlport-mt-sgd-1_35.lib $(XSFLAGS) vc7-stlport/liblink_test-vc7-stlport-mt-sgd-1_35/link_test.obj + +./vc7-stlport/liblink_test-vc7-stlport-mt-sgd-1_35.exe : main.cpp ./vc7-stlport/liblink_test-vc7-stlport-mt-sgd-1_35.lib + cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7-stlport/liblink_test-vc7-stlport-mt-sgd-1_35.exe main.cpp /link /LIBPATH:./vc7-stlport + vc7-stlport\liblink_test-vc7-stlport-mt-sgd-1_35.exe + +######################################################## +# +# section for link_test-vc7-stlport-mt-gd-1_35.lib +# +######################################################## +vc7-stlport/link_test-vc7-stlport-mt-gd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7-stlport/link_test-vc7-stlport-mt-gd-1_35/ -Fdvc7-stlport/link_test-vc7-stlport-mt-gd-1_35.pdb link_test.cpp + +link_test-vc7-stlport-mt-gd-1_35_dir : + @if not exist "vc7-stlport\link_test-vc7-stlport-mt-gd-1_35\$(NULL)" mkdir vc7-stlport\link_test-vc7-stlport-mt-gd-1_35 + +link_test-vc7-stlport-mt-gd-1_35_clean : + del vc7-stlport\link_test-vc7-stlport-mt-gd-1_35\*.obj + del vc7-stlport\link_test-vc7-stlport-mt-gd-1_35\*.idb + del vc7-stlport\link_test-vc7-stlport-mt-gd-1_35\*.exp + del vc7-stlport\link_test-vc7-stlport-mt-gd-1_35\*.pch + +./vc7-stlport/link_test-vc7-stlport-mt-gd-1_35.lib : vc7-stlport/link_test-vc7-stlport-mt-gd-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc7-stlport/link_test-vc7-stlport-mt-gd-1_35.pdb" /debug /machine:I386 /out:"vc7-stlport/link_test-vc7-stlport-mt-gd-1_35.dll" /implib:"vc7-stlport/link_test-vc7-stlport-mt-gd-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc7-stlport/link_test-vc7-stlport-mt-gd-1_35/link_test.obj + +./vc7-stlport/link_test-vc7-stlport-mt-gd-1_35.exe : main.cpp ./vc7-stlport/link_test-vc7-stlport-mt-gd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7-stlport/link_test-vc7-stlport-mt-gd-1_35.exe main.cpp /link /LIBPATH:./vc7-stlport + vc7-stlport\link_test-vc7-stlport-mt-gd-1_35.exe + +######################################################## +# +# section for link_test-vc7-stlport-mt-1_35.lib +# +######################################################## +vc7-stlport/link_test-vc7-stlport-mt-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /I$(STLPORT_PATH)\stlport /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -Y- -Fo./vc7-stlport/link_test-vc7-stlport-mt-1_35/ -Fdvc7-stlport/link_test-vc7-stlport-mt-1_35.pdb link_test.cpp + +link_test-vc7-stlport-mt-1_35_dir : + @if not exist "vc7-stlport\link_test-vc7-stlport-mt-1_35\$(NULL)" mkdir vc7-stlport\link_test-vc7-stlport-mt-1_35 + +link_test-vc7-stlport-mt-1_35_clean : + del vc7-stlport\link_test-vc7-stlport-mt-1_35\*.obj + del vc7-stlport\link_test-vc7-stlport-mt-1_35\*.idb + del vc7-stlport\link_test-vc7-stlport-mt-1_35\*.exp + del vc7-stlport\link_test-vc7-stlport-mt-1_35\*.pch + +./vc7-stlport/link_test-vc7-stlport-mt-1_35.lib : vc7-stlport/link_test-vc7-stlport-mt-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc7-stlport/link_test-vc7-stlport-mt-1_35.pdb" /debug /machine:I386 /out:"vc7-stlport/link_test-vc7-stlport-mt-1_35.dll" /implib:"vc7-stlport/link_test-vc7-stlport-mt-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc7-stlport/link_test-vc7-stlport-mt-1_35/link_test.obj + +./vc7-stlport/link_test-vc7-stlport-mt-1_35.exe : main.cpp ./vc7-stlport/link_test-vc7-stlport-mt-1_35.lib + cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /I$(STLPORT_PATH)\stlport /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7-stlport/link_test-vc7-stlport-mt-1_35.exe main.cpp /link /LIBPATH:./vc7-stlport + vc7-stlport\link_test-vc7-stlport-mt-1_35.exe + +######################################################## +# +# section for liblink_test-vc7-stlport-mt-1_35.lib +# +######################################################## +vc7-stlport/liblink_test-vc7-stlport-mt-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -Y- -Fo./vc7-stlport/liblink_test-vc7-stlport-mt-1_35/ -Fdvc7-stlport/liblink_test-vc7-stlport-mt-1_35.pdb link_test.cpp + +liblink_test-vc7-stlport-mt-1_35_dir : + @if not exist "vc7-stlport\liblink_test-vc7-stlport-mt-1_35\$(NULL)" mkdir vc7-stlport\liblink_test-vc7-stlport-mt-1_35 + +liblink_test-vc7-stlport-mt-1_35_clean : + del vc7-stlport\liblink_test-vc7-stlport-mt-1_35\*.obj + del vc7-stlport\liblink_test-vc7-stlport-mt-1_35\*.idb + del vc7-stlport\liblink_test-vc7-stlport-mt-1_35\*.exp + del vc7-stlport\liblink_test-vc7-stlport-mt-1_35\*.pch + +./vc7-stlport/liblink_test-vc7-stlport-mt-1_35.lib : vc7-stlport/liblink_test-vc7-stlport-mt-1_35/link_test.obj + link -lib /nologo /out:vc7-stlport/liblink_test-vc7-stlport-mt-1_35.lib $(XSFLAGS) vc7-stlport/liblink_test-vc7-stlport-mt-1_35/link_test.obj + +./vc7-stlport/liblink_test-vc7-stlport-mt-1_35.exe : main.cpp ./vc7-stlport/liblink_test-vc7-stlport-mt-1_35.lib + cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7-stlport/liblink_test-vc7-stlport-mt-1_35.exe main.cpp /link /LIBPATH:./vc7-stlport + vc7-stlport\liblink_test-vc7-stlport-mt-1_35.exe + +######################################################## +# +# section for liblink_test-vc7-stlport-mt-gd-1_35.lib +# +######################################################## +vc7-stlport/liblink_test-vc7-stlport-mt-gd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7-stlport/liblink_test-vc7-stlport-mt-gd-1_35/ -Fdvc7-stlport/liblink_test-vc7-stlport-mt-gd-1_35.pdb link_test.cpp + +liblink_test-vc7-stlport-mt-gd-1_35_dir : + @if not exist "vc7-stlport\liblink_test-vc7-stlport-mt-gd-1_35\$(NULL)" mkdir vc7-stlport\liblink_test-vc7-stlport-mt-gd-1_35 + +liblink_test-vc7-stlport-mt-gd-1_35_clean : + del vc7-stlport\liblink_test-vc7-stlport-mt-gd-1_35\*.obj + del vc7-stlport\liblink_test-vc7-stlport-mt-gd-1_35\*.idb + del vc7-stlport\liblink_test-vc7-stlport-mt-gd-1_35\*.exp + del vc7-stlport\liblink_test-vc7-stlport-mt-gd-1_35\*.pch + +./vc7-stlport/liblink_test-vc7-stlport-mt-gd-1_35.lib : vc7-stlport/liblink_test-vc7-stlport-mt-gd-1_35/link_test.obj + link -lib /nologo /out:vc7-stlport/liblink_test-vc7-stlport-mt-gd-1_35.lib $(XSFLAGS) vc7-stlport/liblink_test-vc7-stlport-mt-gd-1_35/link_test.obj + +./vc7-stlport/liblink_test-vc7-stlport-mt-gd-1_35.exe : main.cpp ./vc7-stlport/liblink_test-vc7-stlport-mt-gd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7-stlport/liblink_test-vc7-stlport-mt-gd-1_35.exe main.cpp /link /LIBPATH:./vc7-stlport + vc7-stlport\liblink_test-vc7-stlport-mt-gd-1_35.exe + +######################################################## +# +# section for link_test-vc7-stlport-mt-pgd-1_35.lib +# +######################################################## +vc7-stlport/link_test-vc7-stlport-mt-pgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7-stlport/link_test-vc7-stlport-mt-pgd-1_35/ -Fdvc7-stlport/link_test-vc7-stlport-mt-pgd-1_35.pdb link_test.cpp + +link_test-vc7-stlport-mt-pgd-1_35_dir : + @if not exist "vc7-stlport\link_test-vc7-stlport-mt-pgd-1_35\$(NULL)" mkdir vc7-stlport\link_test-vc7-stlport-mt-pgd-1_35 + +link_test-vc7-stlport-mt-pgd-1_35_clean : + del vc7-stlport\link_test-vc7-stlport-mt-pgd-1_35\*.obj + del vc7-stlport\link_test-vc7-stlport-mt-pgd-1_35\*.idb + del vc7-stlport\link_test-vc7-stlport-mt-pgd-1_35\*.exp + del vc7-stlport\link_test-vc7-stlport-mt-pgd-1_35\*.pch + +./vc7-stlport/link_test-vc7-stlport-mt-pgd-1_35.lib : vc7-stlport/link_test-vc7-stlport-mt-pgd-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc7-stlport/link_test-vc7-stlport-mt-pgd-1_35.pdb" /debug /machine:I386 /out:"vc7-stlport/link_test-vc7-stlport-mt-pgd-1_35.dll" /implib:"vc7-stlport/link_test-vc7-stlport-mt-pgd-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc7-stlport/link_test-vc7-stlport-mt-pgd-1_35/link_test.obj + +./vc7-stlport/link_test-vc7-stlport-mt-pgd-1_35.exe : main.cpp ./vc7-stlport/link_test-vc7-stlport-mt-pgd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7-stlport/link_test-vc7-stlport-mt-pgd-1_35.exe main.cpp /link /LIBPATH:./vc7-stlport + vc7-stlport\link_test-vc7-stlport-mt-pgd-1_35.exe + +######################################################## +# +# section for liblink_test-vc7-stlport-mt-spgd-1_35.lib +# +######################################################## +vc7-stlport/liblink_test-vc7-stlport-mt-spgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D__STL_DEBUG /D_STLP_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7-stlport/liblink_test-vc7-stlport-mt-spgd-1_35/ -Fdvc7-stlport/liblink_test-vc7-stlport-mt-spgd-1_35.pdb link_test.cpp + +liblink_test-vc7-stlport-mt-spgd-1_35_dir : + @if not exist "vc7-stlport\liblink_test-vc7-stlport-mt-spgd-1_35\$(NULL)" mkdir vc7-stlport\liblink_test-vc7-stlport-mt-spgd-1_35 + +liblink_test-vc7-stlport-mt-spgd-1_35_clean : + del vc7-stlport\liblink_test-vc7-stlport-mt-spgd-1_35\*.obj + del vc7-stlport\liblink_test-vc7-stlport-mt-spgd-1_35\*.idb + del vc7-stlport\liblink_test-vc7-stlport-mt-spgd-1_35\*.exp + del vc7-stlport\liblink_test-vc7-stlport-mt-spgd-1_35\*.pch + +./vc7-stlport/liblink_test-vc7-stlport-mt-spgd-1_35.lib : vc7-stlport/liblink_test-vc7-stlport-mt-spgd-1_35/link_test.obj + link -lib /nologo /out:vc7-stlport/liblink_test-vc7-stlport-mt-spgd-1_35.lib $(XSFLAGS) vc7-stlport/liblink_test-vc7-stlport-mt-spgd-1_35/link_test.obj + +./vc7-stlport/liblink_test-vc7-stlport-mt-spgd-1_35.exe : main.cpp ./vc7-stlport/liblink_test-vc7-stlport-mt-spgd-1_35.lib + cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D__STL_DEBUG /D_STLP_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7-stlport/liblink_test-vc7-stlport-mt-spgd-1_35.exe main.cpp /link /LIBPATH:./vc7-stlport + vc7-stlport\liblink_test-vc7-stlport-mt-spgd-1_35.exe + +######################################################## +# +# section for liblink_test-vc7-stlport-mt-pgd-1_35.lib +# +######################################################## +vc7-stlport/liblink_test-vc7-stlport-mt-pgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7-stlport/liblink_test-vc7-stlport-mt-pgd-1_35/ -Fdvc7-stlport/liblink_test-vc7-stlport-mt-pgd-1_35.pdb link_test.cpp + +liblink_test-vc7-stlport-mt-pgd-1_35_dir : + @if not exist "vc7-stlport\liblink_test-vc7-stlport-mt-pgd-1_35\$(NULL)" mkdir vc7-stlport\liblink_test-vc7-stlport-mt-pgd-1_35 + +liblink_test-vc7-stlport-mt-pgd-1_35_clean : + del vc7-stlport\liblink_test-vc7-stlport-mt-pgd-1_35\*.obj + del vc7-stlport\liblink_test-vc7-stlport-mt-pgd-1_35\*.idb + del vc7-stlport\liblink_test-vc7-stlport-mt-pgd-1_35\*.exp + del vc7-stlport\liblink_test-vc7-stlport-mt-pgd-1_35\*.pch + +./vc7-stlport/liblink_test-vc7-stlport-mt-pgd-1_35.lib : vc7-stlport/liblink_test-vc7-stlport-mt-pgd-1_35/link_test.obj + link -lib /nologo /out:vc7-stlport/liblink_test-vc7-stlport-mt-pgd-1_35.lib $(XSFLAGS) vc7-stlport/liblink_test-vc7-stlport-mt-pgd-1_35/link_test.obj + +./vc7-stlport/liblink_test-vc7-stlport-mt-pgd-1_35.exe : main.cpp ./vc7-stlport/liblink_test-vc7-stlport-mt-pgd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7-stlport/liblink_test-vc7-stlport-mt-pgd-1_35.exe main.cpp /link /LIBPATH:./vc7-stlport + vc7-stlport\liblink_test-vc7-stlport-mt-pgd-1_35.exe + diff --git a/src/boost/libs/config/test/link/vc7.mak b/src/boost/libs/config/test/link/vc7.mak new file mode 100644 index 000000000..afae0c571 --- /dev/null +++ b/src/boost/libs/config/test/link/vc7.mak @@ -0,0 +1,260 @@ +# copyright John Maddock 2005 +# 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) +# +# auto generated makefile for VC6 compiler +# +# usage: +# make +# brings libraries up to date +# make install +# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended) +# + +# +# Add additional compiler options here: +# +CXXFLAGS= +# +# Add additional include directories here: +# +INCLUDES= +# +# add additional linker flags here: +# +XLFLAGS= +# +# add additional static-library creation flags here: +# +XSFLAGS= + +!IF "$(OS)" == "Windows_NT" +NULL= +!ELSE +NULL=nul +!ENDIF + +!IF "$(MSVCDIR)" == "" +!ERROR Variable MSVCDIR not set. +!ENDIF + + +ALL_HEADER= + +all : main_dir liblink_test-vc7-s-1_35_dir ./vc7/liblink_test-vc7-s-1_35.lib ./vc7/liblink_test-vc7-s-1_35.exe liblink_test-vc7-mt-s-1_35_dir ./vc7/liblink_test-vc7-mt-s-1_35.lib ./vc7/liblink_test-vc7-mt-s-1_35.exe liblink_test-vc7-sgd-1_35_dir ./vc7/liblink_test-vc7-sgd-1_35.lib ./vc7/liblink_test-vc7-sgd-1_35.exe liblink_test-vc7-mt-sgd-1_35_dir ./vc7/liblink_test-vc7-mt-sgd-1_35.lib ./vc7/liblink_test-vc7-mt-sgd-1_35.exe link_test-vc7-mt-gd-1_35_dir ./vc7/link_test-vc7-mt-gd-1_35.lib ./vc7/link_test-vc7-mt-gd-1_35.exe link_test-vc7-mt-1_35_dir ./vc7/link_test-vc7-mt-1_35.lib ./vc7/link_test-vc7-mt-1_35.exe liblink_test-vc7-mt-1_35_dir ./vc7/liblink_test-vc7-mt-1_35.lib ./vc7/liblink_test-vc7-mt-1_35.exe liblink_test-vc7-mt-gd-1_35_dir ./vc7/liblink_test-vc7-mt-gd-1_35.lib ./vc7/liblink_test-vc7-mt-gd-1_35.exe + +clean : liblink_test-vc7-s-1_35_clean liblink_test-vc7-mt-s-1_35_clean liblink_test-vc7-sgd-1_35_clean liblink_test-vc7-mt-sgd-1_35_clean link_test-vc7-mt-gd-1_35_clean link_test-vc7-mt-1_35_clean liblink_test-vc7-mt-1_35_clean liblink_test-vc7-mt-gd-1_35_clean + +install : all + copy vc7\liblink_test-vc7-s-1_35.lib "$(MSVCDIR)\lib" + copy vc7\liblink_test-vc7-mt-s-1_35.lib "$(MSVCDIR)\lib" + copy vc7\liblink_test-vc7-sgd-1_35.lib "$(MSVCDIR)\lib" + copy vc7\liblink_test-vc7-sgd-1_35.pdb "$(MSVCDIR)\lib" + copy vc7\liblink_test-vc7-mt-sgd-1_35.lib "$(MSVCDIR)\lib" + copy vc7\liblink_test-vc7-mt-sgd-1_35.pdb "$(MSVCDIR)\lib" + copy vc7\link_test-vc7-mt-gd-1_35.lib "$(MSVCDIR)\lib" + copy vc7\link_test-vc7-mt-gd-1_35.dll "$(MSVCDIR)\bin" + copy vc7\link_test-vc7-mt-gd-1_35.pdb "$(MSVCDIR)\lib" + copy vc7\link_test-vc7-mt-1_35.lib "$(MSVCDIR)\lib" + copy vc7\link_test-vc7-mt-1_35.dll "$(MSVCDIR)\bin" + copy vc7\liblink_test-vc7-mt-1_35.lib "$(MSVCDIR)\lib" + copy vc7\liblink_test-vc7-mt-gd-1_35.lib "$(MSVCDIR)\lib" + copy vc7\liblink_test-vc7-mt-gd-1_35.pdb "$(MSVCDIR)\lib" + +main_dir : + @if not exist "vc7\$(NULL)" mkdir vc7 + + +######################################################## +# +# section for liblink_test-vc7-s-1_35.lib +# +######################################################## +vc7/liblink_test-vc7-s-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -Y- -Fo./vc7/liblink_test-vc7-s-1_35/ -Fdvc7/liblink_test-vc7-s-1_35.pdb link_test.cpp + +liblink_test-vc7-s-1_35_dir : + @if not exist "vc7\liblink_test-vc7-s-1_35\$(NULL)" mkdir vc7\liblink_test-vc7-s-1_35 + +liblink_test-vc7-s-1_35_clean : + del vc7\liblink_test-vc7-s-1_35\*.obj + del vc7\liblink_test-vc7-s-1_35\*.idb + del vc7\liblink_test-vc7-s-1_35\*.exp + del vc7\liblink_test-vc7-s-1_35\*.pch + +./vc7/liblink_test-vc7-s-1_35.lib : vc7/liblink_test-vc7-s-1_35/link_test.obj + link -lib /nologo /out:vc7/liblink_test-vc7-s-1_35.lib $(XSFLAGS) vc7/liblink_test-vc7-s-1_35/link_test.obj + +./vc7/liblink_test-vc7-s-1_35.exe : main.cpp ./vc7/liblink_test-vc7-s-1_35.lib + cl $(INCLUDES) /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7/liblink_test-vc7-s-1_35.exe main.cpp /link /LIBPATH:./vc7 + vc7\liblink_test-vc7-s-1_35.exe + +######################################################## +# +# section for liblink_test-vc7-mt-s-1_35.lib +# +######################################################## +vc7/liblink_test-vc7-mt-s-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -Y- -Fo./vc7/liblink_test-vc7-mt-s-1_35/ -Fdvc7/liblink_test-vc7-mt-s-1_35.pdb link_test.cpp + +liblink_test-vc7-mt-s-1_35_dir : + @if not exist "vc7\liblink_test-vc7-mt-s-1_35\$(NULL)" mkdir vc7\liblink_test-vc7-mt-s-1_35 + +liblink_test-vc7-mt-s-1_35_clean : + del vc7\liblink_test-vc7-mt-s-1_35\*.obj + del vc7\liblink_test-vc7-mt-s-1_35\*.idb + del vc7\liblink_test-vc7-mt-s-1_35\*.exp + del vc7\liblink_test-vc7-mt-s-1_35\*.pch + +./vc7/liblink_test-vc7-mt-s-1_35.lib : vc7/liblink_test-vc7-mt-s-1_35/link_test.obj + link -lib /nologo /out:vc7/liblink_test-vc7-mt-s-1_35.lib $(XSFLAGS) vc7/liblink_test-vc7-mt-s-1_35/link_test.obj + +./vc7/liblink_test-vc7-mt-s-1_35.exe : main.cpp ./vc7/liblink_test-vc7-mt-s-1_35.lib + cl $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7/liblink_test-vc7-mt-s-1_35.exe main.cpp /link /LIBPATH:./vc7 + vc7\liblink_test-vc7-mt-s-1_35.exe + +######################################################## +# +# section for liblink_test-vc7-sgd-1_35.lib +# +######################################################## +vc7/liblink_test-vc7-sgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MLd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7/liblink_test-vc7-sgd-1_35/ -Fdvc7/liblink_test-vc7-sgd-1_35.pdb link_test.cpp + +liblink_test-vc7-sgd-1_35_dir : + @if not exist "vc7\liblink_test-vc7-sgd-1_35\$(NULL)" mkdir vc7\liblink_test-vc7-sgd-1_35 + +liblink_test-vc7-sgd-1_35_clean : + del vc7\liblink_test-vc7-sgd-1_35\*.obj + del vc7\liblink_test-vc7-sgd-1_35\*.idb + del vc7\liblink_test-vc7-sgd-1_35\*.exp + del vc7\liblink_test-vc7-sgd-1_35\*.pch + +./vc7/liblink_test-vc7-sgd-1_35.lib : vc7/liblink_test-vc7-sgd-1_35/link_test.obj + link -lib /nologo /out:vc7/liblink_test-vc7-sgd-1_35.lib $(XSFLAGS) vc7/liblink_test-vc7-sgd-1_35/link_test.obj + +./vc7/liblink_test-vc7-sgd-1_35.exe : main.cpp ./vc7/liblink_test-vc7-sgd-1_35.lib + cl $(INCLUDES) /nologo /MLd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7/liblink_test-vc7-sgd-1_35.exe main.cpp /link /LIBPATH:./vc7 + vc7\liblink_test-vc7-sgd-1_35.exe + +######################################################## +# +# section for liblink_test-vc7-mt-sgd-1_35.lib +# +######################################################## +vc7/liblink_test-vc7-mt-sgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7/liblink_test-vc7-mt-sgd-1_35/ -Fdvc7/liblink_test-vc7-mt-sgd-1_35.pdb link_test.cpp + +liblink_test-vc7-mt-sgd-1_35_dir : + @if not exist "vc7\liblink_test-vc7-mt-sgd-1_35\$(NULL)" mkdir vc7\liblink_test-vc7-mt-sgd-1_35 + +liblink_test-vc7-mt-sgd-1_35_clean : + del vc7\liblink_test-vc7-mt-sgd-1_35\*.obj + del vc7\liblink_test-vc7-mt-sgd-1_35\*.idb + del vc7\liblink_test-vc7-mt-sgd-1_35\*.exp + del vc7\liblink_test-vc7-mt-sgd-1_35\*.pch + +./vc7/liblink_test-vc7-mt-sgd-1_35.lib : vc7/liblink_test-vc7-mt-sgd-1_35/link_test.obj + link -lib /nologo /out:vc7/liblink_test-vc7-mt-sgd-1_35.lib $(XSFLAGS) vc7/liblink_test-vc7-mt-sgd-1_35/link_test.obj + +./vc7/liblink_test-vc7-mt-sgd-1_35.exe : main.cpp ./vc7/liblink_test-vc7-mt-sgd-1_35.lib + cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7/liblink_test-vc7-mt-sgd-1_35.exe main.cpp /link /LIBPATH:./vc7 + vc7\liblink_test-vc7-mt-sgd-1_35.exe + +######################################################## +# +# section for link_test-vc7-mt-gd-1_35.lib +# +######################################################## +vc7/link_test-vc7-mt-gd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /D_DEBUG /DBOOST_DYN_LINK /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7/link_test-vc7-mt-gd-1_35/ -Fdvc7/link_test-vc7-mt-gd-1_35.pdb link_test.cpp + +link_test-vc7-mt-gd-1_35_dir : + @if not exist "vc7\link_test-vc7-mt-gd-1_35\$(NULL)" mkdir vc7\link_test-vc7-mt-gd-1_35 + +link_test-vc7-mt-gd-1_35_clean : + del vc7\link_test-vc7-mt-gd-1_35\*.obj + del vc7\link_test-vc7-mt-gd-1_35\*.idb + del vc7\link_test-vc7-mt-gd-1_35\*.exp + del vc7\link_test-vc7-mt-gd-1_35\*.pch + +./vc7/link_test-vc7-mt-gd-1_35.lib : vc7/link_test-vc7-mt-gd-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc7/link_test-vc7-mt-gd-1_35.pdb" /debug /machine:I386 /out:"vc7/link_test-vc7-mt-gd-1_35.dll" /implib:"vc7/link_test-vc7-mt-gd-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc7/link_test-vc7-mt-gd-1_35/link_test.obj + +./vc7/link_test-vc7-mt-gd-1_35.exe : main.cpp ./vc7/link_test-vc7-mt-gd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /D_DEBUG /DBOOST_DYN_LINK /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7/link_test-vc7-mt-gd-1_35.exe main.cpp /link /LIBPATH:./vc7 + vc7\link_test-vc7-mt-gd-1_35.exe + +######################################################## +# +# section for link_test-vc7-mt-1_35.lib +# +######################################################## +vc7/link_test-vc7-mt-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -Y- -Fo./vc7/link_test-vc7-mt-1_35/ -Fdvc7/link_test-vc7-mt-1_35.pdb link_test.cpp + +link_test-vc7-mt-1_35_dir : + @if not exist "vc7\link_test-vc7-mt-1_35\$(NULL)" mkdir vc7\link_test-vc7-mt-1_35 + +link_test-vc7-mt-1_35_clean : + del vc7\link_test-vc7-mt-1_35\*.obj + del vc7\link_test-vc7-mt-1_35\*.idb + del vc7\link_test-vc7-mt-1_35\*.exp + del vc7\link_test-vc7-mt-1_35\*.pch + +./vc7/link_test-vc7-mt-1_35.lib : vc7/link_test-vc7-mt-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc7/link_test-vc7-mt-1_35.pdb" /debug /machine:I386 /out:"vc7/link_test-vc7-mt-1_35.dll" /implib:"vc7/link_test-vc7-mt-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc7/link_test-vc7-mt-1_35/link_test.obj + +./vc7/link_test-vc7-mt-1_35.exe : main.cpp ./vc7/link_test-vc7-mt-1_35.lib + cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7/link_test-vc7-mt-1_35.exe main.cpp /link /LIBPATH:./vc7 + vc7\link_test-vc7-mt-1_35.exe + +######################################################## +# +# section for liblink_test-vc7-mt-1_35.lib +# +######################################################## +vc7/liblink_test-vc7-mt-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -Y- -Fo./vc7/liblink_test-vc7-mt-1_35/ -Fdvc7/liblink_test-vc7-mt-1_35.pdb link_test.cpp + +liblink_test-vc7-mt-1_35_dir : + @if not exist "vc7\liblink_test-vc7-mt-1_35\$(NULL)" mkdir vc7\liblink_test-vc7-mt-1_35 + +liblink_test-vc7-mt-1_35_clean : + del vc7\liblink_test-vc7-mt-1_35\*.obj + del vc7\liblink_test-vc7-mt-1_35\*.idb + del vc7\liblink_test-vc7-mt-1_35\*.exp + del vc7\liblink_test-vc7-mt-1_35\*.pch + +./vc7/liblink_test-vc7-mt-1_35.lib : vc7/liblink_test-vc7-mt-1_35/link_test.obj + link -lib /nologo /out:vc7/liblink_test-vc7-mt-1_35.lib $(XSFLAGS) vc7/liblink_test-vc7-mt-1_35/link_test.obj + +./vc7/liblink_test-vc7-mt-1_35.exe : main.cpp ./vc7/liblink_test-vc7-mt-1_35.lib + cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7/liblink_test-vc7-mt-1_35.exe main.cpp /link /LIBPATH:./vc7 + vc7\liblink_test-vc7-mt-1_35.exe + +######################################################## +# +# section for liblink_test-vc7-mt-gd-1_35.lib +# +######################################################## +vc7/liblink_test-vc7-mt-gd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc7/liblink_test-vc7-mt-gd-1_35/ -Fdvc7/liblink_test-vc7-mt-gd-1_35.pdb link_test.cpp + +liblink_test-vc7-mt-gd-1_35_dir : + @if not exist "vc7\liblink_test-vc7-mt-gd-1_35\$(NULL)" mkdir vc7\liblink_test-vc7-mt-gd-1_35 + +liblink_test-vc7-mt-gd-1_35_clean : + del vc7\liblink_test-vc7-mt-gd-1_35\*.obj + del vc7\liblink_test-vc7-mt-gd-1_35\*.idb + del vc7\liblink_test-vc7-mt-gd-1_35\*.exp + del vc7\liblink_test-vc7-mt-gd-1_35\*.pch + +./vc7/liblink_test-vc7-mt-gd-1_35.lib : vc7/liblink_test-vc7-mt-gd-1_35/link_test.obj + link -lib /nologo /out:vc7/liblink_test-vc7-mt-gd-1_35.lib $(XSFLAGS) vc7/liblink_test-vc7-mt-gd-1_35/link_test.obj + +./vc7/liblink_test-vc7-mt-gd-1_35.exe : main.cpp ./vc7/liblink_test-vc7-mt-gd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc7/liblink_test-vc7-mt-gd-1_35.exe main.cpp /link /LIBPATH:./vc7 + vc7\liblink_test-vc7-mt-gd-1_35.exe + diff --git a/src/boost/libs/config/test/link/vc71-stlport.mak b/src/boost/libs/config/test/link/vc71-stlport.mak new file mode 100644 index 000000000..5725e4cd6 --- /dev/null +++ b/src/boost/libs/config/test/link/vc71-stlport.mak @@ -0,0 +1,292 @@ +# copyright John Maddock 2005 +# 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) +# +# auto generated makefile for VC6+STLPort +# +# usage: +# make +# brings libraries up to date +# make install +# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended) +# + +# +# Add additional compiler options here: +# +CXXFLAGS= +# +# Add additional include directories here: +# +INCLUDES= +# +# add additional linker flags here: +# +XLFLAGS= +# +# add additional static-library creation flags here: +# +XSFLAGS= + +!IF "$(OS)" == "Windows_NT" +NULL= +!ELSE +NULL=nul +!ENDIF + +!IF "$(MSVCDIR)" == "" +!ERROR Variable MSVCDIR not set. +!ENDIF + +!IF "$(STLPORT_PATH)" == "" +!ERROR Variable STLPORT_PATH not set. +!ENDIF + + +ALL_HEADER= + +all : main_dir liblink_test-vc71-stlport-mt-s-1_35_dir ./vc71-stlport/liblink_test-vc71-stlport-mt-s-1_35.lib ./vc71-stlport/liblink_test-vc71-stlport-mt-s-1_35.exe liblink_test-vc71-stlport-mt-sgd-1_35_dir ./vc71-stlport/liblink_test-vc71-stlport-mt-sgd-1_35.lib ./vc71-stlport/liblink_test-vc71-stlport-mt-sgd-1_35.exe link_test-vc71-stlport-mt-gd-1_35_dir ./vc71-stlport/link_test-vc71-stlport-mt-gd-1_35.lib ./vc71-stlport/link_test-vc71-stlport-mt-gd-1_35.exe link_test-vc71-stlport-mt-1_35_dir ./vc71-stlport/link_test-vc71-stlport-mt-1_35.lib ./vc71-stlport/link_test-vc71-stlport-mt-1_35.exe liblink_test-vc71-stlport-mt-1_35_dir ./vc71-stlport/liblink_test-vc71-stlport-mt-1_35.lib ./vc71-stlport/liblink_test-vc71-stlport-mt-1_35.exe liblink_test-vc71-stlport-mt-gd-1_35_dir ./vc71-stlport/liblink_test-vc71-stlport-mt-gd-1_35.lib ./vc71-stlport/liblink_test-vc71-stlport-mt-gd-1_35.exe link_test-vc71-stlport-mt-pgd-1_35_dir ./vc71-stlport/link_test-vc71-stlport-mt-pgd-1_35.lib ./vc71-stlport/link_test-vc71-stlport-mt-pgd-1_35.exe liblink_test-vc71-stlport-mt-spgd-1_35_dir ./vc71-stlport/liblink_test-vc71-stlport-mt-spgd-1_35.lib ./vc71-stlport/liblink_test-vc71-stlport-mt-spgd-1_35.exe liblink_test-vc71-stlport-mt-pgd-1_35_dir ./vc71-stlport/liblink_test-vc71-stlport-mt-pgd-1_35.lib ./vc71-stlport/liblink_test-vc71-stlport-mt-pgd-1_35.exe + +clean : liblink_test-vc71-stlport-mt-s-1_35_clean liblink_test-vc71-stlport-mt-sgd-1_35_clean link_test-vc71-stlport-mt-gd-1_35_clean link_test-vc71-stlport-mt-1_35_clean liblink_test-vc71-stlport-mt-1_35_clean liblink_test-vc71-stlport-mt-gd-1_35_clean link_test-vc71-stlport-mt-pgd-1_35_clean liblink_test-vc71-stlport-mt-spgd-1_35_clean liblink_test-vc71-stlport-mt-pgd-1_35_clean + +install : stlport_check all + copy vc71-stlport\liblink_test-vc71-stlport-mt-s-1_35.lib "$(MSVCDIR)\lib" + copy vc71-stlport\liblink_test-vc71-stlport-mt-sgd-1_35.lib "$(MSVCDIR)\lib" + copy vc71-stlport\link_test-vc71-stlport-mt-gd-1_35.lib "$(MSVCDIR)\lib" + copy vc71-stlport\link_test-vc71-stlport-mt-gd-1_35.dll "$(MSVCDIR)\bin" + copy vc71-stlport\link_test-vc71-stlport-mt-1_35.lib "$(MSVCDIR)\lib" + copy vc71-stlport\link_test-vc71-stlport-mt-1_35.dll "$(MSVCDIR)\bin" + copy vc71-stlport\liblink_test-vc71-stlport-mt-1_35.lib "$(MSVCDIR)\lib" + copy vc71-stlport\liblink_test-vc71-stlport-mt-gd-1_35.lib "$(MSVCDIR)\lib" + copy vc71-stlport\link_test-vc71-stlport-mt-pgd-1_35.lib "$(MSVCDIR)\lib" + copy vc71-stlport\link_test-vc71-stlport-mt-pgd-1_35.dll "$(MSVCDIR)\bin" + copy vc71-stlport\link_test-vc71-stlport-mt-pgd-1_35.pdb "$(MSVCDIR)\lib" + copy vc71-stlport\liblink_test-vc71-stlport-mt-spgd-1_35.lib "$(MSVCDIR)\lib" + copy vc71-stlport\liblink_test-vc71-stlport-mt-spgd-1_35.pdb "$(MSVCDIR)\lib" + copy vc71-stlport\liblink_test-vc71-stlport-mt-pgd-1_35.lib "$(MSVCDIR)\lib" + copy vc71-stlport\liblink_test-vc71-stlport-mt-pgd-1_35.pdb "$(MSVCDIR)\lib" + +main_dir : + @if not exist "vc71-stlport\$(NULL)" mkdir vc71-stlport + +stlport_check : $(STLPORT_PATH)\stlport\string + echo + + +######################################################## +# +# section for liblink_test-vc71-stlport-mt-s-1_35.lib +# +######################################################## +vc71-stlport/liblink_test-vc71-stlport-mt-s-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB $(CXXFLAGS) -Y- -Fo./vc71-stlport/liblink_test-vc71-stlport-mt-s-1_35/ -Fdvc71-stlport/liblink_test-vc71-stlport-mt-s-1_35.pdb link_test.cpp + +liblink_test-vc71-stlport-mt-s-1_35_dir : + @if not exist "vc71-stlport\liblink_test-vc71-stlport-mt-s-1_35\$(NULL)" mkdir vc71-stlport\liblink_test-vc71-stlport-mt-s-1_35 + +liblink_test-vc71-stlport-mt-s-1_35_clean : + del vc71-stlport\liblink_test-vc71-stlport-mt-s-1_35\*.obj + del vc71-stlport\liblink_test-vc71-stlport-mt-s-1_35\*.idb + del vc71-stlport\liblink_test-vc71-stlport-mt-s-1_35\*.exp + del vc71-stlport\liblink_test-vc71-stlport-mt-s-1_35\*.pch + +./vc71-stlport/liblink_test-vc71-stlport-mt-s-1_35.lib : vc71-stlport/liblink_test-vc71-stlport-mt-s-1_35/link_test.obj + link -lib /nologo /out:vc71-stlport/liblink_test-vc71-stlport-mt-s-1_35.lib $(XSFLAGS) vc71-stlport/liblink_test-vc71-stlport-mt-s-1_35/link_test.obj + +./vc71-stlport/liblink_test-vc71-stlport-mt-s-1_35.exe : main.cpp ./vc71-stlport/liblink_test-vc71-stlport-mt-s-1_35.lib + cl $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71-stlport/liblink_test-vc71-stlport-mt-s-1_35.exe main.cpp /link /LIBPATH:./vc71-stlport + vc71-stlport\liblink_test-vc71-stlport-mt-s-1_35.exe + +######################################################## +# +# section for liblink_test-vc71-stlport-mt-sgd-1_35.lib +# +######################################################## +vc71-stlport/liblink_test-vc71-stlport-mt-sgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71-stlport/liblink_test-vc71-stlport-mt-sgd-1_35/ -Fdvc71-stlport/liblink_test-vc71-stlport-mt-sgd-1_35.pdb link_test.cpp + +liblink_test-vc71-stlport-mt-sgd-1_35_dir : + @if not exist "vc71-stlport\liblink_test-vc71-stlport-mt-sgd-1_35\$(NULL)" mkdir vc71-stlport\liblink_test-vc71-stlport-mt-sgd-1_35 + +liblink_test-vc71-stlport-mt-sgd-1_35_clean : + del vc71-stlport\liblink_test-vc71-stlport-mt-sgd-1_35\*.obj + del vc71-stlport\liblink_test-vc71-stlport-mt-sgd-1_35\*.idb + del vc71-stlport\liblink_test-vc71-stlport-mt-sgd-1_35\*.exp + del vc71-stlport\liblink_test-vc71-stlport-mt-sgd-1_35\*.pch + +./vc71-stlport/liblink_test-vc71-stlport-mt-sgd-1_35.lib : vc71-stlport/liblink_test-vc71-stlport-mt-sgd-1_35/link_test.obj + link -lib /nologo /out:vc71-stlport/liblink_test-vc71-stlport-mt-sgd-1_35.lib $(XSFLAGS) vc71-stlport/liblink_test-vc71-stlport-mt-sgd-1_35/link_test.obj + +./vc71-stlport/liblink_test-vc71-stlport-mt-sgd-1_35.exe : main.cpp ./vc71-stlport/liblink_test-vc71-stlport-mt-sgd-1_35.lib + cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71-stlport/liblink_test-vc71-stlport-mt-sgd-1_35.exe main.cpp /link /LIBPATH:./vc71-stlport + vc71-stlport\liblink_test-vc71-stlport-mt-sgd-1_35.exe + +######################################################## +# +# section for link_test-vc71-stlport-mt-gd-1_35.lib +# +######################################################## +vc71-stlport/link_test-vc71-stlport-mt-gd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71-stlport/link_test-vc71-stlport-mt-gd-1_35/ -Fdvc71-stlport/link_test-vc71-stlport-mt-gd-1_35.pdb link_test.cpp + +link_test-vc71-stlport-mt-gd-1_35_dir : + @if not exist "vc71-stlport\link_test-vc71-stlport-mt-gd-1_35\$(NULL)" mkdir vc71-stlport\link_test-vc71-stlport-mt-gd-1_35 + +link_test-vc71-stlport-mt-gd-1_35_clean : + del vc71-stlport\link_test-vc71-stlport-mt-gd-1_35\*.obj + del vc71-stlport\link_test-vc71-stlport-mt-gd-1_35\*.idb + del vc71-stlport\link_test-vc71-stlport-mt-gd-1_35\*.exp + del vc71-stlport\link_test-vc71-stlport-mt-gd-1_35\*.pch + +./vc71-stlport/link_test-vc71-stlport-mt-gd-1_35.lib : vc71-stlport/link_test-vc71-stlport-mt-gd-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc71-stlport/link_test-vc71-stlport-mt-gd-1_35.pdb" /debug /machine:I386 /out:"vc71-stlport/link_test-vc71-stlport-mt-gd-1_35.dll" /implib:"vc71-stlport/link_test-vc71-stlport-mt-gd-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc71-stlport/link_test-vc71-stlport-mt-gd-1_35/link_test.obj + +./vc71-stlport/link_test-vc71-stlport-mt-gd-1_35.exe : main.cpp ./vc71-stlport/link_test-vc71-stlport-mt-gd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71-stlport/link_test-vc71-stlport-mt-gd-1_35.exe main.cpp /link /LIBPATH:./vc71-stlport + vc71-stlport\link_test-vc71-stlport-mt-gd-1_35.exe + +######################################################## +# +# section for link_test-vc71-stlport-mt-1_35.lib +# +######################################################## +vc71-stlport/link_test-vc71-stlport-mt-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /I$(STLPORT_PATH)\stlport /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -Y- -Fo./vc71-stlport/link_test-vc71-stlport-mt-1_35/ -Fdvc71-stlport/link_test-vc71-stlport-mt-1_35.pdb link_test.cpp + +link_test-vc71-stlport-mt-1_35_dir : + @if not exist "vc71-stlport\link_test-vc71-stlport-mt-1_35\$(NULL)" mkdir vc71-stlport\link_test-vc71-stlport-mt-1_35 + +link_test-vc71-stlport-mt-1_35_clean : + del vc71-stlport\link_test-vc71-stlport-mt-1_35\*.obj + del vc71-stlport\link_test-vc71-stlport-mt-1_35\*.idb + del vc71-stlport\link_test-vc71-stlport-mt-1_35\*.exp + del vc71-stlport\link_test-vc71-stlport-mt-1_35\*.pch + +./vc71-stlport/link_test-vc71-stlport-mt-1_35.lib : vc71-stlport/link_test-vc71-stlport-mt-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc71-stlport/link_test-vc71-stlport-mt-1_35.pdb" /debug /machine:I386 /out:"vc71-stlport/link_test-vc71-stlport-mt-1_35.dll" /implib:"vc71-stlport/link_test-vc71-stlport-mt-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc71-stlport/link_test-vc71-stlport-mt-1_35/link_test.obj + +./vc71-stlport/link_test-vc71-stlport-mt-1_35.exe : main.cpp ./vc71-stlport/link_test-vc71-stlport-mt-1_35.lib + cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /I$(STLPORT_PATH)\stlport /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71-stlport/link_test-vc71-stlport-mt-1_35.exe main.cpp /link /LIBPATH:./vc71-stlport + vc71-stlport\link_test-vc71-stlport-mt-1_35.exe + +######################################################## +# +# section for liblink_test-vc71-stlport-mt-1_35.lib +# +######################################################## +vc71-stlport/liblink_test-vc71-stlport-mt-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL $(CXXFLAGS) -Y- -Fo./vc71-stlport/liblink_test-vc71-stlport-mt-1_35/ -Fdvc71-stlport/liblink_test-vc71-stlport-mt-1_35.pdb link_test.cpp + +liblink_test-vc71-stlport-mt-1_35_dir : + @if not exist "vc71-stlport\liblink_test-vc71-stlport-mt-1_35\$(NULL)" mkdir vc71-stlport\liblink_test-vc71-stlport-mt-1_35 + +liblink_test-vc71-stlport-mt-1_35_clean : + del vc71-stlport\liblink_test-vc71-stlport-mt-1_35\*.obj + del vc71-stlport\liblink_test-vc71-stlport-mt-1_35\*.idb + del vc71-stlport\liblink_test-vc71-stlport-mt-1_35\*.exp + del vc71-stlport\liblink_test-vc71-stlport-mt-1_35\*.pch + +./vc71-stlport/liblink_test-vc71-stlport-mt-1_35.lib : vc71-stlport/liblink_test-vc71-stlport-mt-1_35/link_test.obj + link -lib /nologo /out:vc71-stlport/liblink_test-vc71-stlport-mt-1_35.lib $(XSFLAGS) vc71-stlport/liblink_test-vc71-stlport-mt-1_35/link_test.obj + +./vc71-stlport/liblink_test-vc71-stlport-mt-1_35.exe : main.cpp ./vc71-stlport/liblink_test-vc71-stlport-mt-1_35.lib + cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71-stlport/liblink_test-vc71-stlport-mt-1_35.exe main.cpp /link /LIBPATH:./vc71-stlport + vc71-stlport\liblink_test-vc71-stlport-mt-1_35.exe + +######################################################## +# +# section for liblink_test-vc71-stlport-mt-gd-1_35.lib +# +######################################################## +vc71-stlport/liblink_test-vc71-stlport-mt-gd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71-stlport/liblink_test-vc71-stlport-mt-gd-1_35/ -Fdvc71-stlport/liblink_test-vc71-stlport-mt-gd-1_35.pdb link_test.cpp + +liblink_test-vc71-stlport-mt-gd-1_35_dir : + @if not exist "vc71-stlport\liblink_test-vc71-stlport-mt-gd-1_35\$(NULL)" mkdir vc71-stlport\liblink_test-vc71-stlport-mt-gd-1_35 + +liblink_test-vc71-stlport-mt-gd-1_35_clean : + del vc71-stlport\liblink_test-vc71-stlport-mt-gd-1_35\*.obj + del vc71-stlport\liblink_test-vc71-stlport-mt-gd-1_35\*.idb + del vc71-stlport\liblink_test-vc71-stlport-mt-gd-1_35\*.exp + del vc71-stlport\liblink_test-vc71-stlport-mt-gd-1_35\*.pch + +./vc71-stlport/liblink_test-vc71-stlport-mt-gd-1_35.lib : vc71-stlport/liblink_test-vc71-stlport-mt-gd-1_35/link_test.obj + link -lib /nologo /out:vc71-stlport/liblink_test-vc71-stlport-mt-gd-1_35.lib $(XSFLAGS) vc71-stlport/liblink_test-vc71-stlport-mt-gd-1_35/link_test.obj + +./vc71-stlport/liblink_test-vc71-stlport-mt-gd-1_35.exe : main.cpp ./vc71-stlport/liblink_test-vc71-stlport-mt-gd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71-stlport/liblink_test-vc71-stlport-mt-gd-1_35.exe main.cpp /link /LIBPATH:./vc71-stlport + vc71-stlport\liblink_test-vc71-stlport-mt-gd-1_35.exe + +######################################################## +# +# section for link_test-vc71-stlport-mt-pgd-1_35.lib +# +######################################################## +vc71-stlport/link_test-vc71-stlport-mt-pgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71-stlport/link_test-vc71-stlport-mt-pgd-1_35/ -Fdvc71-stlport/link_test-vc71-stlport-mt-pgd-1_35.pdb link_test.cpp + +link_test-vc71-stlport-mt-pgd-1_35_dir : + @if not exist "vc71-stlport\link_test-vc71-stlport-mt-pgd-1_35\$(NULL)" mkdir vc71-stlport\link_test-vc71-stlport-mt-pgd-1_35 + +link_test-vc71-stlport-mt-pgd-1_35_clean : + del vc71-stlport\link_test-vc71-stlport-mt-pgd-1_35\*.obj + del vc71-stlport\link_test-vc71-stlport-mt-pgd-1_35\*.idb + del vc71-stlport\link_test-vc71-stlport-mt-pgd-1_35\*.exp + del vc71-stlport\link_test-vc71-stlport-mt-pgd-1_35\*.pch + +./vc71-stlport/link_test-vc71-stlport-mt-pgd-1_35.lib : vc71-stlport/link_test-vc71-stlport-mt-pgd-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc71-stlport/link_test-vc71-stlport-mt-pgd-1_35.pdb" /debug /machine:I386 /out:"vc71-stlport/link_test-vc71-stlport-mt-pgd-1_35.dll" /implib:"vc71-stlport/link_test-vc71-stlport-mt-pgd-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc71-stlport/link_test-vc71-stlport-mt-pgd-1_35/link_test.obj + +./vc71-stlport/link_test-vc71-stlport-mt-pgd-1_35.exe : main.cpp ./vc71-stlport/link_test-vc71-stlport-mt-pgd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71-stlport/link_test-vc71-stlport-mt-pgd-1_35.exe main.cpp /link /LIBPATH:./vc71-stlport + vc71-stlport\link_test-vc71-stlport-mt-pgd-1_35.exe + +######################################################## +# +# section for liblink_test-vc71-stlport-mt-spgd-1_35.lib +# +######################################################## +vc71-stlport/liblink_test-vc71-stlport-mt-spgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D__STL_DEBUG /D_STLP_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71-stlport/liblink_test-vc71-stlport-mt-spgd-1_35/ -Fdvc71-stlport/liblink_test-vc71-stlport-mt-spgd-1_35.pdb link_test.cpp + +liblink_test-vc71-stlport-mt-spgd-1_35_dir : + @if not exist "vc71-stlport\liblink_test-vc71-stlport-mt-spgd-1_35\$(NULL)" mkdir vc71-stlport\liblink_test-vc71-stlport-mt-spgd-1_35 + +liblink_test-vc71-stlport-mt-spgd-1_35_clean : + del vc71-stlport\liblink_test-vc71-stlport-mt-spgd-1_35\*.obj + del vc71-stlport\liblink_test-vc71-stlport-mt-spgd-1_35\*.idb + del vc71-stlport\liblink_test-vc71-stlport-mt-spgd-1_35\*.exp + del vc71-stlport\liblink_test-vc71-stlport-mt-spgd-1_35\*.pch + +./vc71-stlport/liblink_test-vc71-stlport-mt-spgd-1_35.lib : vc71-stlport/liblink_test-vc71-stlport-mt-spgd-1_35/link_test.obj + link -lib /nologo /out:vc71-stlport/liblink_test-vc71-stlport-mt-spgd-1_35.lib $(XSFLAGS) vc71-stlport/liblink_test-vc71-stlport-mt-spgd-1_35/link_test.obj + +./vc71-stlport/liblink_test-vc71-stlport-mt-spgd-1_35.exe : main.cpp ./vc71-stlport/liblink_test-vc71-stlport-mt-spgd-1_35.lib + cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D__STL_DEBUG /D_STLP_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71-stlport/liblink_test-vc71-stlport-mt-spgd-1_35.exe main.cpp /link /LIBPATH:./vc71-stlport + vc71-stlport\liblink_test-vc71-stlport-mt-spgd-1_35.exe + +######################################################## +# +# section for liblink_test-vc71-stlport-mt-pgd-1_35.lib +# +######################################################## +vc71-stlport/liblink_test-vc71-stlport-mt-pgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71-stlport/liblink_test-vc71-stlport-mt-pgd-1_35/ -Fdvc71-stlport/liblink_test-vc71-stlport-mt-pgd-1_35.pdb link_test.cpp + +liblink_test-vc71-stlport-mt-pgd-1_35_dir : + @if not exist "vc71-stlport\liblink_test-vc71-stlport-mt-pgd-1_35\$(NULL)" mkdir vc71-stlport\liblink_test-vc71-stlport-mt-pgd-1_35 + +liblink_test-vc71-stlport-mt-pgd-1_35_clean : + del vc71-stlport\liblink_test-vc71-stlport-mt-pgd-1_35\*.obj + del vc71-stlport\liblink_test-vc71-stlport-mt-pgd-1_35\*.idb + del vc71-stlport\liblink_test-vc71-stlport-mt-pgd-1_35\*.exp + del vc71-stlport\liblink_test-vc71-stlport-mt-pgd-1_35\*.pch + +./vc71-stlport/liblink_test-vc71-stlport-mt-pgd-1_35.lib : vc71-stlport/liblink_test-vc71-stlport-mt-pgd-1_35/link_test.obj + link -lib /nologo /out:vc71-stlport/liblink_test-vc71-stlport-mt-pgd-1_35.lib $(XSFLAGS) vc71-stlport/liblink_test-vc71-stlport-mt-pgd-1_35/link_test.obj + +./vc71-stlport/liblink_test-vc71-stlport-mt-pgd-1_35.exe : main.cpp ./vc71-stlport/liblink_test-vc71-stlport-mt-pgd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71-stlport/liblink_test-vc71-stlport-mt-pgd-1_35.exe main.cpp /link /LIBPATH:./vc71-stlport + vc71-stlport\liblink_test-vc71-stlport-mt-pgd-1_35.exe + diff --git a/src/boost/libs/config/test/link/vc71.mak b/src/boost/libs/config/test/link/vc71.mak new file mode 100644 index 000000000..887394631 --- /dev/null +++ b/src/boost/libs/config/test/link/vc71.mak @@ -0,0 +1,260 @@ +# copyright John Maddock 2005 +# 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) +# +# auto generated makefile for VC6 compiler +# +# usage: +# make +# brings libraries up to date +# make install +# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended) +# + +# +# Add additional compiler options here: +# +CXXFLAGS= +# +# Add additional include directories here: +# +INCLUDES= +# +# add additional linker flags here: +# +XLFLAGS= +# +# add additional static-library creation flags here: +# +XSFLAGS= + +!IF "$(OS)" == "Windows_NT" +NULL= +!ELSE +NULL=nul +!ENDIF + +!IF "$(MSVCDIR)" == "" +!ERROR Variable MSVCDIR not set. +!ENDIF + + +ALL_HEADER= + +all : main_dir liblink_test-vc71-s-1_35_dir ./vc71/liblink_test-vc71-s-1_35.lib ./vc71/liblink_test-vc71-s-1_35.exe liblink_test-vc71-mt-s-1_35_dir ./vc71/liblink_test-vc71-mt-s-1_35.lib ./vc71/liblink_test-vc71-mt-s-1_35.exe liblink_test-vc71-sgd-1_35_dir ./vc71/liblink_test-vc71-sgd-1_35.lib ./vc71/liblink_test-vc71-sgd-1_35.exe liblink_test-vc71-mt-sgd-1_35_dir ./vc71/liblink_test-vc71-mt-sgd-1_35.lib ./vc71/liblink_test-vc71-mt-sgd-1_35.exe link_test-vc71-mt-gd-1_35_dir ./vc71/link_test-vc71-mt-gd-1_35.lib ./vc71/link_test-vc71-mt-gd-1_35.exe link_test-vc71-mt-1_35_dir ./vc71/link_test-vc71-mt-1_35.lib ./vc71/link_test-vc71-mt-1_35.exe liblink_test-vc71-mt-1_35_dir ./vc71/liblink_test-vc71-mt-1_35.lib ./vc71/liblink_test-vc71-mt-1_35.exe liblink_test-vc71-mt-gd-1_35_dir ./vc71/liblink_test-vc71-mt-gd-1_35.lib ./vc71/liblink_test-vc71-mt-gd-1_35.exe + +clean : liblink_test-vc71-s-1_35_clean liblink_test-vc71-mt-s-1_35_clean liblink_test-vc71-sgd-1_35_clean liblink_test-vc71-mt-sgd-1_35_clean link_test-vc71-mt-gd-1_35_clean link_test-vc71-mt-1_35_clean liblink_test-vc71-mt-1_35_clean liblink_test-vc71-mt-gd-1_35_clean + +install : all + copy vc71\liblink_test-vc71-s-1_35.lib "$(MSVCDIR)\lib" + copy vc71\liblink_test-vc71-mt-s-1_35.lib "$(MSVCDIR)\lib" + copy vc71\liblink_test-vc71-sgd-1_35.lib "$(MSVCDIR)\lib" + copy vc71\liblink_test-vc71-sgd-1_35.pdb "$(MSVCDIR)\lib" + copy vc71\liblink_test-vc71-mt-sgd-1_35.lib "$(MSVCDIR)\lib" + copy vc71\liblink_test-vc71-mt-sgd-1_35.pdb "$(MSVCDIR)\lib" + copy vc71\link_test-vc71-mt-gd-1_35.lib "$(MSVCDIR)\lib" + copy vc71\link_test-vc71-mt-gd-1_35.dll "$(MSVCDIR)\bin" + copy vc71\link_test-vc71-mt-gd-1_35.pdb "$(MSVCDIR)\lib" + copy vc71\link_test-vc71-mt-1_35.lib "$(MSVCDIR)\lib" + copy vc71\link_test-vc71-mt-1_35.dll "$(MSVCDIR)\bin" + copy vc71\liblink_test-vc71-mt-1_35.lib "$(MSVCDIR)\lib" + copy vc71\liblink_test-vc71-mt-gd-1_35.lib "$(MSVCDIR)\lib" + copy vc71\liblink_test-vc71-mt-gd-1_35.pdb "$(MSVCDIR)\lib" + +main_dir : + @if not exist "vc71\$(NULL)" mkdir vc71 + + +######################################################## +# +# section for liblink_test-vc71-s-1_35.lib +# +######################################################## +vc71/liblink_test-vc71-s-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -Y- -Fo./vc71/liblink_test-vc71-s-1_35/ -Fdvc71/liblink_test-vc71-s-1_35.pdb link_test.cpp + +liblink_test-vc71-s-1_35_dir : + @if not exist "vc71\liblink_test-vc71-s-1_35\$(NULL)" mkdir vc71\liblink_test-vc71-s-1_35 + +liblink_test-vc71-s-1_35_clean : + del vc71\liblink_test-vc71-s-1_35\*.obj + del vc71\liblink_test-vc71-s-1_35\*.idb + del vc71\liblink_test-vc71-s-1_35\*.exp + del vc71\liblink_test-vc71-s-1_35\*.pch + +./vc71/liblink_test-vc71-s-1_35.lib : vc71/liblink_test-vc71-s-1_35/link_test.obj + link -lib /nologo /out:vc71/liblink_test-vc71-s-1_35.lib $(XSFLAGS) vc71/liblink_test-vc71-s-1_35/link_test.obj + +./vc71/liblink_test-vc71-s-1_35.exe : main.cpp ./vc71/liblink_test-vc71-s-1_35.lib + cl $(INCLUDES) /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71/liblink_test-vc71-s-1_35.exe main.cpp /link /LIBPATH:./vc71 + vc71\liblink_test-vc71-s-1_35.exe + +######################################################## +# +# section for liblink_test-vc71-mt-s-1_35.lib +# +######################################################## +vc71/liblink_test-vc71-mt-s-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD $(CXXFLAGS) -Y- -Fo./vc71/liblink_test-vc71-mt-s-1_35/ -Fdvc71/liblink_test-vc71-mt-s-1_35.pdb link_test.cpp + +liblink_test-vc71-mt-s-1_35_dir : + @if not exist "vc71\liblink_test-vc71-mt-s-1_35\$(NULL)" mkdir vc71\liblink_test-vc71-mt-s-1_35 + +liblink_test-vc71-mt-s-1_35_clean : + del vc71\liblink_test-vc71-mt-s-1_35\*.obj + del vc71\liblink_test-vc71-mt-s-1_35\*.idb + del vc71\liblink_test-vc71-mt-s-1_35\*.exp + del vc71\liblink_test-vc71-mt-s-1_35\*.pch + +./vc71/liblink_test-vc71-mt-s-1_35.lib : vc71/liblink_test-vc71-mt-s-1_35/link_test.obj + link -lib /nologo /out:vc71/liblink_test-vc71-mt-s-1_35.lib $(XSFLAGS) vc71/liblink_test-vc71-mt-s-1_35/link_test.obj + +./vc71/liblink_test-vc71-mt-s-1_35.exe : main.cpp ./vc71/liblink_test-vc71-mt-s-1_35.lib + cl $(INCLUDES) /nologo /MT /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71/liblink_test-vc71-mt-s-1_35.exe main.cpp /link /LIBPATH:./vc71 + vc71\liblink_test-vc71-mt-s-1_35.exe + +######################################################## +# +# section for liblink_test-vc71-sgd-1_35.lib +# +######################################################## +vc71/liblink_test-vc71-sgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MLd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71/liblink_test-vc71-sgd-1_35/ -Fdvc71/liblink_test-vc71-sgd-1_35.pdb link_test.cpp + +liblink_test-vc71-sgd-1_35_dir : + @if not exist "vc71\liblink_test-vc71-sgd-1_35\$(NULL)" mkdir vc71\liblink_test-vc71-sgd-1_35 + +liblink_test-vc71-sgd-1_35_clean : + del vc71\liblink_test-vc71-sgd-1_35\*.obj + del vc71\liblink_test-vc71-sgd-1_35\*.idb + del vc71\liblink_test-vc71-sgd-1_35\*.exp + del vc71\liblink_test-vc71-sgd-1_35\*.pch + +./vc71/liblink_test-vc71-sgd-1_35.lib : vc71/liblink_test-vc71-sgd-1_35/link_test.obj + link -lib /nologo /out:vc71/liblink_test-vc71-sgd-1_35.lib $(XSFLAGS) vc71/liblink_test-vc71-sgd-1_35/link_test.obj + +./vc71/liblink_test-vc71-sgd-1_35.exe : main.cpp ./vc71/liblink_test-vc71-sgd-1_35.lib + cl $(INCLUDES) /nologo /MLd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71/liblink_test-vc71-sgd-1_35.exe main.cpp /link /LIBPATH:./vc71 + vc71\liblink_test-vc71-sgd-1_35.exe + +######################################################## +# +# section for liblink_test-vc71-mt-sgd-1_35.lib +# +######################################################## +vc71/liblink_test-vc71-mt-sgd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71/liblink_test-vc71-mt-sgd-1_35/ -Fdvc71/liblink_test-vc71-mt-sgd-1_35.pdb link_test.cpp + +liblink_test-vc71-mt-sgd-1_35_dir : + @if not exist "vc71\liblink_test-vc71-mt-sgd-1_35\$(NULL)" mkdir vc71\liblink_test-vc71-mt-sgd-1_35 + +liblink_test-vc71-mt-sgd-1_35_clean : + del vc71\liblink_test-vc71-mt-sgd-1_35\*.obj + del vc71\liblink_test-vc71-mt-sgd-1_35\*.idb + del vc71\liblink_test-vc71-mt-sgd-1_35\*.exp + del vc71\liblink_test-vc71-mt-sgd-1_35\*.pch + +./vc71/liblink_test-vc71-mt-sgd-1_35.lib : vc71/liblink_test-vc71-mt-sgd-1_35/link_test.obj + link -lib /nologo /out:vc71/liblink_test-vc71-mt-sgd-1_35.lib $(XSFLAGS) vc71/liblink_test-vc71-mt-sgd-1_35/link_test.obj + +./vc71/liblink_test-vc71-mt-sgd-1_35.exe : main.cpp ./vc71/liblink_test-vc71-mt-sgd-1_35.lib + cl $(INCLUDES) /nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /FD /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71/liblink_test-vc71-mt-sgd-1_35.exe main.cpp /link /LIBPATH:./vc71 + vc71\liblink_test-vc71-mt-sgd-1_35.exe + +######################################################## +# +# section for link_test-vc71-mt-gd-1_35.lib +# +######################################################## +vc71/link_test-vc71-mt-gd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /D_DEBUG /DBOOST_DYN_LINK /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71/link_test-vc71-mt-gd-1_35/ -Fdvc71/link_test-vc71-mt-gd-1_35.pdb link_test.cpp + +link_test-vc71-mt-gd-1_35_dir : + @if not exist "vc71\link_test-vc71-mt-gd-1_35\$(NULL)" mkdir vc71\link_test-vc71-mt-gd-1_35 + +link_test-vc71-mt-gd-1_35_clean : + del vc71\link_test-vc71-mt-gd-1_35\*.obj + del vc71\link_test-vc71-mt-gd-1_35\*.idb + del vc71\link_test-vc71-mt-gd-1_35\*.exp + del vc71\link_test-vc71-mt-gd-1_35\*.pch + +./vc71/link_test-vc71-mt-gd-1_35.lib : vc71/link_test-vc71-mt-gd-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc71/link_test-vc71-mt-gd-1_35.pdb" /debug /machine:I386 /out:"vc71/link_test-vc71-mt-gd-1_35.dll" /implib:"vc71/link_test-vc71-mt-gd-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc71/link_test-vc71-mt-gd-1_35/link_test.obj + +./vc71/link_test-vc71-mt-gd-1_35.exe : main.cpp ./vc71/link_test-vc71-mt-gd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /D_DEBUG /DBOOST_DYN_LINK /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71/link_test-vc71-mt-gd-1_35.exe main.cpp /link /LIBPATH:./vc71 + vc71\link_test-vc71-mt-gd-1_35.exe + +######################################################## +# +# section for link_test-vc71-mt-1_35.lib +# +######################################################## +vc71/link_test-vc71-mt-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -Y- -Fo./vc71/link_test-vc71-mt-1_35/ -Fdvc71/link_test-vc71-mt-1_35.pdb link_test.cpp + +link_test-vc71-mt-1_35_dir : + @if not exist "vc71\link_test-vc71-mt-1_35\$(NULL)" mkdir vc71\link_test-vc71-mt-1_35 + +link_test-vc71-mt-1_35_clean : + del vc71\link_test-vc71-mt-1_35\*.obj + del vc71\link_test-vc71-mt-1_35\*.idb + del vc71\link_test-vc71-mt-1_35\*.exp + del vc71\link_test-vc71-mt-1_35\*.pch + +./vc71/link_test-vc71-mt-1_35.lib : vc71/link_test-vc71-mt-1_35/link_test.obj + link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"vc71/link_test-vc71-mt-1_35.pdb" /debug /machine:I386 /out:"vc71/link_test-vc71-mt-1_35.dll" /implib:"vc71/link_test-vc71-mt-1_35.lib" /LIBPATH:$(STLPORT_PATH)\lib $(XLFLAGS) vc71/link_test-vc71-mt-1_35/link_test.obj + +./vc71/link_test-vc71-mt-1_35.exe : main.cpp ./vc71/link_test-vc71-mt-1_35.lib + cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71/link_test-vc71-mt-1_35.exe main.cpp /link /LIBPATH:./vc71 + vc71\link_test-vc71-mt-1_35.exe + +######################################################## +# +# section for liblink_test-vc71-mt-1_35.lib +# +######################################################## +vc71/liblink_test-vc71-mt-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD $(CXXFLAGS) -Y- -Fo./vc71/liblink_test-vc71-mt-1_35/ -Fdvc71/liblink_test-vc71-mt-1_35.pdb link_test.cpp + +liblink_test-vc71-mt-1_35_dir : + @if not exist "vc71\liblink_test-vc71-mt-1_35\$(NULL)" mkdir vc71\liblink_test-vc71-mt-1_35 + +liblink_test-vc71-mt-1_35_clean : + del vc71\liblink_test-vc71-mt-1_35\*.obj + del vc71\liblink_test-vc71-mt-1_35\*.idb + del vc71\liblink_test-vc71-mt-1_35\*.exp + del vc71\liblink_test-vc71-mt-1_35\*.pch + +./vc71/liblink_test-vc71-mt-1_35.lib : vc71/liblink_test-vc71-mt-1_35/link_test.obj + link -lib /nologo /out:vc71/liblink_test-vc71-mt-1_35.lib $(XSFLAGS) vc71/liblink_test-vc71-mt-1_35/link_test.obj + +./vc71/liblink_test-vc71-mt-1_35.exe : main.cpp ./vc71/liblink_test-vc71-mt-1_35.lib + cl $(INCLUDES) /nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71/liblink_test-vc71-mt-1_35.exe main.cpp /link /LIBPATH:./vc71 + vc71\liblink_test-vc71-mt-1_35.exe + +######################################################## +# +# section for liblink_test-vc71-mt-gd-1_35.lib +# +######################################################## +vc71/liblink_test-vc71-mt-gd-1_35/link_test.obj: link_test.cpp $(ALL_HEADER) + cl /c $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 $(CXXFLAGS) -Y- -Fo./vc71/liblink_test-vc71-mt-gd-1_35/ -Fdvc71/liblink_test-vc71-mt-gd-1_35.pdb link_test.cpp + +liblink_test-vc71-mt-gd-1_35_dir : + @if not exist "vc71\liblink_test-vc71-mt-gd-1_35\$(NULL)" mkdir vc71\liblink_test-vc71-mt-gd-1_35 + +liblink_test-vc71-mt-gd-1_35_clean : + del vc71\liblink_test-vc71-mt-gd-1_35\*.obj + del vc71\liblink_test-vc71-mt-gd-1_35\*.idb + del vc71\liblink_test-vc71-mt-gd-1_35\*.exp + del vc71\liblink_test-vc71-mt-gd-1_35\*.pch + +./vc71/liblink_test-vc71-mt-gd-1_35.lib : vc71/liblink_test-vc71-mt-gd-1_35/link_test.obj + link -lib /nologo /out:vc71/liblink_test-vc71-mt-gd-1_35.lib $(XSFLAGS) vc71/liblink_test-vc71-mt-gd-1_35/link_test.obj + +./vc71/liblink_test-vc71-mt-gd-1_35.exe : main.cpp ./vc71/liblink_test-vc71-mt-gd-1_35.lib + cl $(INCLUDES) /nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD /GX /RTC1 /DBOOST_LIB_DIAGNOSTIC=1 $(CXXFLAGS) -o ./vc71/liblink_test-vc71-mt-gd-1_35.exe main.cpp /link /LIBPATH:./vc71 + vc71\liblink_test-vc71-mt-gd-1_35.exe + diff --git a/src/boost/libs/config/test/link/vc_gen.sh b/src/boost/libs/config/test/link/vc_gen.sh new file mode 100644 index 000000000..a4f5dccaf --- /dev/null +++ b/src/boost/libs/config/test/link/vc_gen.sh @@ -0,0 +1,424 @@ +#! /usr/bin/env bash +# copyright John Maddock 2005 +# 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) + +libname="" +src="" +header="" +all_dep="" + +# current makefile: +out="" +# temporary file: +tout="" +# install target temp file: +iout="" +# debug flag: +debug="no" +# compile options: +opts="" +# main output sub-directory: +subdir="" +# extra debug /RTc options: +debug_extra="" + +function vc6_gen_lib() +{ + all_dep="$all_dep $libname""_dir ./$subdir/$libname.lib ./$subdir/$libname.exe" + echo " copy $subdir\\$libname.lib "'"$'"(MSVCDIR)\\lib"'"' >> $iout + if test $debug == "yes"; then + echo " copy $subdir\\$libname.pdb "'"$'"(MSVCDIR)\\lib"'"' >> $iout + fi +# +# set up section comments: + cat >> $tout << EOF +######################################################## +# +# section for $libname.lib +# +######################################################## +EOF +# +# process source files: + all_obj="" + for file in $src + do + obj=`echo "$file" | sed 's/\(.*\)cpp/\1obj/g'` + obj="$subdir/$libname/$obj" + all_obj="$all_obj $obj" + echo "$obj: $file \$(ALL_HEADER)" >> $tout + echo " cl /c \$(INCLUDES) $opts \$(CXXFLAGS) -Y- -Fo./$subdir/$libname/ -Fd$subdir/$libname.pdb $file" >> $tout + echo "" >> $tout + done +# +# now for the directories for this library: + echo "$libname"_dir : >> $tout + echo " @if not exist \"$subdir\\$libname\\\$(NULL)\" mkdir $subdir\\$libname" >> $tout + echo "" >> $tout +# +# now for the clean options for this library: + all_clean="$all_clean $libname""_clean" + echo "$libname"_clean : >> $tout + echo " del $subdir\\$libname\\"'*.obj' >> $tout + echo " del $subdir\\$libname\\"'*.idb' >> $tout + echo " del $subdir\\$libname\\"'*.exp' >> $tout + echo " del $subdir\\$libname\\"'*.pch' >> $tout + echo "" >> $tout +# +# now for the main target for this library: + echo ./$subdir/$libname.lib : $all_obj >> $tout + echo " link -lib /nologo /out:$subdir/$libname.lib \$(XSFLAGS) $all_obj" >> $tout + echo "" >> $tout +# now the test program: + echo ./$subdir/$libname.exe : main.cpp ./$subdir/$libname.lib >> $tout + echo " cl \$(INCLUDES) $opts /DBOOST_LIB_DIAGNOSTIC=1 \$(CXXFLAGS) -o ./$subdir/$libname.exe main.cpp /link /LIBPATH:./$subdir" >> $tout + echo " $subdir"'\'"$libname.exe" >> $tout + echo "" >> $tout +} + +function vc6_gen_dll() +{ + all_dep="$all_dep $libname""_dir ./$subdir/$libname.lib ./$subdir/$libname.exe" + echo " copy $subdir\\$libname.lib "'"$'"(MSVCDIR)\\lib"'"' >> $iout + echo " copy $subdir\\$libname.dll "'"$'"(MSVCDIR)\\bin"'"' >> $iout + if test $debug == "yes"; then + echo " copy $subdir\\$libname.pdb "'"$'"(MSVCDIR)\\lib"'"' >> $iout + fi +# +# set up section comments: + cat >> $tout << EOF +######################################################## +# +# section for $libname.lib +# +######################################################## +EOF +# +# process source files: + all_obj="" + for file in $src + do + obj=`echo "$file" | sed 's/\(.*\)cpp/\1obj/g'` + obj="$subdir/$libname/$obj" + all_obj="$all_obj $obj" + echo "$obj: $file \$(ALL_HEADER)" >> $tout + echo " cl /c \$(INCLUDES) $opts \$(CXXFLAGS) -Y- -Fo./$subdir/$libname/ -Fd$subdir/$libname.pdb $file" >> $tout + echo "" >> $tout + done +# +# now for the directories for this library: + echo "$libname"_dir : >> $tout + echo " @if not exist \"$subdir\\$libname\\\$(NULL)\" mkdir $subdir\\$libname" >> $tout + echo "" >> $tout +# +# now for the clean options for this library: + all_clean="$all_clean $libname""_clean" + echo "$libname"_clean : >> $tout + echo " del $subdir\\$libname\\"'*.obj' >> $tout + echo " del $subdir\\$libname\\"'*.idb' >> $tout + echo " del $subdir\\$libname\\"'*.exp' >> $tout + echo " del $subdir\\$libname\\"'*.pch' >> $tout + echo "" >> $tout +# +# now for the main target for this library: + echo ./$subdir/$libname.lib : $all_obj >> $tout + echo " link kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:\"$subdir/$libname.pdb\" /debug /machine:I386 /out:\"$subdir/$libname.dll\" /implib:\"$subdir/$libname.lib\" /LIBPATH:\$(STLPORT_PATH)\\lib \$(XLFLAGS) $all_obj" >> $tout + echo "" >> $tout +# now the test program: + echo ./$subdir/$libname.exe : main.cpp ./$subdir/$libname.lib >> $tout + echo " cl \$(INCLUDES) $opts /DBOOST_LIB_DIAGNOSTIC=1 \$(CXXFLAGS) -o ./$subdir/$libname.exe main.cpp /link /LIBPATH:./$subdir" >> $tout + echo " $subdir"'\'"$libname.exe" >> $tout + echo "" >> $tout +} + +is_stlport="no" + +function vc6_gen() +{ + debug="no" + tout="temp" + iout="temp_install" + all_dep="main_dir" + all_clean="" + echo > $out + echo > $tout + rm -f $iout + + libname="liblink_test-${subdir}-s-${boost_version}" + opts='/nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD' + vc6_gen_lib + + libname="liblink_test-${subdir}-mt-s-${boost_version}" + opts='/nologo /MT /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD ' + vc6_gen_lib + + debug="yes" + libname="liblink_test-${subdir}-sgd-${boost_version}" + opts='/nologo /MLd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_DEBUG /D_MBCS /D_LIB /FD '"$debug_extra"' ' + vc6_gen_lib + + libname="liblink_test-${subdir}-mt-sgd-${boost_version}" + opts='/nologo /MTd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB /FD '"$debug_extra"' ' + vc6_gen_lib + + libname="link_test-${subdir}-mt-gd-${boost_version}" + opts='/nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /D_DEBUG /DBOOST_DYN_LINK /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD '"$debug_extra"' ' + vc6_gen_dll + + debug="no" + opts='/nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD ' + libname="link_test-${subdir}-mt-${boost_version}" + vc6_gen_dll + + debug="no" + opts='/nologo /MD /W3 /GX /O2 /GB /GF /Gy /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL /FD ' + libname="liblink_test-${subdir}-mt-${boost_version}" + vc6_gen_lib + + debug="yes" + libname="liblink_test-${subdir}-mt-gd-${boost_version}" + opts='/nologo /MDd /W3 /Gm /GX /Zi /Od /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL /FD '"$debug_extra"' ' + vc6_gen_lib + + cat > $out << EOF +# copyright John Maddock 2005 +# 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) +# +# auto generated makefile for VC6 compiler +# +# usage: +# make +# brings libraries up to date +# make install +# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended) +# + +# +# Add additional compiler options here: +# +CXXFLAGS= +# +# Add additional include directories here: +# +INCLUDES= +# +# add additional linker flags here: +# +XLFLAGS= +# +# add additional static-library creation flags here: +# +XSFLAGS= + +!IF "\$(OS)" == "Windows_NT" +NULL= +!ELSE +NULL=nul +!ENDIF + +!IF "\$(MSVCDIR)" == "" +!ERROR Variable MSVCDIR not set. +!ENDIF + +EOF + echo "" >> $out + echo "ALL_HEADER=$header" >> $out + echo "" >> $out + echo "all : $all_dep" >> $out + echo >> $out + echo "clean : $all_clean" >> $out + echo >> $out + echo "install : all" >> $out + cat $iout >> $out + echo >> $out + echo main_dir : >> $out + echo " @if not exist \"$subdir\\\$(NULL)\" mkdir $subdir" >> $out + echo "" >> $out + + cat $tout >> $out +} + +function vc6_stlp_gen() +{ + debug="no" + tout="temp" + iout="temp_install" + all_dep="main_dir" + all_clean="" + echo > $out + echo > $tout + rm -f $iout + + libname="liblink_test-${subdir}-mt-s-${boost_version}" + opts='/nologo /MT /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB ' + vc6_gen_lib + + debug="true" + libname="liblink_test-${subdir}-mt-sgd-${boost_version}" + opts='/nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB '"$debug_extra"' ' + vc6_gen_lib + + libname="link_test-${subdir}-mt-gd-${boost_version}" + opts='/nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL '"$debug_extra"' ' + vc6_gen_dll + + debug="no" + opts='/nologo /MD /W3 /GX /O2 /GB /GF /I$(STLPORT_PATH)\stlport /Gy /I..\..\..\..\ /DBOOST_DYN_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL ' + libname="link_test-${subdir}-mt-${boost_version}" + vc6_gen_dll + + debug="no" + opts='/nologo /MD /W3 /GX /O2 /GB /GF /Gy /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /DNDEBUG /DWIN32 /D_WINDOWS /D_MBCS /D_USRDLL ' + libname="liblink_test-${subdir}-mt-${boost_version}" + vc6_gen_lib + + debug="true" + libname="liblink_test-${subdir}-mt-gd-${boost_version}" + opts='/nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL '"$debug_extra"' ' + vc6_gen_lib + +# debug STLPort mode: +# not yet supported by bjam? + debug="yes" + opts='/nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_DYN_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL '"$debug_extra"' ' + libname="link_test-${subdir}-mt-pgd-${boost_version}" + vc6_gen_dll + libname="liblink_test-${subdir}-mt-spgd-${boost_version}" + opts='/nologo /MTd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /D__STL_DEBUG /D_STLP_DEBUG /DWIN32 /D_MT /D_DEBUG /D_MBCS /D_LIB '"$debug_extra"' ' + vc6_gen_lib + opts='/nologo /MDd /W3 /Gm /GX /Zi /Od /I$(STLPORT_PATH)\stlport /I..\..\..\..\ /DBOOST_REGEX_STATIC_LINK /D__STL_DEBUG /D_STLP_DEBUG /D_DEBUG /DWIN32 /D_WINDOWS /D_MBCS /DUSRDLL '"$debug_extra"' ' + libname="liblink_test-${subdir}-mt-pgd-${boost_version}" + vc6_gen_lib + + cat > $out << EOF +# copyright John Maddock 2005 +# 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) +# +# auto generated makefile for VC6+STLPort +# +# usage: +# make +# brings libraries up to date +# make install +# brings libraries up to date and copies binaries to your VC6 /lib and /bin directories (recomended) +# + +# +# Add additional compiler options here: +# +CXXFLAGS= +# +# Add additional include directories here: +# +INCLUDES= +# +# add additional linker flags here: +# +XLFLAGS= +# +# add additional static-library creation flags here: +# +XSFLAGS= + +!IF "\$(OS)" == "Windows_NT" +NULL= +!ELSE +NULL=nul +!ENDIF + +!IF "\$(MSVCDIR)" == "" +!ERROR Variable MSVCDIR not set. +!ENDIF + +!IF "\$(STLPORT_PATH)" == "" +!ERROR Variable STLPORT_PATH not set. +!ENDIF + +EOF + echo "" >> $out + echo "ALL_HEADER=$header" >> $out + echo "" >> $out + echo "all : $all_dep" >> $out + echo >> $out + echo "clean : $all_clean" >> $out + echo >> $out + echo "install : stlport_check all" >> $out + cat $iout >> $out + echo >> $out + echo main_dir : >> $out + echo " @if not exist \"$subdir\\\$(NULL)\" mkdir $subdir" >> $out + echo "" >> $out + echo 'stlport_check : $(STLPORT_PATH)\stlport\string' >> $out + echo " echo" >> $out + echo "" >> $out + + cat $tout >> $out +} + + +. common.sh + +# +# generate vc6 makefile: +debug_extra="/GX" +out="vc6.mak" +subdir="vc6" +vc6_gen +# +# generate vc6-stlport makefile: +is_stlport="yes" +out="vc6-stlport.mak" +no_single="yes" +subdir="vc6-stlport" +vc6_stlp_gen +# +# generate vc7 makefile: +debug_extra="/GX /RTC1" +is_stlport="no" +out="vc7.mak" +no_single="no" +subdir="vc7" +vc6_gen +# +# generate vc7-stlport makefile: +is_stlport="yes" +out="vc7-stlport.mak" +no_single="yes" +subdir="vc7-stlport" +vc6_stlp_gen +# +# generate vc71 makefile: +is_stlport="no" +out="vc71.mak" +no_single="no" +subdir="vc71" +vc6_gen +# +# generate vc71-stlport makefile: +is_stlport="yes" +out="vc71-stlport.mak" +no_single="yes" +subdir="vc71-stlport" +vc6_stlp_gen + + +# +# remove tmep files; +rm -f $tout $iout + + + + + + + + + + + diff --git a/src/boost/libs/config/test/math_info.cpp b/src/boost/libs/config/test/math_info.cpp new file mode 100644 index 000000000..47fe9ffe4 --- /dev/null +++ b/src/boost/libs/config/test/math_info.cpp @@ -0,0 +1,365 @@ +// (C) Copyright John Maddock 2005. +// 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/test for most recent version. + +// +// This test prints out informative information about <math.h>, <float.h> +// and <limits>. Note that this file does require a correctly configured +// Boost setup, and so can't be folded into config_info which is designed +// to function without Boost.Confg support. Each test is documented in +// more detail below. +// + +#include <boost/limits.hpp> +#include <limits.h> +#include <math.h> +#include <cmath> +#include <float.h> +#include <iostream> +#include <iomanip> +#include <cstring> +#include <boost/type_traits/alignment_of.hpp> + +#ifdef BOOST_NO_STDC_NAMESPACE +namespace std{ using ::strcmp; using ::pow; using ::fabs; using ::sqrt; using ::sin; using ::atan2; } +#endif + +static unsigned int indent = 4; +static unsigned int width = 40; + +void print_macro(const char* name, const char* value) +{ + // if name == value+1 then then macro is not defined, + // in which case we don't print anything: + if(0 != std::strcmp(name, value+1)) + { + for(unsigned i = 0; i < indent; ++i) std::cout.put(' '); + std::cout << std::setw(width); + std::cout.setf(std::istream::left, std::istream::adjustfield); + std::cout << name; + if(value[1]) + { + // macro has a value: + std::cout << value << "\n"; + } + else + { + // macro is defined but has no value: + std::cout << " [no value]\n"; + } + } +} + +#define PRINT_MACRO(X) print_macro(#X, BOOST_STRINGIZE(=X)) + +template <class T> +void print_expression(const char* expression, T val) +{ + for(unsigned i = 0; i < indent; ++i) std::cout.put(' '); + std::cout << std::setw(width); + std::cout.setf(std::istream::left, std::istream::adjustfield); + std::cout << std::setprecision(std::numeric_limits<T>::digits10+2); + std::cout << expression << "=" << val << std::endl; +} + +#define PRINT_EXPRESSION(E) print_expression(#E, E); + + +template <class T> +void print_limits(T, const char* name) +{ + // + // Output general information on numeric_limits, as well as + // probing known and supected problems. + // + std::cout << + "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n" + "std::numeric_limits information for type " << name << std::endl; + std::cout << + " is_specialized = " << std::numeric_limits<T>::is_specialized << std::endl; + std::cout << + " min" "() = " << std::setprecision(std::numeric_limits<T>::digits10 + 2) << (std::numeric_limits<T>::min)() << std::endl; + std::cout << + " max" "() = " << std::setprecision(std::numeric_limits<T>::digits10 + 2) << (std::numeric_limits<T>::max)() << std::endl; + std::cout << + " digits = " << std::numeric_limits<T>::digits << std::endl; + std::cout << + " digits10 = " << std::numeric_limits<T>::digits10 << std::endl; + std::cout << + " is_signed = " << std::numeric_limits<T>::is_signed << std::endl; + std::cout << + " is_integer = " << std::numeric_limits<T>::is_integer << std::endl; + std::cout << + " is_exact = " << std::numeric_limits<T>::is_exact << std::endl; + std::cout << + " radix = " << std::numeric_limits<T>::radix << std::endl; + + std::cout << + " epsilon() = " << std::setprecision(std::numeric_limits<T>::digits10 + 2) << (std::numeric_limits<T>::epsilon)() << std::endl; + std::cout << + " round_error() = " << std::setprecision(std::numeric_limits<T>::digits10 + 2) << (std::numeric_limits<T>::round_error)() << std::endl; + + std::cout << + " min_exponent = " << std::numeric_limits<T>::min_exponent << std::endl; + std::cout << + " min_exponent10 = " << std::numeric_limits<T>::min_exponent10 << std::endl; + std::cout << + " max_exponent = " << std::numeric_limits<T>::max_exponent << std::endl; + std::cout << + " max_exponent10 = " << std::numeric_limits<T>::max_exponent10 << std::endl; + std::cout << + " has_infinity = " << std::numeric_limits<T>::has_infinity << std::endl; + std::cout << + " has_quiet_NaN = " << std::numeric_limits<T>::has_quiet_NaN << std::endl; + std::cout << + " has_signaling_NaN = " << std::numeric_limits<T>::has_signaling_NaN << std::endl; + std::cout << + " has_denorm = " << std::numeric_limits<T>::has_denorm << std::endl; + std::cout << + " has_denorm_loss = " << std::numeric_limits<T>::has_denorm_loss << std::endl; + + std::cout << + " infinity() = " << std::setprecision(std::numeric_limits<T>::digits10 + 2) << (std::numeric_limits<T>::infinity)() << std::endl; + std::cout << + " quiet_NaN() = " << std::setprecision(std::numeric_limits<T>::digits10 + 2) << (std::numeric_limits<T>::quiet_NaN)() << std::endl; + std::cout << + " signaling_NaN() = " << std::setprecision(std::numeric_limits<T>::digits10 + 2) << (std::numeric_limits<T>::signaling_NaN)() << std::endl; + std::cout << + " denorm_min() = " << std::setprecision(std::numeric_limits<T>::digits10 + 2) << (std::numeric_limits<T>::denorm_min)() << std::endl; + + + std::cout << + " is_iec559 = " << std::numeric_limits<T>::is_iec559 << std::endl; + std::cout << + " is_bounded = " << std::numeric_limits<T>::is_bounded << std::endl; + std::cout << + " is_modulo = " << std::numeric_limits<T>::is_modulo << std::endl; + std::cout << + " traps = " << std::numeric_limits<T>::traps << std::endl; + std::cout << + " tinyness_before = " << std::numeric_limits<T>::tinyness_before << std::endl; + std::cout << + " round_style = " << std::numeric_limits<T>::round_style << std::endl << std::endl; + + if(std::numeric_limits<T>::is_exact == 0) + { + bool r = std::numeric_limits<T>::epsilon() == std::pow(static_cast<T>(std::numeric_limits<T>::radix), 1-std::numeric_limits<T>::digits); + if(r) + std::cout << "Epsilon has sane value of std::pow(std::numeric_limits<T>::radix, 1-std::numeric_limits<T>::digits)." << std::endl; + else + std::cout << "CAUTION: epsilon does not have a sane value." << std::endl; + std::cout << std::endl; + } + std::cout << + " sizeof(" << name << ") = " << sizeof(T) << std::endl; + std::cout << + " alignment_of<" << name << "> = " << boost::alignment_of<T>::value << std::endl << std::endl; +} +/* +template <class T> +bool is_same_type(T, T) +{ + return true; +}*/ +bool is_same_type(float, float) +{ return true; } +bool is_same_type(double, double) +{ return true; } +bool is_same_type(long double, long double) +{ return true; } +template <class T, class U> +bool is_same_type(T, U) +{ + return false; +} + +// +// We need this to test whether abs has been overloaded for +// the floating point types or not: +// +namespace std{ +#if !BOOST_WORKAROUND(BOOST_MSVC, == 1300) && \ + !defined(_LIBCPP_VERSION) +template <class T> +char abs(T) +{ + return ' '; +} +#endif +} + + +template <class T> +void test_overloads(T, const char* name) +{ + // + // Probe known and suspected problems with the std lib Math functions. + // + std::cout << + "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n" + "Math function overload information for type " << name << std::endl; + + // + // Are the math functions overloaded for type T, + // or do we just get double versions? + // + bool r = is_same_type(std::fabs(T(0)), T(0)); + r &= is_same_type(std::sqrt(T(0)), T(0)); + r &= is_same_type(std::sin(T(0)), T(0)); + if(r) + std::cout << "The Math functions are overloaded for type " << name << std::endl; + else + std::cout << "CAUTION: The Math functions are NOT overloaded for type " << name << std::endl; + + // + // Check that a few of the functions work OK, we do this because if these + // are implemented as double precision internally then we can get + // overflow or underflow when passing arguments of other types. + // + r = (std::fabs((std::numeric_limits<T>::max)()) == (std::numeric_limits<T>::max)()); + r &= (std::fabs(-(std::numeric_limits<T>::max)()) == (std::numeric_limits<T>::max)()); + r &= (std::fabs((std::numeric_limits<T>::min)()) == (std::numeric_limits<T>::min)()); + r &= (std::fabs(-(std::numeric_limits<T>::min)()) == (std::numeric_limits<T>::min)()); + if(r) + std::cout << "std::fabs looks OK for type " << name << std::endl; + else + std::cout << "CAUTION: std::fabs is broken for type " << name << std::endl; + + // + // abs not overloaded for real arguments with VC6 (and others?) + // + r = (std::abs((std::numeric_limits<T>::max)()) == (std::numeric_limits<T>::max)()); + r &= (std::abs(-(std::numeric_limits<T>::max)()) == (std::numeric_limits<T>::max)()); + r &= (std::abs((std::numeric_limits<T>::min)()) == (std::numeric_limits<T>::min)()); + r &= (std::abs(-(std::numeric_limits<T>::min)()) == (std::numeric_limits<T>::min)()); + if(r) + std::cout << "std::abs looks OK for type " << name << std::endl; + else + std::cout << "CAUTION: std::abs is broken for type " << name << std::endl; + + // + // std::sqrt on FreeBSD converts long double arguments to double leading to + // overflow/underflow: + // + r = (std::sqrt((std::numeric_limits<T>::max)()) < (std::numeric_limits<T>::max)()); + if(r) + std::cout << "std::sqrt looks OK for type " << name << std::endl; + else + std::cout << "CAUTION: std::sqrt is broken for type " << name << std::endl; + + // + // Sanity check for atan2: verify that it returns arguments in the correct + // range and not just atan(x/y). + // + static const T half_pi = static_cast<T>(1.57079632679489661923132169163975144L); + + T val = std::atan2(T(-1), T(-1)); + r = -half_pi > val; + val = std::atan2(T(1), T(-1)); + r &= half_pi < val; + val = std::atan2(T(1), T(1)); + r &= (val > 0) && (val < half_pi); + val = std::atan2(T(-1), T(1)); + r &= (val < 0) && (val > -half_pi); + if(r) + std::cout << "std::atan2 looks OK for type " << name << std::endl; + else + std::cout << "CAUTION: std::atan2 is broken for type " << name << std::endl; +} + + + +int main() +{ + // + // Start by printing the values of the macros from float.h + // + std::cout << + "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n" + "Macros from <math.h>" << std::endl; + +#ifdef __BORLANDC__ + // Turn off hardware exceptions so we don't just abort + // when calling numeric_limits members. + _control87(MCW_EM,MCW_EM); +#endif + + PRINT_EXPRESSION(HUGE_VAL); +#ifdef HUGE_VALF + PRINT_EXPRESSION(HUGE_VALF); +#endif +#ifdef HUGE_VALL + PRINT_EXPRESSION(HUGE_VALL); +#endif +#ifdef INFINITY + PRINT_EXPRESSION(INFINITY); +#endif + + PRINT_MACRO(NAN); + PRINT_MACRO(FP_INFINITE); + PRINT_MACRO(FP_NAN); + PRINT_MACRO(FP_NORMAL); + PRINT_MACRO(FP_SUBNORMAL); + PRINT_MACRO(FP_ZERO); + PRINT_MACRO(FP_FAST_FMA); + PRINT_MACRO(FP_FAST_FMAF); + PRINT_MACRO(FP_FAST_FMAL); + PRINT_MACRO(FP_ILOGB0); + PRINT_MACRO(FP_ILOGBNAN); + PRINT_MACRO(MATH_ERRNO); + PRINT_MACRO(MATH_ERREXCEPT); + + PRINT_EXPRESSION(FLT_MIN_10_EXP); + PRINT_EXPRESSION(FLT_DIG); + PRINT_EXPRESSION(FLT_MIN_EXP); + PRINT_EXPRESSION(FLT_EPSILON); + PRINT_EXPRESSION(FLT_RADIX); + PRINT_EXPRESSION(FLT_MANT_DIG); + PRINT_EXPRESSION(FLT_ROUNDS); + PRINT_EXPRESSION(FLT_MAX); + PRINT_EXPRESSION(FLT_MAX_10_EXP); + PRINT_EXPRESSION(FLT_MAX_EXP); + PRINT_EXPRESSION(FLT_MIN); + PRINT_EXPRESSION(DBL_DIG); + PRINT_EXPRESSION(DBL_MIN_EXP); + PRINT_EXPRESSION(DBL_EPSILON); + PRINT_EXPRESSION(DBL_MANT_DIG); + PRINT_EXPRESSION(DBL_MAX); + PRINT_EXPRESSION(DBL_MIN); + PRINT_EXPRESSION(DBL_MAX_10_EXP); + PRINT_EXPRESSION(DBL_MAX_EXP); + PRINT_EXPRESSION(DBL_MIN_10_EXP); + PRINT_EXPRESSION(LDBL_MAX_10_EXP); + PRINT_EXPRESSION(LDBL_MAX_EXP); + PRINT_EXPRESSION(LDBL_MIN); + PRINT_EXPRESSION(LDBL_MIN_10_EXP); + PRINT_EXPRESSION(LDBL_DIG); + PRINT_EXPRESSION(LDBL_MIN_EXP); + PRINT_EXPRESSION(LDBL_EPSILON); + PRINT_EXPRESSION(LDBL_MANT_DIG); + PRINT_EXPRESSION(LDBL_MAX); + + std::cout << std::endl; + + // + // print out numeric_limits info: + // + print_limits(float(0), "float"); + print_limits(double(0), "double"); + print_limits((long double)(0), "long double"); + + // + // print out function overload information: + // + test_overloads(float(0), "float"); + test_overloads(double(0), "double"); + test_overloads((long double)(0), "long double"); + return 0; +} + + + + diff --git a/src/boost/libs/config/test/no_adl_barrier_fail.cpp b/src/boost/libs/config/test/no_adl_barrier_fail.cpp new file mode 100644 index 000000000..a21e0b3b6 --- /dev/null +++ b/src/boost/libs/config/test/no_adl_barrier_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Mar 28 16:52:13 2008 +// 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: generate.cpp 40184 2007-10-19 12:46:54Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_ADL_BARRIER +// This file should not compile, if it does then +// BOOST_NO_ADL_BARRIER should not be defined. +// See file boost_no_adl_barrier.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_ADL_BARRIER +#include "boost_no_adl_barrier.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_adl_barrier::test(); +} + diff --git a/src/boost/libs/config/test/no_adl_barrier_pass.cpp b/src/boost/libs/config/test/no_adl_barrier_pass.cpp new file mode 100644 index 000000000..39bef3fb4 --- /dev/null +++ b/src/boost/libs/config/test/no_adl_barrier_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Mar 28 16:52:13 2008 +// 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: generate.cpp 40184 2007-10-19 12:46:54Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_ADL_BARRIER +// This file should compile, if it does not then +// BOOST_NO_ADL_BARRIER should be defined. +// See file boost_no_adl_barrier.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_ADL_BARRIER +#include "boost_no_adl_barrier.ipp" +#else +namespace boost_no_adl_barrier = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_adl_barrier::test(); +} + diff --git a/src/boost/libs/config/test/no_arg_dep_lookup_fail.cpp b/src/boost/libs/config/test/no_arg_dep_lookup_fail.cpp new file mode 100644 index 000000000..7733f87b0 --- /dev/null +++ b/src/boost/libs/config/test/no_arg_dep_lookup_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP +// This file should not compile, if it does then +// BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP should not be defined. +// See file boost_no_arg_dep_lookup.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP +#include "boost_no_arg_dep_lookup.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_argument_dependent_lookup::test(); +} + diff --git a/src/boost/libs/config/test/no_arg_dep_lookup_pass.cpp b/src/boost/libs/config/test/no_arg_dep_lookup_pass.cpp new file mode 100644 index 000000000..1a8d7a7b8 --- /dev/null +++ b/src/boost/libs/config/test/no_arg_dep_lookup_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP +// This file should compile, if it does not then +// BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP should be defined. +// See file boost_no_arg_dep_lookup.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP +#include "boost_no_arg_dep_lookup.ipp" +#else +namespace boost_no_argument_dependent_lookup = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_argument_dependent_lookup::test(); +} + diff --git a/src/boost/libs/config/test/no_array_type_spec_fail.cpp b/src/boost/libs/config/test/no_array_type_spec_fail.cpp new file mode 100644 index 000000000..9299736e0 --- /dev/null +++ b/src/boost/libs/config/test/no_array_type_spec_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS +// This file should not compile, if it does then +// BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS should not be defined. +// See file boost_no_array_type_spec.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS +#include "boost_no_array_type_spec.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_array_type_specializations::test(); +} + diff --git a/src/boost/libs/config/test/no_array_type_spec_pass.cpp b/src/boost/libs/config/test/no_array_type_spec_pass.cpp new file mode 100644 index 000000000..75ab43404 --- /dev/null +++ b/src/boost/libs/config/test/no_array_type_spec_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS +// This file should compile, if it does not then +// BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS should be defined. +// See file boost_no_array_type_spec.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS +#include "boost_no_array_type_spec.ipp" +#else +namespace boost_no_array_type_specializations = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_array_type_specializations::test(); +} + diff --git a/src/boost/libs/config/test/no_auto_declarations_fail.cpp b/src/boost/libs/config/test/no_auto_declarations_fail.cpp new file mode 100644 index 000000000..8f770df7f --- /dev/null +++ b/src/boost/libs/config/test/no_auto_declarations_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Mar 12 17:32:04 2009 +// 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_AUTO_DECLARATIONS +// This file should not compile, if it does then +// BOOST_NO_CXX11_AUTO_DECLARATIONS should not be defined. +// See file boost_no_auto_declarations.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_AUTO_DECLARATIONS +#include "boost_no_auto_declarations.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_auto_declarations::test(); +} + diff --git a/src/boost/libs/config/test/no_auto_declarations_pass.cpp b/src/boost/libs/config/test/no_auto_declarations_pass.cpp new file mode 100644 index 000000000..b901aaff7 --- /dev/null +++ b/src/boost/libs/config/test/no_auto_declarations_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Mar 12 17:32:04 2009 +// 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_AUTO_DECLARATIONS +// This file should compile, if it does not then +// BOOST_NO_CXX11_AUTO_DECLARATIONS should be defined. +// See file boost_no_auto_declarations.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_AUTO_DECLARATIONS +#include "boost_no_auto_declarations.ipp" +#else +namespace boost_no_cxx11_auto_declarations = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_auto_declarations::test(); +} + diff --git a/src/boost/libs/config/test/no_auto_multidecl_fail.cpp b/src/boost/libs/config/test/no_auto_multidecl_fail.cpp new file mode 100644 index 000000000..664644739 --- /dev/null +++ b/src/boost/libs/config/test/no_auto_multidecl_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Mar 12 17:32:04 2009 +// 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_AUTO_MULTIDECLARATIONS +// This file should not compile, if it does then +// BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS should not be defined. +// See file boost_no_auto_multidecl.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS +#include "boost_no_auto_multidecl.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_auto_multideclarations::test(); +} + diff --git a/src/boost/libs/config/test/no_auto_multidecl_pass.cpp b/src/boost/libs/config/test/no_auto_multidecl_pass.cpp new file mode 100644 index 000000000..b2071ea64 --- /dev/null +++ b/src/boost/libs/config/test/no_auto_multidecl_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Mar 12 17:32:04 2009 +// 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_AUTO_MULTIDECLARATIONS +// This file should compile, if it does not then +// BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS should be defined. +// See file boost_no_auto_multidecl.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS +#include "boost_no_auto_multidecl.ipp" +#else +namespace boost_no_cxx11_auto_multideclarations = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_auto_multideclarations::test(); +} + diff --git a/src/boost/libs/config/test/no_auto_ptr_fail.cpp b/src/boost/libs/config/test/no_auto_ptr_fail.cpp new file mode 100644 index 000000000..da64bb92c --- /dev/null +++ b/src/boost/libs/config/test/no_auto_ptr_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_NO_AUTO_PTR +// This file should not compile, if it does then +// BOOST_NO_AUTO_PTR should not be defined. +// See file boost_no_auto_ptr.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_AUTO_PTR +#include "boost_no_auto_ptr.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_auto_ptr::test(); +} + diff --git a/src/boost/libs/config/test/no_auto_ptr_pass.cpp b/src/boost/libs/config/test/no_auto_ptr_pass.cpp new file mode 100644 index 000000000..3a978a744 --- /dev/null +++ b/src/boost/libs/config/test/no_auto_ptr_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:00 2004 +// 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. + +// Test file for macro BOOST_NO_AUTO_PTR +// This file should compile, if it does not then +// BOOST_NO_AUTO_PTR should be defined. +// See file boost_no_auto_ptr.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_AUTO_PTR +#include "boost_no_auto_ptr.ipp" +#else +namespace boost_no_auto_ptr = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_auto_ptr::test(); +} + diff --git a/src/boost/libs/config/test/no_bcb_partial_spec_fail.cpp b/src/boost/libs/config/test/no_bcb_partial_spec_fail.cpp new file mode 100644 index 000000000..c19747bdd --- /dev/null +++ b/src/boost/libs/config/test/no_bcb_partial_spec_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_BCB_PARTIAL_SPECIALIZATION_BUG +// This file should not compile, if it does then +// BOOST_BCB_PARTIAL_SPECIALIZATION_BUG should not be defined. +// See file boost_no_bcb_partial_spec.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_BCB_PARTIAL_SPECIALIZATION_BUG +#include "boost_no_bcb_partial_spec.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_bcb_partial_specialization_bug::test(); +} + diff --git a/src/boost/libs/config/test/no_bcb_partial_spec_pass.cpp b/src/boost/libs/config/test/no_bcb_partial_spec_pass.cpp new file mode 100644 index 000000000..a6605bc85 --- /dev/null +++ b/src/boost/libs/config/test/no_bcb_partial_spec_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_BCB_PARTIAL_SPECIALIZATION_BUG +// This file should compile, if it does not then +// BOOST_BCB_PARTIAL_SPECIALIZATION_BUG should be defined. +// See file boost_no_bcb_partial_spec.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_BCB_PARTIAL_SPECIALIZATION_BUG +#include "boost_no_bcb_partial_spec.ipp" +#else +namespace boost_bcb_partial_specialization_bug = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_bcb_partial_specialization_bug::test(); +} + diff --git a/src/boost/libs/config/test/no_char16_t_fail.cpp b/src/boost/libs/config/test/no_char16_t_fail.cpp new file mode 100644 index 000000000..63ddf7ac9 --- /dev/null +++ b/src/boost/libs/config/test/no_char16_t_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 09:24:04 2008 +// 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_CHAR16_T +// This file should not compile, if it does then +// BOOST_NO_CXX11_CHAR16_T should not be defined. +// See file boost_no_char16_t.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_CHAR16_T +#include "boost_no_char16_t.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_char16_t::test(); +} + diff --git a/src/boost/libs/config/test/no_char16_t_pass.cpp b/src/boost/libs/config/test/no_char16_t_pass.cpp new file mode 100644 index 000000000..b714f0983 --- /dev/null +++ b/src/boost/libs/config/test/no_char16_t_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 09:24:04 2008 +// 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_CHAR16_T +// This file should compile, if it does not then +// BOOST_NO_CXX11_CHAR16_T should be defined. +// See file boost_no_char16_t.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_CHAR16_T +#include "boost_no_char16_t.ipp" +#else +namespace boost_no_cxx11_char16_t = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_char16_t::test(); +} + diff --git a/src/boost/libs/config/test/no_char32_t_fail.cpp b/src/boost/libs/config/test/no_char32_t_fail.cpp new file mode 100644 index 000000000..868050eea --- /dev/null +++ b/src/boost/libs/config/test/no_char32_t_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 09:24:04 2008 +// 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_CHAR32_T +// This file should not compile, if it does then +// BOOST_NO_CXX11_CHAR32_T should not be defined. +// See file boost_no_char32_t.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_CHAR32_T +#include "boost_no_char32_t.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_char32_t::test(); +} + diff --git a/src/boost/libs/config/test/no_char32_t_pass.cpp b/src/boost/libs/config/test/no_char32_t_pass.cpp new file mode 100644 index 000000000..4bb7d5f31 --- /dev/null +++ b/src/boost/libs/config/test/no_char32_t_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 09:24:04 2008 +// 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_CHAR32_T +// This file should compile, if it does not then +// BOOST_NO_CXX11_CHAR32_T should be defined. +// See file boost_no_char32_t.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_CHAR32_T +#include "boost_no_char32_t.ipp" +#else +namespace boost_no_cxx11_char32_t = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_char32_t::test(); +} + diff --git a/src/boost/libs/config/test/no_com_value_init_fail.cpp b/src/boost/libs/config/test/no_com_value_init_fail.cpp new file mode 100644 index 000000000..ec89a8581 --- /dev/null +++ b/src/boost/libs/config/test/no_com_value_init_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Apr 09 12:24:53 2010 +// 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: generate.cpp 49281 2008-10-11 15:40:44Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_COMPLETE_VALUE_INITIALIZATION +// This file should not compile, if it does then +// BOOST_NO_COMPLETE_VALUE_INITIALIZATION should not be defined. +// See file boost_no_com_value_init.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_COMPLETE_VALUE_INITIALIZATION +#include "boost_no_com_value_init.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_complete_value_initialization::test(); +} + diff --git a/src/boost/libs/config/test/no_com_value_init_pass.cpp b/src/boost/libs/config/test/no_com_value_init_pass.cpp new file mode 100644 index 000000000..cfe00a22a --- /dev/null +++ b/src/boost/libs/config/test/no_com_value_init_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Apr 09 12:24:53 2010 +// 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: generate.cpp 49281 2008-10-11 15:40:44Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_COMPLETE_VALUE_INITIALIZATION +// This file should compile, if it does not then +// BOOST_NO_COMPLETE_VALUE_INITIALIZATION should be defined. +// See file boost_no_com_value_init.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_COMPLETE_VALUE_INITIALIZATION +#include "boost_no_com_value_init.ipp" +#else +namespace boost_no_complete_value_initialization = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_complete_value_initialization::test(); +} + diff --git a/src/boost/libs/config/test/no_constexpr_fail.cpp b/src/boost/libs/config/test/no_constexpr_fail.cpp new file mode 100644 index 000000000..0f1163c40 --- /dev/null +++ b/src/boost/libs/config/test/no_constexpr_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Jun 19 16:26:16 2008 +// 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_CONSTEXPR +// This file should not compile, if it does then +// BOOST_NO_CXX11_CONSTEXPR should not be defined. +// See file boost_no_constexpr.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_CONSTEXPR +#include "boost_no_constexpr.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_constexpr::test(); +} + diff --git a/src/boost/libs/config/test/no_constexpr_pass.cpp b/src/boost/libs/config/test/no_constexpr_pass.cpp new file mode 100644 index 000000000..fbacd360a --- /dev/null +++ b/src/boost/libs/config/test/no_constexpr_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Jun 19 16:26:16 2008 +// 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_CONSTEXPR +// This file should compile, if it does not then +// BOOST_NO_CXX11_CONSTEXPR should be defined. +// See file boost_no_constexpr.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_CONSTEXPR +#include "boost_no_constexpr.ipp" +#else +namespace boost_no_cxx11_constexpr = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_constexpr::test(); +} + diff --git a/src/boost/libs/config/test/no_ctype_functions_fail.cpp b/src/boost/libs/config/test/no_ctype_functions_fail.cpp new file mode 100644 index 000000000..5379c7d18 --- /dev/null +++ b/src/boost/libs/config/test/no_ctype_functions_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_CTYPE_FUNCTIONS +// This file should not compile, if it does then +// BOOST_NO_CTYPE_FUNCTIONS should not be defined. +// See file boost_no_ctype_functions.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CTYPE_FUNCTIONS +#include "boost_no_ctype_functions.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_ctype_functions::test(); +} + diff --git a/src/boost/libs/config/test/no_ctype_functions_pass.cpp b/src/boost/libs/config/test/no_ctype_functions_pass.cpp new file mode 100644 index 000000000..64e285fa1 --- /dev/null +++ b/src/boost/libs/config/test/no_ctype_functions_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_CTYPE_FUNCTIONS +// This file should compile, if it does not then +// BOOST_NO_CTYPE_FUNCTIONS should be defined. +// See file boost_no_ctype_functions.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CTYPE_FUNCTIONS +#include "boost_no_ctype_functions.ipp" +#else +namespace boost_no_ctype_functions = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_ctype_functions::test(); +} + diff --git a/src/boost/libs/config/test/no_cv_spec_fail.cpp b/src/boost/libs/config/test/no_cv_spec_fail.cpp new file mode 100644 index 000000000..8b2658fd1 --- /dev/null +++ b/src/boost/libs/config/test/no_cv_spec_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_CV_SPECIALIZATIONS +// This file should not compile, if it does then +// BOOST_NO_CV_SPECIALIZATIONS should not be defined. +// See file boost_no_cv_spec.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CV_SPECIALIZATIONS +#include "boost_no_cv_spec.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cv_specializations::test(); +} + diff --git a/src/boost/libs/config/test/no_cv_spec_pass.cpp b/src/boost/libs/config/test/no_cv_spec_pass.cpp new file mode 100644 index 000000000..310c4efdb --- /dev/null +++ b/src/boost/libs/config/test/no_cv_spec_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_CV_SPECIALIZATIONS +// This file should compile, if it does not then +// BOOST_NO_CV_SPECIALIZATIONS should be defined. +// See file boost_no_cv_spec.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CV_SPECIALIZATIONS +#include "boost_no_cv_spec.ipp" +#else +namespace boost_no_cv_specializations = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cv_specializations::test(); +} + diff --git a/src/boost/libs/config/test/no_cv_void_spec_fail.cpp b/src/boost/libs/config/test/no_cv_void_spec_fail.cpp new file mode 100644 index 000000000..0608d56b3 --- /dev/null +++ b/src/boost/libs/config/test/no_cv_void_spec_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_CV_VOID_SPECIALIZATIONS +// This file should not compile, if it does then +// BOOST_NO_CV_VOID_SPECIALIZATIONS should not be defined. +// See file boost_no_cv_void_spec.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CV_VOID_SPECIALIZATIONS +#include "boost_no_cv_void_spec.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cv_void_specializations::test(); +} + diff --git a/src/boost/libs/config/test/no_cv_void_spec_pass.cpp b/src/boost/libs/config/test/no_cv_void_spec_pass.cpp new file mode 100644 index 000000000..7eac2959a --- /dev/null +++ b/src/boost/libs/config/test/no_cv_void_spec_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_CV_VOID_SPECIALIZATIONS +// This file should compile, if it does not then +// BOOST_NO_CV_VOID_SPECIALIZATIONS should be defined. +// See file boost_no_cv_void_spec.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CV_VOID_SPECIALIZATIONS +#include "boost_no_cv_void_spec.ipp" +#else +namespace boost_no_cv_void_specializations = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cv_void_specializations::test(); +} + diff --git a/src/boost/libs/config/test/no_cwchar_fail.cpp b/src/boost/libs/config/test/no_cwchar_fail.cpp new file mode 100644 index 000000000..e49e9837c --- /dev/null +++ b/src/boost/libs/config/test/no_cwchar_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_CWCHAR +// This file should not compile, if it does then +// BOOST_NO_CWCHAR should not be defined. +// See file boost_no_cwchar.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CWCHAR +#include "boost_no_cwchar.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cwchar::test(); +} + diff --git a/src/boost/libs/config/test/no_cwchar_pass.cpp b/src/boost/libs/config/test/no_cwchar_pass.cpp new file mode 100644 index 000000000..ae82820f3 --- /dev/null +++ b/src/boost/libs/config/test/no_cwchar_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_CWCHAR +// This file should compile, if it does not then +// BOOST_NO_CWCHAR should be defined. +// See file boost_no_cwchar.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CWCHAR +#include "boost_no_cwchar.ipp" +#else +namespace boost_no_cwchar = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cwchar::test(); +} + diff --git a/src/boost/libs/config/test/no_cwctype_fail.cpp b/src/boost/libs/config/test/no_cwctype_fail.cpp new file mode 100644 index 000000000..85bdcbc94 --- /dev/null +++ b/src/boost/libs/config/test/no_cwctype_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_CWCTYPE +// This file should not compile, if it does then +// BOOST_NO_CWCTYPE should not be defined. +// See file boost_no_cwctype.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CWCTYPE +#include "boost_no_cwctype.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cwctype::test(); +} + diff --git a/src/boost/libs/config/test/no_cwctype_pass.cpp b/src/boost/libs/config/test/no_cwctype_pass.cpp new file mode 100644 index 000000000..1cb1c4bec --- /dev/null +++ b/src/boost/libs/config/test/no_cwctype_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_CWCTYPE +// This file should compile, if it does not then +// BOOST_NO_CWCTYPE should be defined. +// See file boost_no_cwctype.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CWCTYPE +#include "boost_no_cwctype.ipp" +#else +namespace boost_no_cwctype = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cwctype::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_addressof_fail.cpp b/src/boost/libs/config/test/no_cxx11_addressof_fail.cpp new file mode 100644 index 000000000..9216b5eff --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_addressof_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Tue Feb 11 17:12:27 2014 +// 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_ADDRESSOF +// This file should not compile, if it does then +// BOOST_NO_CXX11_ADDRESSOF should not be defined. +// See file boost_no_cxx11_addressof.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_ADDRESSOF +#include "boost_no_cxx11_addressof.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_addressof::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_addressof_pass.cpp b/src/boost/libs/config/test/no_cxx11_addressof_pass.cpp new file mode 100644 index 000000000..e4e84abc1 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_addressof_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Tue Feb 11 17:12:27 2014 +// 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_ADDRESSOF +// This file should compile, if it does not then +// BOOST_NO_CXX11_ADDRESSOF should be defined. +// See file boost_no_cxx11_addressof.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_ADDRESSOF +#include "boost_no_cxx11_addressof.ipp" +#else +namespace boost_no_cxx11_addressof = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_addressof::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_alignas_fail.cpp b/src/boost/libs/config/test/no_cxx11_alignas_fail.cpp new file mode 100644 index 000000000..767aaa34d --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_alignas_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 28 18:36:48 2013 +// 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_ALIGNAS +// This file should not compile, if it does then +// BOOST_NO_CXX11_ALIGNAS should not be defined. +// See file boost_no_cxx11_alignas.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_ALIGNAS +#include "boost_no_cxx11_alignas.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_alignas::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_alignas_pass.cpp b/src/boost/libs/config/test/no_cxx11_alignas_pass.cpp new file mode 100644 index 000000000..b8b84b935 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_alignas_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 28 18:36:48 2013 +// 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_ALIGNAS +// This file should compile, if it does not then +// BOOST_NO_CXX11_ALIGNAS should be defined. +// See file boost_no_cxx11_alignas.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_ALIGNAS +#include "boost_no_cxx11_alignas.ipp" +#else +namespace boost_no_cxx11_alignas = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_alignas::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_allocator_fail.cpp b/src/boost/libs/config/test/no_cxx11_allocator_fail.cpp new file mode 100644 index 000000000..0fdb14be6 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_allocator_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 22 11:15:42 2012 +// 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: generate.cpp 72327 2011-06-01 14:51:03Z eric_niebler $ +// + + +// Test file for macro BOOST_NO_CXX11_ALLOCATOR +// This file should not compile, if it does then +// BOOST_NO_CXX11_ALLOCATOR should not be defined. +// See file boost_no_cxx11_allocator.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_ALLOCATOR +#include "boost_no_cxx11_allocator.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_allocator::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_allocator_pass.cpp b/src/boost/libs/config/test/no_cxx11_allocator_pass.cpp new file mode 100644 index 000000000..20a4d63b4 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_allocator_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 22 11:15:42 2012 +// 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: generate.cpp 72327 2011-06-01 14:51:03Z eric_niebler $ +// + + +// Test file for macro BOOST_NO_CXX11_ALLOCATOR +// This file should compile, if it does not then +// BOOST_NO_CXX11_ALLOCATOR should be defined. +// See file boost_no_cxx11_allocator.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_ALLOCATOR +#include "boost_no_cxx11_allocator.ipp" +#else +namespace boost_no_cxx11_allocator = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_allocator::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_atomic_sp_fail.cpp b/src/boost/libs/config/test/no_cxx11_atomic_sp_fail.cpp new file mode 100644 index 000000000..9c8a62024 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_atomic_sp_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 22 11:15:42 2012 +// 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: generate.cpp 72327 2011-06-01 14:51:03Z eric_niebler $ +// + + +// Test file for macro BOOST_NO_CXX11_ATOMIC_SMART_PTR +// This file should not compile, if it does then +// BOOST_NO_CXX11_ATOMIC_SMART_PTR should not be defined. +// See file boost_no_cxx11_atomic_sp.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_ATOMIC_SMART_PTR +#include "boost_no_cxx11_atomic_sp.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_atomic_smart_ptr::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_atomic_sp_pass.cpp b/src/boost/libs/config/test/no_cxx11_atomic_sp_pass.cpp new file mode 100644 index 000000000..5b7b1719b --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_atomic_sp_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 22 11:15:42 2012 +// 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: generate.cpp 72327 2011-06-01 14:51:03Z eric_niebler $ +// + + +// Test file for macro BOOST_NO_CXX11_ATOMIC_SMART_PTR +// This file should compile, if it does not then +// BOOST_NO_CXX11_ATOMIC_SMART_PTR should be defined. +// See file boost_no_cxx11_atomic_sp.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_ATOMIC_SMART_PTR +#include "boost_no_cxx11_atomic_sp.ipp" +#else +namespace boost_no_cxx11_atomic_smart_ptr = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_atomic_smart_ptr::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_defaulted_moves_fail.cpp b/src/boost/libs/config/test/no_cxx11_defaulted_moves_fail.cpp new file mode 100644 index 000000000..782901261 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_defaulted_moves_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Wed Jan 03 23:31:30 2018 +// 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_DEFAULTED_MOVES +// This file should not compile, if it does then +// BOOST_NO_CXX11_DEFAULTED_MOVES should not be defined. +// See file boost_no_cxx11_defaulted_moves.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_DEFAULTED_MOVES +#include "boost_no_cxx11_defaulted_moves.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_defaulted_moves::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_defaulted_moves_pass.cpp b/src/boost/libs/config/test/no_cxx11_defaulted_moves_pass.cpp new file mode 100644 index 000000000..bf26c1443 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_defaulted_moves_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Wed Jan 03 23:31:30 2018 +// 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_DEFAULTED_MOVES +// This file should compile, if it does not then +// BOOST_NO_CXX11_DEFAULTED_MOVES should be defined. +// See file boost_no_cxx11_defaulted_moves.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_DEFAULTED_MOVES +#include "boost_no_cxx11_defaulted_moves.ipp" +#else +namespace boost_no_cxx11_defaulted_moves = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_defaulted_moves::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_exception_fail.cpp b/src/boost/libs/config/test/no_cxx11_exception_fail.cpp new file mode 100644 index 000000000..684f398ba --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_exception_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Aug 23 11:11:12 2019 +// 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_HDR_EXCEPTION +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_EXCEPTION should not be defined. +// See file boost_no_cxx11_exception.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_EXCEPTION +#include "boost_no_cxx11_exception.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_exception::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_exception_pass.cpp b/src/boost/libs/config/test/no_cxx11_exception_pass.cpp new file mode 100644 index 000000000..75b705617 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_exception_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Aug 23 11:11:12 2019 +// 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_HDR_EXCEPTION +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_EXCEPTION should be defined. +// See file boost_no_cxx11_exception.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_EXCEPTION +#include "boost_no_cxx11_exception.ipp" +#else +namespace boost_no_cxx11_hdr_exception = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_exception::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_final_fail.cpp b/src/boost/libs/config/test/no_cxx11_final_fail.cpp new file mode 100644 index 000000000..50c35a207 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_final_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Aug 15 15:51:00 2014 +// 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_FINAL +// This file should not compile, if it does then +// BOOST_NO_CXX11_FINAL should not be defined. +// See file boost_no_cxx11_final.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_FINAL +#include "boost_no_cxx11_final.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_final::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_final_pass.cpp b/src/boost/libs/config/test/no_cxx11_final_pass.cpp new file mode 100644 index 000000000..e18530bd4 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_final_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Aug 15 15:51:00 2014 +// 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_FINAL +// This file should compile, if it does not then +// BOOST_NO_CXX11_FINAL should be defined. +// See file boost_no_cxx11_final.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_FINAL +#include "boost_no_cxx11_final.ipp" +#else +namespace boost_no_cxx11_final = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_final::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_array_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_array_fail.cpp new file mode 100644 index 000000000..766c0f586 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_array_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 12:10:32 2009 +// 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_HDR_ARRAY +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_ARRAY should not be defined. +// See file boost_no_cxx11_hdr_array.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_ARRAY +#include "boost_no_cxx11_hdr_array.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_array::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_array_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_array_pass.cpp new file mode 100644 index 000000000..493840542 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_array_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 12:10:32 2009 +// 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_HDR_ARRAY +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_ARRAY should be defined. +// See file boost_no_cxx11_hdr_array.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_ARRAY +#include "boost_no_cxx11_hdr_array.ipp" +#else +namespace boost_no_cxx11_hdr_array = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_array::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_atomic_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_atomic_fail.cpp new file mode 100644 index 000000000..cb6bd124e --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_atomic_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Dec 12 19:07:12 2013 +// 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_HDR_ATOMIC +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_ATOMIC should not be defined. +// See file boost_no_cxx11_hdr_atomic.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_ATOMIC +#include "boost_no_cxx11_hdr_atomic.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_atomic::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_atomic_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_atomic_pass.cpp new file mode 100644 index 000000000..7258f646b --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_atomic_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Dec 12 19:07:12 2013 +// 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_HDR_ATOMIC +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_ATOMIC should be defined. +// See file boost_no_cxx11_hdr_atomic.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_ATOMIC +#include "boost_no_cxx11_hdr_atomic.ipp" +#else +namespace boost_no_cxx11_hdr_atomic = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_atomic::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_chrono_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_chrono_fail.cpp new file mode 100644 index 000000000..d1ac76e0b --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_chrono_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_CHRONO +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_CHRONO should not be defined. +// See file boost_no_cxx11_hdr_chrono.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_CHRONO +#include "boost_no_cxx11_hdr_chrono.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_chrono::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_chrono_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_chrono_pass.cpp new file mode 100644 index 000000000..3bc1af88a --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_chrono_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_CHRONO +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_CHRONO should be defined. +// See file boost_no_cxx11_hdr_chrono.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_CHRONO +#include "boost_no_cxx11_hdr_chrono.ipp" +#else +namespace boost_no_cxx11_hdr_chrono = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_chrono::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_codecvt_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_codecvt_fail.cpp new file mode 100644 index 000000000..041fd0a2d --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_codecvt_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_CODECVT +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_CODECVT should not be defined. +// See file boost_no_cxx11_hdr_codecvt.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_CODECVT +#include "boost_no_cxx11_hdr_codecvt.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_codecvt::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_codecvt_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_codecvt_pass.cpp new file mode 100644 index 000000000..241a38d44 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_codecvt_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_CODECVT +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_CODECVT should be defined. +// See file boost_no_cxx11_hdr_codecvt.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_CODECVT +#include "boost_no_cxx11_hdr_codecvt.ipp" +#else +namespace boost_no_cxx11_hdr_codecvt = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_codecvt::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_condition_variable_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_condition_variable_fail.cpp new file mode 100644 index 000000000..f34cd377c --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_condition_variable_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_CONDITION_VARIABLE +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_CONDITION_VARIABLE should not be defined. +// See file boost_no_cxx11_hdr_condition_variable.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_CONDITION_VARIABLE +#include "boost_no_cxx11_hdr_condition_variable.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_condition_variable::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_condition_variable_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_condition_variable_pass.cpp new file mode 100644 index 000000000..017084bbb --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_condition_variable_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_CONDITION_VARIABLE +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_CONDITION_VARIABLE should be defined. +// See file boost_no_cxx11_hdr_condition_variable.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_CONDITION_VARIABLE +#include "boost_no_cxx11_hdr_condition_variable.ipp" +#else +namespace boost_no_cxx11_hdr_condition_variable = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_condition_variable::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_forward_list_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_forward_list_fail.cpp new file mode 100644 index 000000000..9a1205d41 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_forward_list_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_FORWARD_LIST +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_FORWARD_LIST should not be defined. +// See file boost_no_cxx11_hdr_forward_list.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_FORWARD_LIST +#include "boost_no_cxx11_hdr_forward_list.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_forward_list::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_forward_list_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_forward_list_pass.cpp new file mode 100644 index 000000000..3e8b55b59 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_forward_list_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_FORWARD_LIST +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_FORWARD_LIST should be defined. +// See file boost_no_cxx11_hdr_forward_list.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_FORWARD_LIST +#include "boost_no_cxx11_hdr_forward_list.ipp" +#else +namespace boost_no_cxx11_hdr_forward_list = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_forward_list::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_future_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_future_fail.cpp new file mode 100644 index 000000000..7640f9d36 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_future_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_FUTURE +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_FUTURE should not be defined. +// See file boost_no_cxx11_hdr_future.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_FUTURE +#include "boost_no_cxx11_hdr_future.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_future::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_future_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_future_pass.cpp new file mode 100644 index 000000000..ec169526d --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_future_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_FUTURE +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_FUTURE should be defined. +// See file boost_no_cxx11_hdr_future.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_FUTURE +#include "boost_no_cxx11_hdr_future.ipp" +#else +namespace boost_no_cxx11_hdr_future = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_future::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_initializer_list_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_initializer_list_fail.cpp new file mode 100644 index 000000000..6dfe099e1 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_initializer_list_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_INITIALIZER_LIST +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_INITIALIZER_LIST should not be defined. +// See file boost_no_cxx11_hdr_initializer_list.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_INITIALIZER_LIST +#include "boost_no_cxx11_hdr_initializer_list.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_initializer_list::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_initializer_list_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_initializer_list_pass.cpp new file mode 100644 index 000000000..2a7153905 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_initializer_list_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_INITIALIZER_LIST +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_INITIALIZER_LIST should be defined. +// See file boost_no_cxx11_hdr_initializer_list.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_INITIALIZER_LIST +#include "boost_no_cxx11_hdr_initializer_list.ipp" +#else +namespace boost_no_cxx11_hdr_initializer_list = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_initializer_list::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_mutex_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_mutex_fail.cpp new file mode 100644 index 000000000..87432ec95 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_mutex_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_MUTEX +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_MUTEX should not be defined. +// See file boost_no_cxx11_hdr_mutex.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_MUTEX +#include "boost_no_cxx11_hdr_mutex.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_mutex::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_mutex_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_mutex_pass.cpp new file mode 100644 index 000000000..a912b2cad --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_mutex_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_MUTEX +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_MUTEX should be defined. +// See file boost_no_cxx11_hdr_mutex.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_MUTEX +#include "boost_no_cxx11_hdr_mutex.ipp" +#else +namespace boost_no_cxx11_hdr_mutex = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_mutex::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_random_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_random_fail.cpp new file mode 100644 index 000000000..e4ed0f8e7 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_random_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_RANDOM +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_RANDOM should not be defined. +// See file boost_no_cxx11_hdr_random.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_RANDOM +#include "boost_no_cxx11_hdr_random.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_random::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_random_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_random_pass.cpp new file mode 100644 index 000000000..7995481a2 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_random_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_RANDOM +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_RANDOM should be defined. +// See file boost_no_cxx11_hdr_random.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_RANDOM +#include "boost_no_cxx11_hdr_random.ipp" +#else +namespace boost_no_cxx11_hdr_random = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_random::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_ratio_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_ratio_fail.cpp new file mode 100644 index 000000000..8e15efb62 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_ratio_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_RATIO +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_RATIO should not be defined. +// See file boost_no_cxx11_hdr_ratio.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_RATIO +#include "boost_no_cxx11_hdr_ratio.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_ratio::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_ratio_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_ratio_pass.cpp new file mode 100644 index 000000000..8c1b2d460 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_ratio_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_RATIO +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_RATIO should be defined. +// See file boost_no_cxx11_hdr_ratio.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_RATIO +#include "boost_no_cxx11_hdr_ratio.ipp" +#else +namespace boost_no_cxx11_hdr_ratio = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_ratio::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_regex_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_regex_fail.cpp new file mode 100644 index 000000000..178d5b566 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_regex_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_REGEX +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_REGEX should not be defined. +// See file boost_no_cxx11_hdr_regex.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_REGEX +#include "boost_no_cxx11_hdr_regex.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_regex::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_regex_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_regex_pass.cpp new file mode 100644 index 000000000..6acd2e8e0 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_regex_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_REGEX +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_REGEX should be defined. +// See file boost_no_cxx11_hdr_regex.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_REGEX +#include "boost_no_cxx11_hdr_regex.ipp" +#else +namespace boost_no_cxx11_hdr_regex = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_regex::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_system_error_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_system_error_fail.cpp new file mode 100644 index 000000000..85bb100b0 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_system_error_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_SYSTEM_ERROR +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_SYSTEM_ERROR should not be defined. +// See file boost_no_cxx11_hdr_system_error.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_SYSTEM_ERROR +#include "boost_no_cxx11_hdr_system_error.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_system_error::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_system_error_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_system_error_pass.cpp new file mode 100644 index 000000000..042b52f8f --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_system_error_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_SYSTEM_ERROR +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_SYSTEM_ERROR should be defined. +// See file boost_no_cxx11_hdr_system_error.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_SYSTEM_ERROR +#include "boost_no_cxx11_hdr_system_error.ipp" +#else +namespace boost_no_cxx11_hdr_system_error = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_system_error::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_thread_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_thread_fail.cpp new file mode 100644 index 000000000..0e54a012b --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_thread_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 12:45:15 2009 +// 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_HDR_THREAD +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_THREAD should not be defined. +// See file boost_no_cxx11_hdr_thread.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_THREAD +#include "boost_no_cxx11_hdr_thread.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_thread::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_thread_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_thread_pass.cpp new file mode 100644 index 000000000..34313ab3d --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_thread_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 12:45:15 2009 +// 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_HDR_THREAD +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_THREAD should be defined. +// See file boost_no_cxx11_hdr_thread.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_THREAD +#include "boost_no_cxx11_hdr_thread.ipp" +#else +namespace boost_no_cxx11_hdr_thread = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_thread::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_tuple_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_tuple_fail.cpp new file mode 100644 index 000000000..655de0f66 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_tuple_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_TUPLE +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_TUPLE should not be defined. +// See file boost_no_cxx11_hdr_tuple.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_TUPLE +#include "boost_no_cxx11_hdr_tuple.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_tuple::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_tuple_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_tuple_pass.cpp new file mode 100644 index 000000000..505a77933 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_tuple_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_TUPLE +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_TUPLE should be defined. +// See file boost_no_cxx11_hdr_tuple.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_TUPLE +#include "boost_no_cxx11_hdr_tuple.ipp" +#else +namespace boost_no_cxx11_hdr_tuple = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_tuple::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_type_traits_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_type_traits_fail.cpp new file mode 100644 index 000000000..603e57e2a --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_type_traits_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_TYPE_TRAITS +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_TYPE_TRAITS should not be defined. +// See file boost_no_cxx11_hdr_type_traits.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_TYPE_TRAITS +#include "boost_no_cxx11_hdr_type_traits.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_type_traits::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_type_traits_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_type_traits_pass.cpp new file mode 100644 index 000000000..1f57ef621 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_type_traits_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_TYPE_TRAITS +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_TYPE_TRAITS should be defined. +// See file boost_no_cxx11_hdr_type_traits.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_TYPE_TRAITS +#include "boost_no_cxx11_hdr_type_traits.ipp" +#else +namespace boost_no_cxx11_hdr_type_traits = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_type_traits::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_typeindex_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_typeindex_fail.cpp new file mode 100644 index 000000000..3c43b7b66 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_typeindex_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Jun 04 12:51:34 2010 +// 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: generate.cpp 49281 2008-10-11 15:40:44Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_CXX11_HDR_TYPEINDEX +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_TYPEINDEX should not be defined. +// See file boost_no_cxx11_hdr_typeindex.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_TYPEINDEX +#include "boost_no_cxx11_hdr_typeindex.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_typeindex::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_typeindex_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_typeindex_pass.cpp new file mode 100644 index 000000000..c0d999e8e --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_typeindex_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Jun 04 12:51:34 2010 +// 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: generate.cpp 49281 2008-10-11 15:40:44Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_CXX11_HDR_TYPEINDEX +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_TYPEINDEX should be defined. +// See file boost_no_cxx11_hdr_typeindex.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_TYPEINDEX +#include "boost_no_cxx11_hdr_typeindex.ipp" +#else +namespace boost_no_cxx11_hdr_typeindex = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_typeindex::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_unordered_map_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_unordered_map_fail.cpp new file mode 100644 index 000000000..dad493bb2 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_unordered_map_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_UNORDERED_MAP +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_UNORDERED_MAP should not be defined. +// See file boost_no_cxx11_hdr_unordered_map.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_UNORDERED_MAP +#include "boost_no_cxx11_hdr_unordered_map.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_unordered_map::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_unordered_map_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_unordered_map_pass.cpp new file mode 100644 index 000000000..cc30df478 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_unordered_map_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_UNORDERED_MAP +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_UNORDERED_MAP should be defined. +// See file boost_no_cxx11_hdr_unordered_map.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_UNORDERED_MAP +#include "boost_no_cxx11_hdr_unordered_map.ipp" +#else +namespace boost_no_cxx11_hdr_unordered_map = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_unordered_map::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_unordered_set_fail.cpp b/src/boost/libs/config/test/no_cxx11_hdr_unordered_set_fail.cpp new file mode 100644 index 000000000..df9e75d9e --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_unordered_set_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_UNORDERED_SET +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_UNORDERED_SET should not be defined. +// See file boost_no_cxx11_hdr_unordered_set.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_UNORDERED_SET +#include "boost_no_cxx11_hdr_unordered_set.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_unordered_set::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_hdr_unordered_set_pass.cpp b/src/boost/libs/config/test/no_cxx11_hdr_unordered_set_pass.cpp new file mode 100644 index 000000000..97c5632a6 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_hdr_unordered_set_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri May 15 11:57:42 2009 +// 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_HDR_UNORDERED_SET +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_UNORDERED_SET should be defined. +// See file boost_no_cxx11_hdr_unordered_set.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_UNORDERED_SET +#include "boost_no_cxx11_hdr_unordered_set.ipp" +#else +namespace boost_no_cxx11_hdr_unordered_set = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_unordered_set::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_inline_namespaces_fail.cpp b/src/boost/libs/config/test/no_cxx11_inline_namespaces_fail.cpp new file mode 100644 index 000000000..09ca60c8f --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_inline_namespaces_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 28 18:36:48 2013 +// 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_INLINE_NAMESPACES +// This file should not compile, if it does then +// BOOST_NO_CXX11_INLINE_NAMESPACES should not be defined. +// See file boost_no_cxx11_inline_namespaces.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_INLINE_NAMESPACES +#include "boost_no_cxx11_inline_namespaces.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_inline_namespaces::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_inline_namespaces_pass.cpp b/src/boost/libs/config/test/no_cxx11_inline_namespaces_pass.cpp new file mode 100644 index 000000000..4988af97b --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_inline_namespaces_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 28 18:36:48 2013 +// 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_INLINE_NAMESPACES +// This file should compile, if it does not then +// BOOST_NO_CXX11_INLINE_NAMESPACES should be defined. +// See file boost_no_cxx11_inline_namespaces.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_INLINE_NAMESPACES +#include "boost_no_cxx11_inline_namespaces.ipp" +#else +namespace boost_no_cxx11_inline_namespaces = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_inline_namespaces::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_non_pub_def_fun_fail.cpp b/src/boost/libs/config/test/no_cxx11_non_pub_def_fun_fail.cpp new file mode 100644 index 000000000..59f32b6cf --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_non_pub_def_fun_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Aug 22 18:33:20 2014 +// 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_NON_PUBLIC_DEFAULTED_FUNCTIONS +// This file should not compile, if it does then +// BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS should not be defined. +// See file boost_no_cxx11_non_pub_def_fun.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS +#include "boost_no_cxx11_non_pub_def_fun.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_non_public_defaulted_functions::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_non_pub_def_fun_pass.cpp b/src/boost/libs/config/test/no_cxx11_non_pub_def_fun_pass.cpp new file mode 100644 index 000000000..2e00a6a73 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_non_pub_def_fun_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Aug 22 18:33:20 2014 +// 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_NON_PUBLIC_DEFAULTED_FUNCTIONS +// This file should compile, if it does not then +// BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS should be defined. +// See file boost_no_cxx11_non_pub_def_fun.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS +#include "boost_no_cxx11_non_pub_def_fun.ipp" +#else +namespace boost_no_cxx11_non_public_defaulted_functions = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_non_public_defaulted_functions::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_numeric_limits_fail.cpp b/src/boost/libs/config/test/no_cxx11_numeric_limits_fail.cpp new file mode 100644 index 000000000..607171930 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_numeric_limits_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Sep 25 16:53:41 2010 +// 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: generate.cpp 49281 2008-10-11 15:40:44Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_CXX11_NUMERIC_LIMITS +// This file should not compile, if it does then +// BOOST_NO_CXX11_NUMERIC_LIMITS should not be defined. +// See file boost_no_limits_lowest.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_NUMERIC_LIMITS +#include "boost_no_cxx11_numeric_limits.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_numeric_limits::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_numeric_limits_pass.cpp b/src/boost/libs/config/test/no_cxx11_numeric_limits_pass.cpp new file mode 100644 index 000000000..eb2c6cd41 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_numeric_limits_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Sep 25 16:53:41 2010 +// 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: generate.cpp 49281 2008-10-11 15:40:44Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_CXX11_NUMERIC_LIMITS +// This file should compile, if it does not then +// BOOST_NO_CXX11_NUMERIC_LIMITS should be defined. +// See file boost_no_limits_lowest.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_NUMERIC_LIMITS +#include "boost_no_cxx11_numeric_limits.ipp" +#else +namespace boost_no_cxx11_numeric_limits = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_numeric_limits::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_pointer_traits_fail.cpp b/src/boost/libs/config/test/no_cxx11_pointer_traits_fail.cpp new file mode 100644 index 000000000..59b881bb3 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_pointer_traits_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Wed May 17 01:29:39 2017 +// 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_POINTER_TRAITS +// This file should not compile, if it does then +// BOOST_NO_CXX11_POINTER_TRAITS should not be defined. +// See file boost_no_cxx11_pointer_traits.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_POINTER_TRAITS +#include "boost_no_cxx11_pointer_traits.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_pointer_traits::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_pointer_traits_pass.cpp b/src/boost/libs/config/test/no_cxx11_pointer_traits_pass.cpp new file mode 100644 index 000000000..071041b49 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_pointer_traits_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Wed May 17 01:29:39 2017 +// 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_POINTER_TRAITS +// This file should compile, if it does not then +// BOOST_NO_CXX11_POINTER_TRAITS should be defined. +// See file boost_no_cxx11_pointer_traits.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_POINTER_TRAITS +#include "boost_no_cxx11_pointer_traits.ipp" +#else +namespace boost_no_cxx11_pointer_traits = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_pointer_traits::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_ref_qualifiers_fail.cpp b/src/boost/libs/config/test/no_cxx11_ref_qualifiers_fail.cpp new file mode 100644 index 000000000..413ca8e9b --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_ref_qualifiers_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Wed May 28 17:13:04 2014 +// 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_REF_QUALIFIERS +// This file should not compile, if it does then +// BOOST_NO_CXX11_REF_QUALIFIERS should not be defined. +// See file boost_no_cxx11_ref_qualifiers.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_REF_QUALIFIERS +#include "boost_no_cxx11_ref_qualifiers.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_ref_qualifiers::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_ref_qualifiers_pass.cpp b/src/boost/libs/config/test/no_cxx11_ref_qualifiers_pass.cpp new file mode 100644 index 000000000..99216f60e --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_ref_qualifiers_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Wed May 28 17:13:04 2014 +// 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_REF_QUALIFIERS +// This file should compile, if it does not then +// BOOST_NO_CXX11_REF_QUALIFIERS should be defined. +// See file boost_no_cxx11_ref_qualifiers.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_REF_QUALIFIERS +#include "boost_no_cxx11_ref_qualifiers.ipp" +#else +namespace boost_no_cxx11_ref_qualifiers = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_ref_qualifiers::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_sfinae_expr_fail.cpp b/src/boost/libs/config/test/no_cxx11_sfinae_expr_fail.cpp new file mode 100644 index 000000000..1613f16e2 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_sfinae_expr_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Feb 4 00:49:07 2017 +// 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_SFINAE_EXPR +// This file should not compile, if it does then +// BOOST_NO_CXX11_SFINAE_EXPR should not be defined. +// See file boost_no_cxx11_sfinae_expr.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_SFINAE_EXPR +#include "boost_no_cxx11_sfinae_expr.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_sfinae_expr::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_sfinae_expr_pass.cpp b/src/boost/libs/config/test/no_cxx11_sfinae_expr_pass.cpp new file mode 100644 index 000000000..15d988b09 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_sfinae_expr_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Feb 4 00:49:07 2017 +// 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_SFINAE_EXPR +// This file should compile, if it does not then +// BOOST_NO_CXX11_SFINAE_EXPR should be defined. +// See file boost_no_cxx11_sfinae_expr.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_SFINAE_EXPR +#include "boost_no_cxx11_sfinae_expr.ipp" +#else +namespace boost_no_cxx11_sfinae_expr = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_sfinae_expr::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_smart_ptr_fail.cpp b/src/boost/libs/config/test/no_cxx11_smart_ptr_fail.cpp new file mode 100644 index 000000000..41908940a --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_smart_ptr_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 22 11:15:43 2012 +// 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: generate.cpp 72327 2011-06-01 14:51:03Z eric_niebler $ +// + + +// Test file for macro BOOST_NO_CXX11_SMART_PTR +// This file should not compile, if it does then +// BOOST_NO_CXX11_SMART_PTR should not be defined. +// See file boost_no_cxx11_smart_ptr.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_SMART_PTR +#include "boost_no_cxx11_smart_ptr.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_smart_ptr::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_smart_ptr_pass.cpp b/src/boost/libs/config/test/no_cxx11_smart_ptr_pass.cpp new file mode 100644 index 000000000..334cae64c --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_smart_ptr_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 22 11:15:43 2012 +// 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: generate.cpp 72327 2011-06-01 14:51:03Z eric_niebler $ +// + + +// Test file for macro BOOST_NO_CXX11_SMART_PTR +// This file should compile, if it does not then +// BOOST_NO_CXX11_SMART_PTR should be defined. +// See file boost_no_cxx11_smart_ptr.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_SMART_PTR +#include "boost_no_cxx11_smart_ptr.ipp" +#else +namespace boost_no_cxx11_smart_ptr = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_smart_ptr::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_std_align_fail.cpp b/src/boost/libs/config/test/no_cxx11_std_align_fail.cpp new file mode 100644 index 000000000..7a87dea2f --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_std_align_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Tue Feb 11 16:14:42 2014 +// 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_STD_ALIGN +// This file should not compile, if it does then +// BOOST_NO_CXX11_STD_ALIGN should not be defined. +// See file boost_no_cxx11_std_align.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_STD_ALIGN +#include "boost_no_cxx11_std_align.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_std_align::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_std_align_pass.cpp b/src/boost/libs/config/test/no_cxx11_std_align_pass.cpp new file mode 100644 index 000000000..4ee4ba65b --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_std_align_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Tue Feb 11 16:14:42 2014 +// 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_STD_ALIGN +// This file should compile, if it does not then +// BOOST_NO_CXX11_STD_ALIGN should be defined. +// See file boost_no_cxx11_std_align.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_STD_ALIGN +#include "boost_no_cxx11_std_align.ipp" +#else +namespace boost_no_cxx11_std_align = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_std_align::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_thread_local_fail.cpp b/src/boost/libs/config/test/no_cxx11_thread_local_fail.cpp new file mode 100644 index 000000000..957c622ee --- /dev/null +++ b/src/boost/libs/config/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 <boost/config.hpp> +#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/src/boost/libs/config/test/no_cxx11_thread_local_pass.cpp b/src/boost/libs/config/test/no_cxx11_thread_local_pass.cpp new file mode 100644 index 000000000..3e54ca2b5 --- /dev/null +++ b/src/boost/libs/config/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 <boost/config.hpp> +#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/src/boost/libs/config/test/no_cxx11_trailing_result_types_fail.cpp b/src/boost/libs/config/test/no_cxx11_trailing_result_types_fail.cpp new file mode 100644 index 000000000..edabc2def --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_trailing_result_types_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 28 18:36:48 2013 +// 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_TRAILING_RESULT_TYPES +// This file should not compile, if it does then +// BOOST_NO_CXX11_TRAILING_RESULT_TYPES should not be defined. +// See file boost_no_cxx11_trailing_result_types.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_TRAILING_RESULT_TYPES +#include "boost_no_cxx11_trailing_result_types.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_trailing_result_types::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_trailing_result_types_pass.cpp b/src/boost/libs/config/test/no_cxx11_trailing_result_types_pass.cpp new file mode 100644 index 000000000..6cc54cf0a --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_trailing_result_types_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 28 18:36:48 2013 +// 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_TRAILING_RESULT_TYPES +// This file should compile, if it does not then +// BOOST_NO_CXX11_TRAILING_RESULT_TYPES should be defined. +// See file boost_no_cxx11_trailing_result_types.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_TRAILING_RESULT_TYPES +#include "boost_no_cxx11_trailing_result_types.ipp" +#else +namespace boost_no_cxx11_trailing_result_types = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_trailing_result_types::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_unrestricted_union_fail.cpp b/src/boost/libs/config/test/no_cxx11_unrestricted_union_fail.cpp new file mode 100644 index 000000000..04321c4f4 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_unrestricted_union_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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_UNRESTRICTED_UNION +// This file should not compile, if it does then +// BOOST_NO_CXX11_UNRESTRICTED_UNION should not be defined. +// See file boost_no_cxx11_unrestricted_union.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_UNRESTRICTED_UNION +#include "boost_no_cxx11_unrestricted_union.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_unrestricted_union::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_unrestricted_union_pass.cpp b/src/boost/libs/config/test/no_cxx11_unrestricted_union_pass.cpp new file mode 100644 index 000000000..b4e7b5b79 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_unrestricted_union_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Dec 09 09:47:37 2019 +// 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_UNRESTRICTED_UNION +// This file should compile, if it does not then +// BOOST_NO_CXX11_UNRESTRICTED_UNION should be defined. +// See file boost_no_cxx11_unrestricted_union.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_UNRESTRICTED_UNION +#include "boost_no_cxx11_unrestricted_union.ipp" +#else +namespace boost_no_cxx11_unrestricted_union = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_unrestricted_union::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_user_lit_fail.cpp b/src/boost/libs/config/test/no_cxx11_user_lit_fail.cpp new file mode 100644 index 000000000..266645569 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_user_lit_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 28 18:36:48 2013 +// 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: generate.cpp 72327 2011-06-01 14:51:03Z eric_niebler $ +// + + +// Test file for macro BOOST_NO_CXX11_USER_DEFINED_LITERALS +// This file should not compile, if it does then +// BOOST_NO_CXX11_USER_DEFINED_LITERALS should not be defined. +// See file boost_no_cxx11_user_lit.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_USER_DEFINED_LITERALS +#include "boost_no_cxx11_user_lit.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_user_defined_literals::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx11_user_lit_pass.cpp b/src/boost/libs/config/test/no_cxx11_user_lit_pass.cpp new file mode 100644 index 000000000..d1408f5ea --- /dev/null +++ b/src/boost/libs/config/test/no_cxx11_user_lit_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 28 18:36:48 2013 +// 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: generate.cpp 72327 2011-06-01 14:51:03Z eric_niebler $ +// + + +// Test file for macro BOOST_NO_CXX11_USER_DEFINED_LITERALS +// This file should compile, if it does not then +// BOOST_NO_CXX11_USER_DEFINED_LITERALS should be defined. +// See file boost_no_cxx11_user_lit.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_USER_DEFINED_LITERALS +#include "boost_no_cxx11_user_lit.ipp" +#else +namespace boost_no_cxx11_user_defined_literals = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_user_defined_literals::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_binary_literals_fail.cpp b/src/boost/libs/config/test/no_cxx14_binary_literals_fail.cpp new file mode 100644 index 000000000..759e87197 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_binary_literals_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:16 2014 +// 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_CXX14_BINARY_LITERALS +// This file should not compile, if it does then +// BOOST_NO_CXX14_BINARY_LITERALS should not be defined. +// See file boost_no_cxx14_binary_literals.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX14_BINARY_LITERALS +#include "boost_no_cxx14_binary_literals.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_binary_literals::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_binary_literals_pass.cpp b/src/boost/libs/config/test/no_cxx14_binary_literals_pass.cpp new file mode 100644 index 000000000..94debc27f --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_binary_literals_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:16 2014 +// 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_CXX14_BINARY_LITERALS +// This file should compile, if it does not then +// BOOST_NO_CXX14_BINARY_LITERALS should be defined. +// See file boost_no_cxx14_binary_literals.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX14_BINARY_LITERALS +#include "boost_no_cxx14_binary_literals.ipp" +#else +namespace boost_no_cxx14_binary_literals = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_binary_literals::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_constexpr_fail.cpp b/src/boost/libs/config/test/no_cxx14_constexpr_fail.cpp new file mode 100644 index 000000000..0028023ba --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_constexpr_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:16 2014 +// 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_CXX14_CONSTEXPR +// This file should not compile, if it does then +// BOOST_NO_CXX14_CONSTEXPR should not be defined. +// See file boost_no_cxx14_constexpr.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX14_CONSTEXPR +#include "boost_no_cxx14_constexpr.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_constexpr::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_constexpr_pass.cpp b/src/boost/libs/config/test/no_cxx14_constexpr_pass.cpp new file mode 100644 index 000000000..8272f9189 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_constexpr_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:16 2014 +// 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_CXX14_CONSTEXPR +// This file should compile, if it does not then +// BOOST_NO_CXX14_CONSTEXPR should be defined. +// See file boost_no_cxx14_constexpr.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX14_CONSTEXPR +#include "boost_no_cxx14_constexpr.ipp" +#else +namespace boost_no_cxx14_constexpr = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_constexpr::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_decltype_auto_fail.cpp b/src/boost/libs/config/test/no_cxx14_decltype_auto_fail.cpp new file mode 100644 index 000000000..78639cf56 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_decltype_auto_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:16 2014 +// 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_CXX14_DECLTYPE_AUTO +// This file should not compile, if it does then +// BOOST_NO_CXX14_DECLTYPE_AUTO should not be defined. +// See file boost_no_cxx14_decltype_auto.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX14_DECLTYPE_AUTO +#include "boost_no_cxx14_decltype_auto.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_decltype_auto::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_decltype_auto_pass.cpp b/src/boost/libs/config/test/no_cxx14_decltype_auto_pass.cpp new file mode 100644 index 000000000..e36cb64d2 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_decltype_auto_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:16 2014 +// 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_CXX14_DECLTYPE_AUTO +// This file should compile, if it does not then +// BOOST_NO_CXX14_DECLTYPE_AUTO should be defined. +// See file boost_no_cxx14_decltype_auto.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX14_DECLTYPE_AUTO +#include "boost_no_cxx14_decltype_auto.ipp" +#else +namespace boost_no_cxx14_decltype_auto = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_decltype_auto::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_digit_separator_fail.cpp b/src/boost/libs/config/test/no_cxx14_digit_separator_fail.cpp new file mode 100644 index 000000000..59a300183 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_digit_separator_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:16 2014 +// 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_CXX14_DIGIT_SEPARATORS +// This file should not compile, if it does then +// BOOST_NO_CXX14_DIGIT_SEPARATORS should not be defined. +// See file boost_no_cxx14_digit_separator.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX14_DIGIT_SEPARATORS +#include "boost_no_cxx14_digit_separator.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_digit_separators::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_digit_separator_pass.cpp b/src/boost/libs/config/test/no_cxx14_digit_separator_pass.cpp new file mode 100644 index 000000000..a8814fe07 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_digit_separator_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:16 2014 +// 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_CXX14_DIGIT_SEPARATORS +// This file should compile, if it does not then +// BOOST_NO_CXX14_DIGIT_SEPARATORS should be defined. +// See file boost_no_cxx14_digit_separator.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX14_DIGIT_SEPARATORS +#include "boost_no_cxx14_digit_separator.ipp" +#else +namespace boost_no_cxx14_digit_separators = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_digit_separators::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_generic_lambda_fail.cpp b/src/boost/libs/config/test/no_cxx14_generic_lambda_fail.cpp new file mode 100644 index 000000000..928f76532 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_generic_lambda_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:16 2014 +// 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_CXX14_GENERIC_LAMBDAS +// This file should not compile, if it does then +// BOOST_NO_CXX14_GENERIC_LAMBDAS should not be defined. +// See file boost_no_cxx14_generic_lambda.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX14_GENERIC_LAMBDAS +#include "boost_no_cxx14_generic_lambda.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_generic_lambdas::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_generic_lambda_pass.cpp b/src/boost/libs/config/test/no_cxx14_generic_lambda_pass.cpp new file mode 100644 index 000000000..bef36ac6e --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_generic_lambda_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:16 2014 +// 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_CXX14_GENERIC_LAMBDAS +// This file should compile, if it does not then +// BOOST_NO_CXX14_GENERIC_LAMBDAS should be defined. +// See file boost_no_cxx14_generic_lambda.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX14_GENERIC_LAMBDAS +#include "boost_no_cxx14_generic_lambda.ipp" +#else +namespace boost_no_cxx14_generic_lambdas = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_generic_lambdas::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_hdr_shared_mutex_fail.cpp b/src/boost/libs/config/test/no_cxx14_hdr_shared_mutex_fail.cpp new file mode 100644 index 000000000..11c93bbe1 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_hdr_shared_mutex_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Jun 26 21:47:59 2015 +// 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_CXX14_HDR_SHARED_MUTEX +// This file should not compile, if it does then +// BOOST_NO_CXX14_HDR_SHARED_MUTEX should not be defined. +// See file boost_no_cxx14_hdr_shared_mutex.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX14_HDR_SHARED_MUTEX +#include "boost_no_cxx14_hdr_shared_mutex.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_hdr_shared_mutex::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_hdr_shared_mutex_pass.cpp b/src/boost/libs/config/test/no_cxx14_hdr_shared_mutex_pass.cpp new file mode 100644 index 000000000..20c5f7bbc --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_hdr_shared_mutex_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Jun 26 21:47:59 2015 +// 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_CXX14_HDR_SHARED_MUTEX +// This file should compile, if it does not then +// BOOST_NO_CXX14_HDR_SHARED_MUTEX should be defined. +// See file boost_no_cxx14_hdr_shared_mutex.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX14_HDR_SHARED_MUTEX +#include "boost_no_cxx14_hdr_shared_mutex.ipp" +#else +namespace boost_no_cxx14_hdr_shared_mutex = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_hdr_shared_mutex::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_lambda_capture_fail.cpp b/src/boost/libs/config/test/no_cxx14_lambda_capture_fail.cpp new file mode 100644 index 000000000..515cc08e9 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_lambda_capture_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:17 2014 +// 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_CXX14_INITIALIZED_LAMBDA_CAPTURES +// This file should not compile, if it does then +// BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES should not be defined. +// See file boost_no_cxx14_lambda_capture.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES +#include "boost_no_cxx14_lambda_capture.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_initialized_lambda_captures::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_lambda_capture_pass.cpp b/src/boost/libs/config/test/no_cxx14_lambda_capture_pass.cpp new file mode 100644 index 000000000..d5c09c5f0 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_lambda_capture_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:17 2014 +// 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_CXX14_INITIALIZED_LAMBDA_CAPTURES +// This file should compile, if it does not then +// BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES should be defined. +// See file boost_no_cxx14_lambda_capture.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES +#include "boost_no_cxx14_lambda_capture.ipp" +#else +namespace boost_no_cxx14_initialized_lambda_captures = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_initialized_lambda_captures::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_member_init_fail.cpp b/src/boost/libs/config/test/no_cxx14_member_init_fail.cpp new file mode 100644 index 000000000..ba3ae4e26 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_member_init_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:17 2014 +// 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_CXX14_AGGREGATE_NSDMI +// This file should not compile, if it does then +// BOOST_NO_CXX14_AGGREGATE_NSDMI should not be defined. +// See file boost_no_cxx14_member_init.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX14_AGGREGATE_NSDMI +#include "boost_no_cxx14_member_init.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_aggregate_nsdmi::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_member_init_pass.cpp b/src/boost/libs/config/test/no_cxx14_member_init_pass.cpp new file mode 100644 index 000000000..9dd8e8977 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_member_init_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:17 2014 +// 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_CXX14_AGGREGATE_NSDMI +// This file should compile, if it does not then +// BOOST_NO_CXX14_AGGREGATE_NSDMI should be defined. +// See file boost_no_cxx14_member_init.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX14_AGGREGATE_NSDMI +#include "boost_no_cxx14_member_init.ipp" +#else +namespace boost_no_cxx14_aggregate_nsdmi = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_aggregate_nsdmi::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_return_type_ded_fail.cpp b/src/boost/libs/config/test/no_cxx14_return_type_ded_fail.cpp new file mode 100644 index 000000000..a969c8405 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_return_type_ded_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:17 2014 +// 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_CXX14_RETURN_TYPE_DEDUCTION +// This file should not compile, if it does then +// BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION should not be defined. +// See file boost_no_cxx14_return_type_ded.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION +#include "boost_no_cxx14_return_type_ded.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_return_type_deduction::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_return_type_ded_pass.cpp b/src/boost/libs/config/test/no_cxx14_return_type_ded_pass.cpp new file mode 100644 index 000000000..f3e35f375 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_return_type_ded_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:17 2014 +// 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_CXX14_RETURN_TYPE_DEDUCTION +// This file should compile, if it does not then +// BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION should be defined. +// See file boost_no_cxx14_return_type_ded.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION +#include "boost_no_cxx14_return_type_ded.ipp" +#else +namespace boost_no_cxx14_return_type_deduction = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_return_type_deduction::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_std_exchange_fail.cpp b/src/boost/libs/config/test/no_cxx14_std_exchange_fail.cpp new file mode 100644 index 000000000..c71003774 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_std_exchange_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Oct 14 12:13:46 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_CXX17_STD_APPLY +// This file should not compile, if it does then +// BOOST_NO_CXX17_STD_APPLY should not be defined. +// See file boost_no_cxx17_std_apply.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX14_STD_EXCHANGE +#include "boost_no_cxx14_std_exchange.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_std_exchange::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_std_exchange_pass.cpp b/src/boost/libs/config/test/no_cxx14_std_exchange_pass.cpp new file mode 100644 index 000000000..edac2fbf5 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_std_exchange_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Oct 14 12:13:46 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_CXX17_STD_APPLY +// This file should compile, if it does not then +// BOOST_NO_CXX!/_STD_APPLY should be defined. +// See file boost_no_cxx17_std_apply.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX14_STD_EXCHANGE +#include "boost_no_cxx14_std_exchange.ipp" +#else +namespace boost_no_cxx14_std_exchange = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_std_exchange::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_var_templ_fail.cpp b/src/boost/libs/config/test/no_cxx14_var_templ_fail.cpp new file mode 100644 index 000000000..438ccd7e6 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_var_templ_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:17 2014 +// 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_CXX14_VARIABLE_TEMPLATES +// This file should not compile, if it does then +// BOOST_NO_CXX14_VARIABLE_TEMPLATES should not be defined. +// See file boost_no_cxx14_var_templ.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX14_VARIABLE_TEMPLATES +#include "boost_no_cxx14_var_templ.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_variable_templates::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx14_var_templ_pass.cpp b/src/boost/libs/config/test/no_cxx14_var_templ_pass.cpp new file mode 100644 index 000000000..90c7b4c51 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx14_var_templ_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Oct 11 19:26:17 2014 +// 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_CXX14_VARIABLE_TEMPLATES +// This file should compile, if it does not then +// BOOST_NO_CXX14_VARIABLE_TEMPLATES should be defined. +// See file boost_no_cxx14_var_templ.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX14_VARIABLE_TEMPLATES +#include "boost_no_cxx14_var_templ.ipp" +#else +namespace boost_no_cxx14_variable_templates = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx14_variable_templates::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_fold_expressions_fail.cpp b/src/boost/libs/config/test/no_cxx17_fold_expressions_fail.cpp new file mode 100644 index 000000000..db22b1521 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_fold_expressions_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon May 29 10:27:35 2017 +// 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_CXX17_FOLD_EXPRESSIONS +// This file should not compile, if it does then +// BOOST_NO_CXX17_FOLD_EXPRESSIONS should not be defined. +// See file boost_no_cxx17_fold_expressions.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX17_FOLD_EXPRESSIONS +#include "boost_no_cxx17_fold_expressions.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_fold_expressions::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_fold_expressions_pass.cpp b/src/boost/libs/config/test/no_cxx17_fold_expressions_pass.cpp new file mode 100644 index 000000000..bc2feeab6 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_fold_expressions_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon May 29 10:27:35 2017 +// 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_CXX17_FOLD_EXPRESSIONS +// This file should compile, if it does not then +// BOOST_NO_CXX17_FOLD_EXPRESSIONS should be defined. +// See file boost_no_cxx17_fold_expressions.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX17_FOLD_EXPRESSIONS +#include "boost_no_cxx17_fold_expressions.ipp" +#else +namespace boost_no_cxx17_fold_expressions = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_fold_expressions::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_hdr_optional_fail.cpp b/src/boost/libs/config/test/no_cxx17_hdr_optional_fail.cpp new file mode 100644 index 000000000..74bac133f --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_hdr_optional_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Aug 4 19:11:09 2018 +// 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_CXX17_HDR_OPTIONAL +// This file should not compile, if it does then +// BOOST_NO_CXX17_HDR_OPTIONAL should not be defined. +// See file boost_no_cxx17_hdr_optional.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX17_HDR_OPTIONAL +#include "boost_no_cxx17_hdr_optional.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_hdr_optional::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_hdr_optional_pass.cpp b/src/boost/libs/config/test/no_cxx17_hdr_optional_pass.cpp new file mode 100644 index 000000000..e4a83ef69 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_hdr_optional_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sat Aug 4 19:11:08 2018 +// 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_CXX17_HDR_OPTIONAL +// This file should compile, if it does not then +// BOOST_NO_CXX17_HDR_OPTIONAL should be defined. +// See file boost_no_cxx17_hdr_optional.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX17_HDR_OPTIONAL +#include "boost_no_cxx17_hdr_optional.ipp" +#else +namespace boost_no_cxx17_hdr_optional = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_hdr_optional::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_hdr_string_view_fail.cpp b/src/boost/libs/config/test/no_cxx17_hdr_string_view_fail.cpp new file mode 100644 index 000000000..632413131 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_hdr_string_view_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Aug 16 11:20:17 2018 +// 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_CXX17_HDR_STRING_VIEW +// This file should not compile, if it does then +// BOOST_NO_CXX17_HDR_STRING_VIEW should not be defined. +// See file boost_no_cxx17_hdr_string_view.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX17_HDR_STRING_VIEW +#include "boost_no_cxx17_hdr_string_view.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_hdr_string_view::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_hdr_string_view_pass.cpp b/src/boost/libs/config/test/no_cxx17_hdr_string_view_pass.cpp new file mode 100644 index 000000000..e50648ac5 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_hdr_string_view_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Aug 16 11:20:17 2018 +// 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_CXX17_HDR_STRING_VIEW +// This file should compile, if it does not then +// BOOST_NO_CXX17_HDR_STRING_VIEW should be defined. +// See file boost_no_cxx17_hdr_string_view.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX17_HDR_STRING_VIEW +#include "boost_no_cxx17_hdr_string_view.ipp" +#else +namespace boost_no_cxx17_hdr_string_view = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_hdr_string_view::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_hdr_variant_fail.cpp b/src/boost/libs/config/test/no_cxx17_hdr_variant_fail.cpp new file mode 100644 index 000000000..46cfe2e8f --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_hdr_variant_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Apr 1 19:04:04 2019 +// 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_CXX17_HDR_VARIANT +// This file should not compile, if it does then +// BOOST_NO_CXX17_HDR_VARIANT should not be defined. +// See file boost_no_cxx17_hdr_variant.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX17_HDR_VARIANT +#include "boost_no_cxx17_hdr_variant.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_hdr_variant::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_hdr_variant_pass.cpp b/src/boost/libs/config/test/no_cxx17_hdr_variant_pass.cpp new file mode 100644 index 000000000..13f4de73f --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_hdr_variant_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Apr 1 19:04:04 2019 +// 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_CXX17_HDR_VARIANT +// This file should compile, if it does not then +// BOOST_NO_CXX17_HDR_VARIANT should be defined. +// See file boost_no_cxx17_hdr_variant.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX17_HDR_VARIANT +#include "boost_no_cxx17_hdr_variant.ipp" +#else +namespace boost_no_cxx17_hdr_variant = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_hdr_variant::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_if_constexpr_fail.cpp b/src/boost/libs/config/test/no_cxx17_if_constexpr_fail.cpp new file mode 100644 index 000000000..63137ff30 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_if_constexpr_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Tue Mar 6 00:52:32 2018 +// 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_CXX17_IF_CONSTEXPR +// This file should not compile, if it does then +// BOOST_NO_CXX17_IF_CONSTEXPR should not be defined. +// See file boost_no_cxx17_if_constexpr.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX17_IF_CONSTEXPR +#include "boost_no_cxx17_if_constexpr.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_if_constexpr::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_if_constexpr_pass.cpp b/src/boost/libs/config/test/no_cxx17_if_constexpr_pass.cpp new file mode 100644 index 000000000..bcbd808c2 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_if_constexpr_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Tue Mar 6 00:52:32 2018 +// 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_CXX17_IF_CONSTEXPR +// This file should compile, if it does not then +// BOOST_NO_CXX17_IF_CONSTEXPR should be defined. +// See file boost_no_cxx17_if_constexpr.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX17_IF_CONSTEXPR +#include "boost_no_cxx17_if_constexpr.ipp" +#else +namespace boost_no_cxx17_if_constexpr = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_if_constexpr::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_inline_variables_fail.cpp b/src/boost/libs/config/test/no_cxx17_inline_variables_fail.cpp new file mode 100644 index 000000000..58e688b3f --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_inline_variables_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon May 29 10:00:26 2017 +// 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_CXX17_INLINE_VARIABLES +// This file should not compile, if it does then +// BOOST_NO_CXX17_INLINE_VARIABLES should not be defined. +// See file boost_no_cxx17_inline_variables.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX17_INLINE_VARIABLES +#include "boost_no_cxx17_inline_variables.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_inline_variables::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_inline_variables_pass.cpp b/src/boost/libs/config/test/no_cxx17_inline_variables_pass.cpp new file mode 100644 index 000000000..ec5f69e28 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_inline_variables_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon May 29 10:00:26 2017 +// 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_CXX17_INLINE_VARIABLES +// This file should compile, if it does not then +// BOOST_NO_CXX17_INLINE_VARIABLES should be defined. +// See file boost_no_cxx17_inline_variables.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX17_INLINE_VARIABLES +#include "boost_no_cxx17_inline_variables.ipp" +#else +namespace boost_no_cxx17_inline_variables = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_inline_variables::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_iterator_traits_fail.cpp b/src/boost/libs/config/test/no_cxx17_iterator_traits_fail.cpp new file mode 100644 index 000000000..4b241c980 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_iterator_traits_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Jul 9 15:26:23 2017 +// 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_CXX17_ITERATOR_TRAITS +// This file should not compile, if it does then +// BOOST_NO_CXX17_ITERATOR_TRAITS should not be defined. +// See file boost_no_cxx17_iterator_traits.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX17_ITERATOR_TRAITS +#include "boost_no_cxx17_iterator_traits.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_iterator_traits::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_iterator_traits_pass.cpp b/src/boost/libs/config/test/no_cxx17_iterator_traits_pass.cpp new file mode 100644 index 000000000..a2a29bb63 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_iterator_traits_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Jul 9 15:26:23 2017 +// 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_CXX17_ITERATOR_TRAITS +// This file should compile, if it does not then +// BOOST_NO_CXX17_ITERATOR_TRAITS should be defined. +// See file boost_no_cxx17_iterator_traits.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX17_ITERATOR_TRAITS +#include "boost_no_cxx17_iterator_traits.ipp" +#else +namespace boost_no_cxx17_iterator_traits = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_iterator_traits::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_std_apply_fail.cpp b/src/boost/libs/config/test/no_cxx17_std_apply_fail.cpp new file mode 100644 index 000000000..e1c3d367a --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_std_apply_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Oct 14 12:13:46 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_CXX17_STD_APPLY +// This file should not compile, if it does then +// BOOST_NO_CXX17_STD_APPLY should not be defined. +// See file boost_no_cxx17_std_apply.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX17_STD_APPLY +#include "boost_no_cxx17_std_apply.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_std_apply::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_std_apply_pass.cpp b/src/boost/libs/config/test/no_cxx17_std_apply_pass.cpp new file mode 100644 index 000000000..b3aa87448 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_std_apply_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Oct 14 12:13:46 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_CXX17_STD_APPLY +// This file should compile, if it does not then +// BOOST_NO_CXX!/_STD_APPLY should be defined. +// See file boost_no_cxx17_std_apply.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX17_STD_APPLY +#include "boost_no_cxx17_std_apply.ipp" +#else +namespace boost_no_cxx17_std_apply = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_std_apply::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_std_invoke_fail.cpp b/src/boost/libs/config/test/no_cxx17_std_invoke_fail.cpp new file mode 100644 index 000000000..a34fc7a88 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_std_invoke_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Oct 14 12:13:46 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_CXX17_STD_INVOKE +// This file should not compile, if it does then +// BOOST_NO_STD_INVOKE should not be defined. +// See file boost_no_cxx17_std_invoke.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX17_STD_INVOKE +#include "boost_no_cxx17_std_invoke.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_std_invoke::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_std_invoke_pass.cpp b/src/boost/libs/config/test/no_cxx17_std_invoke_pass.cpp new file mode 100644 index 000000000..76e28e17d --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_std_invoke_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Oct 14 12:13:46 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_CXX17_STD_INVOKE +// This file should compile, if it does not then +// BOOST_NO_STD_INVOKE should be defined. +// See file boost_no_cxx17_std_invoke.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX17_STD_INVOKE +#include "boost_no_cxx17_std_invoke.ipp" +#else +namespace boost_no_cxx17_std_invoke = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_std_invoke::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_structured_bindings_fail.cpp b/src/boost/libs/config/test/no_cxx17_structured_bindings_fail.cpp new file mode 100644 index 000000000..9b7b1fb1b --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_structured_bindings_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon May 29 09:56:04 2017 +// 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_CXX17_STRUCTURED_BINDINGS +// This file should not compile, if it does then +// BOOST_NO_CXX17_STRUCTURED_BINDINGS should not be defined. +// See file boost_no_cxx17_structured_bindings.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX17_STRUCTURED_BINDINGS +#include "boost_no_cxx17_structured_bindings.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_structured_bindings::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx17_structured_bindings_pass.cpp b/src/boost/libs/config/test/no_cxx17_structured_bindings_pass.cpp new file mode 100644 index 000000000..312e0c0c2 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx17_structured_bindings_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon May 29 09:56:04 2017 +// 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_CXX17_STRUCTURED_BINDINGS +// This file should compile, if it does not then +// BOOST_NO_CXX17_STRUCTURED_BINDINGS should be defined. +// See file boost_no_cxx17_structured_bindings.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX17_STRUCTURED_BINDINGS +#include "boost_no_cxx17_structured_bindings.ipp" +#else +namespace boost_no_cxx17_structured_bindings = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx17_structured_bindings::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx98_binders_fail.cpp b/src/boost/libs/config/test/no_cxx98_binders_fail.cpp new file mode 100644 index 000000000..d17f14902 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx98_binders_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Apr 17 18:06:53 2017 +// 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_CXX98_BINDERS +// This file should not compile, if it does then +// BOOST_NO_CXX98_BINDERS should not be defined. +// See file boost_no_cxx98_binders.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX98_BINDERS +#include "boost_no_cxx98_binders.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx98_binders::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx98_binders_pass.cpp b/src/boost/libs/config/test/no_cxx98_binders_pass.cpp new file mode 100644 index 000000000..55878792d --- /dev/null +++ b/src/boost/libs/config/test/no_cxx98_binders_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Apr 17 18:06:53 2017 +// 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_CXX98_BINDERS +// This file should compile, if it does not then +// BOOST_NO_CXX98_BINDERS should be defined. +// See file boost_no_cxx98_binders.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX98_BINDERS +#include "boost_no_cxx98_binders.ipp" +#else +namespace boost_no_cxx98_binders = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx98_binders::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx98_function_base_fail.cpp b/src/boost/libs/config/test/no_cxx98_function_base_fail.cpp new file mode 100644 index 000000000..132edce8d --- /dev/null +++ b/src/boost/libs/config/test/no_cxx98_function_base_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Apr 17 18:35:53 2017 +// 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_CXX98_FUNCTION_BASE +// This file should not compile, if it does then +// BOOST_NO_CXX98_FUNCTION_BASE should not be defined. +// See file boost_no_cxx98_function_base.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX98_FUNCTION_BASE +#include "boost_no_cxx98_function_base.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx98_function_base::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx98_function_base_pass.cpp b/src/boost/libs/config/test/no_cxx98_function_base_pass.cpp new file mode 100644 index 000000000..a608e75bb --- /dev/null +++ b/src/boost/libs/config/test/no_cxx98_function_base_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Apr 17 18:35:53 2017 +// 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_CXX98_FUNCTION_BASE +// This file should compile, if it does not then +// BOOST_NO_CXX98_FUNCTION_BASE should be defined. +// See file boost_no_cxx98_function_base.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX98_FUNCTION_BASE +#include "boost_no_cxx98_function_base.ipp" +#else +namespace boost_no_cxx98_function_base = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx98_function_base::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx98_random_shuffle_fail.cpp b/src/boost/libs/config/test/no_cxx98_random_shuffle_fail.cpp new file mode 100644 index 000000000..419e22edf --- /dev/null +++ b/src/boost/libs/config/test/no_cxx98_random_shuffle_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Apr 17 17:54:47 2017 +// 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_CXX98_RANDOM_SHUFFLE +// This file should not compile, if it does then +// BOOST_NO_CXX98_RANDOM_SHUFFLE should not be defined. +// See file boost_no_cxx98_random_shuffle.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX98_RANDOM_SHUFFLE +#include "boost_no_cxx98_random_shuffle.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx98_random_shuffle::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx98_random_shuffle_pass.cpp b/src/boost/libs/config/test/no_cxx98_random_shuffle_pass.cpp new file mode 100644 index 000000000..1d3355e82 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx98_random_shuffle_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Apr 17 17:54:47 2017 +// 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_CXX98_RANDOM_SHUFFLE +// This file should compile, if it does not then +// BOOST_NO_CXX98_RANDOM_SHUFFLE should be defined. +// See file boost_no_cxx98_random_shuffle.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX98_RANDOM_SHUFFLE +#include "boost_no_cxx98_random_shuffle.ipp" +#else +namespace boost_no_cxx98_random_shuffle = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx98_random_shuffle::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx_hdr_functional_fail.cpp b/src/boost/libs/config/test/no_cxx_hdr_functional_fail.cpp new file mode 100644 index 000000000..15f885a29 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx_hdr_functional_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 22 11:15:43 2012 +// 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: generate.cpp 72327 2011-06-01 14:51:03Z eric_niebler $ +// + + +// Test file for macro BOOST_NO_CXX11_HDR_FUNCTIONAL +// This file should not compile, if it does then +// BOOST_NO_CXX11_HDR_FUNCTIONAL should not be defined. +// See file boost_no_cxx_hdr_functional.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_HDR_FUNCTIONAL +#include "boost_no_cxx_hdr_functional.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_functional::test(); +} + diff --git a/src/boost/libs/config/test/no_cxx_hdr_functional_pass.cpp b/src/boost/libs/config/test/no_cxx_hdr_functional_pass.cpp new file mode 100644 index 000000000..a5fe5c5c1 --- /dev/null +++ b/src/boost/libs/config/test/no_cxx_hdr_functional_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Apr 22 11:15:43 2012 +// 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: generate.cpp 72327 2011-06-01 14:51:03Z eric_niebler $ +// + + +// Test file for macro BOOST_NO_CXX11_HDR_FUNCTIONAL +// This file should compile, if it does not then +// BOOST_NO_CXX11_HDR_FUNCTIONAL should be defined. +// See file boost_no_cxx_hdr_functional.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_HDR_FUNCTIONAL +#include "boost_no_cxx_hdr_functional.ipp" +#else +namespace boost_no_cxx11_hdr_functional = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_hdr_functional::test(); +} + diff --git a/src/boost/libs/config/test/no_decltype_fail.cpp b/src/boost/libs/config/test/no_decltype_fail.cpp new file mode 100644 index 000000000..59be58668 --- /dev/null +++ b/src/boost/libs/config/test/no_decltype_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 07:24:54 2008 +// 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_DECLTYPE +// This file should not compile, if it does then +// BOOST_NO_CXX11_DECLTYPE should not be defined. +// See file boost_no_decltype.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_DECLTYPE +#include "boost_no_decltype.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_decltype::test(); +} + diff --git a/src/boost/libs/config/test/no_decltype_n3276_fail.cpp b/src/boost/libs/config/test/no_decltype_n3276_fail.cpp new file mode 100644 index 000000000..1e86fb6f4 --- /dev/null +++ b/src/boost/libs/config/test/no_decltype_n3276_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Wed Jun 1 21:44:56 2011 +// 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_DECLTYPE_N3276 +// This file should not compile, if it does then +// BOOST_NO_CXX11_DECLTYPE_N3276 should not be defined. +// See file boost_no_decltype_n3276.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_DECLTYPE_N3276 +#include "boost_no_decltype_n3276.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_decltype_n3276::test(); +} + diff --git a/src/boost/libs/config/test/no_decltype_n3276_pass.cpp b/src/boost/libs/config/test/no_decltype_n3276_pass.cpp new file mode 100644 index 000000000..0eb3a21f9 --- /dev/null +++ b/src/boost/libs/config/test/no_decltype_n3276_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Wed Jun 1 21:44:56 2011 +// 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_DECLTYPE_N3276 +// This file should compile, if it does not then +// BOOST_NO_CXX11_DECLTYPE_N3276 should be defined. +// See file boost_no_decltype_n3276.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_DECLTYPE_N3276 +#include "boost_no_decltype_n3276.ipp" +#else +namespace boost_no_cxx11_decltype_n3276 = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_decltype_n3276::test(); +} + diff --git a/src/boost/libs/config/test/no_decltype_pass.cpp b/src/boost/libs/config/test/no_decltype_pass.cpp new file mode 100644 index 000000000..91dfe258d --- /dev/null +++ b/src/boost/libs/config/test/no_decltype_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 07:24:54 2008 +// 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_DECLTYPE +// This file should compile, if it does not then +// BOOST_NO_CXX11_DECLTYPE should be defined. +// See file boost_no_decltype.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_DECLTYPE +#include "boost_no_decltype.ipp" +#else +namespace boost_no_cxx11_decltype = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_decltype::test(); +} + diff --git a/src/boost/libs/config/test/no_ded_typename_fail.cpp b/src/boost/libs/config/test/no_ded_typename_fail.cpp new file mode 100644 index 000000000..d82937f2a --- /dev/null +++ b/src/boost/libs/config/test/no_ded_typename_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_DEDUCED_TYPENAME +// This file should not compile, if it does then +// BOOST_DEDUCED_TYPENAME should not be defined. +// See file boost_no_ded_typename.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_DEDUCED_TYPENAME +#include "boost_no_ded_typename.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_deduced_typename::test(); +} + diff --git a/src/boost/libs/config/test/no_ded_typename_pass.cpp b/src/boost/libs/config/test/no_ded_typename_pass.cpp new file mode 100644 index 000000000..fe59f3651 --- /dev/null +++ b/src/boost/libs/config/test/no_ded_typename_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_DEDUCED_TYPENAME +// This file should compile, if it does not then +// BOOST_DEDUCED_TYPENAME should be defined. +// See file boost_no_ded_typename.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_DEDUCED_TYPENAME +#include "boost_no_ded_typename.ipp" +#else +namespace boost_deduced_typename = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_deduced_typename::test(); +} + diff --git a/src/boost/libs/config/test/no_defaulted_functions_fail.cpp b/src/boost/libs/config/test/no_defaulted_functions_fail.cpp new file mode 100644 index 000000000..58569579f --- /dev/null +++ b/src/boost/libs/config/test/no_defaulted_functions_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Jun 20 11:01:41 2008 +// 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_DEFAULTED_FUNCTIONS +// This file should not compile, if it does then +// BOOST_NO_CXX11_DEFAULTED_FUNCTIONS should not be defined. +// See file boost_no_defaulted_functions.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_DEFAULTED_FUNCTIONS +#include "boost_no_defaulted_functions.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_defaulted_functions::test(); +} + diff --git a/src/boost/libs/config/test/no_defaulted_functions_pass.cpp b/src/boost/libs/config/test/no_defaulted_functions_pass.cpp new file mode 100644 index 000000000..d35f89e0a --- /dev/null +++ b/src/boost/libs/config/test/no_defaulted_functions_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Jun 20 11:01:41 2008 +// 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_DEFAULTED_FUNCTIONS +// This file should compile, if it does not then +// BOOST_NO_CXX11_DEFAULTED_FUNCTIONS should be defined. +// See file boost_no_defaulted_functions.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_DEFAULTED_FUNCTIONS +#include "boost_no_defaulted_functions.ipp" +#else +namespace boost_no_cxx11_defaulted_functions = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_defaulted_functions::test(); +} + diff --git a/src/boost/libs/config/test/no_deleted_functions_fail.cpp b/src/boost/libs/config/test/no_deleted_functions_fail.cpp new file mode 100644 index 000000000..e08abe885 --- /dev/null +++ b/src/boost/libs/config/test/no_deleted_functions_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Jun 19 16:26:16 2008 +// 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_DELETED_FUNCTIONS +// This file should not compile, if it does then +// BOOST_NO_CXX11_DELETED_FUNCTIONS should not be defined. +// See file boost_no_deleted_functions.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_DELETED_FUNCTIONS +#include "boost_no_deleted_functions.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_deleted_functions::test(); +} + diff --git a/src/boost/libs/config/test/no_deleted_functions_pass.cpp b/src/boost/libs/config/test/no_deleted_functions_pass.cpp new file mode 100644 index 000000000..d157332a9 --- /dev/null +++ b/src/boost/libs/config/test/no_deleted_functions_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Jun 19 16:26:16 2008 +// 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_DELETED_FUNCTIONS +// This file should compile, if it does not then +// BOOST_NO_CXX11_DELETED_FUNCTIONS should be defined. +// See file boost_no_deleted_functions.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_DELETED_FUNCTIONS +#include "boost_no_deleted_functions.ipp" +#else +namespace boost_no_cxx11_deleted_functions = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_deleted_functions::test(); +} + diff --git a/src/boost/libs/config/test/no_dep_nested_class_fail.cpp b/src/boost/libs/config/test/no_dep_nested_class_fail.cpp new file mode 100644 index 000000000..ca98977c8 --- /dev/null +++ b/src/boost/libs/config/test/no_dep_nested_class_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_DEPENDENT_NESTED_DERIVATIONS +// This file should not compile, if it does then +// BOOST_NO_DEPENDENT_NESTED_DERIVATIONS should not be defined. +// See file boost_no_dep_nested_class.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_DEPENDENT_NESTED_DERIVATIONS +#include "boost_no_dep_nested_class.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_dependent_nested_derivations::test(); +} + diff --git a/src/boost/libs/config/test/no_dep_nested_class_pass.cpp b/src/boost/libs/config/test/no_dep_nested_class_pass.cpp new file mode 100644 index 000000000..1eaa6e616 --- /dev/null +++ b/src/boost/libs/config/test/no_dep_nested_class_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_DEPENDENT_NESTED_DERIVATIONS +// This file should compile, if it does not then +// BOOST_NO_DEPENDENT_NESTED_DERIVATIONS should be defined. +// See file boost_no_dep_nested_class.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_DEPENDENT_NESTED_DERIVATIONS +#include "boost_no_dep_nested_class.ipp" +#else +namespace boost_no_dependent_nested_derivations = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_dependent_nested_derivations::test(); +} + diff --git a/src/boost/libs/config/test/no_dep_val_param_fail.cpp b/src/boost/libs/config/test/no_dep_val_param_fail.cpp new file mode 100644 index 000000000..1c0a96f45 --- /dev/null +++ b/src/boost/libs/config/test/no_dep_val_param_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS +// This file should not compile, if it does then +// BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS should not be defined. +// See file boost_no_dep_val_param.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS +#include "boost_no_dep_val_param.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_dependent_types_in_template_value_parameters::test(); +} + diff --git a/src/boost/libs/config/test/no_dep_val_param_pass.cpp b/src/boost/libs/config/test/no_dep_val_param_pass.cpp new file mode 100644 index 000000000..57f6bdf21 --- /dev/null +++ b/src/boost/libs/config/test/no_dep_val_param_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS +// This file should compile, if it does not then +// BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS should be defined. +// See file boost_no_dep_val_param.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS +#include "boost_no_dep_val_param.ipp" +#else +namespace boost_no_dependent_types_in_template_value_parameters = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_dependent_types_in_template_value_parameters::test(); +} + diff --git a/src/boost/libs/config/test/no_excep_std_fail.cpp b/src/boost/libs/config/test/no_excep_std_fail.cpp new file mode 100644 index 000000000..0c557ac45 --- /dev/null +++ b/src/boost/libs/config/test/no_excep_std_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_EXCEPTION_STD_NAMESPACE +// This file should not compile, if it does then +// BOOST_NO_EXCEPTION_STD_NAMESPACE should not be defined. +// See file boost_no_excep_std.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_EXCEPTION_STD_NAMESPACE +#include "boost_no_excep_std.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_exception_std_namespace::test(); +} + diff --git a/src/boost/libs/config/test/no_excep_std_pass.cpp b/src/boost/libs/config/test/no_excep_std_pass.cpp new file mode 100644 index 000000000..9b5f9ca1c --- /dev/null +++ b/src/boost/libs/config/test/no_excep_std_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_EXCEPTION_STD_NAMESPACE +// This file should compile, if it does not then +// BOOST_NO_EXCEPTION_STD_NAMESPACE should be defined. +// See file boost_no_excep_std.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_EXCEPTION_STD_NAMESPACE +#include "boost_no_excep_std.ipp" +#else +namespace boost_no_exception_std_namespace = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_exception_std_namespace::test(); +} + diff --git a/src/boost/libs/config/test/no_exceptions_fail.cpp b/src/boost/libs/config/test/no_exceptions_fail.cpp new file mode 100644 index 000000000..e1f3f4902 --- /dev/null +++ b/src/boost/libs/config/test/no_exceptions_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_EXCEPTIONS +// This file should not compile, if it does then +// BOOST_NO_EXCEPTIONS should not be defined. +// See file boost_no_exceptions.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_EXCEPTIONS +#include "boost_no_exceptions.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_exceptions::test(); +} + diff --git a/src/boost/libs/config/test/no_exceptions_pass.cpp b/src/boost/libs/config/test/no_exceptions_pass.cpp new file mode 100644 index 000000000..f2bf58214 --- /dev/null +++ b/src/boost/libs/config/test/no_exceptions_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_EXCEPTIONS +// This file should compile, if it does not then +// BOOST_NO_EXCEPTIONS should be defined. +// See file boost_no_exceptions.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_EXCEPTIONS +#include "boost_no_exceptions.ipp" +#else +namespace boost_no_exceptions = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_exceptions::test(); +} + diff --git a/src/boost/libs/config/test/no_exp_func_tem_arg_fail.cpp b/src/boost/libs/config/test/no_exp_func_tem_arg_fail.cpp new file mode 100644 index 000000000..e491c4dba --- /dev/null +++ b/src/boost/libs/config/test/no_exp_func_tem_arg_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS +// This file should not compile, if it does then +// BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS should not be defined. +// See file boost_no_exp_func_tem_arg.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS +#include "boost_no_exp_func_tem_arg.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_explicit_function_template_arguments::test(); +} + diff --git a/src/boost/libs/config/test/no_exp_func_tem_arg_pass.cpp b/src/boost/libs/config/test/no_exp_func_tem_arg_pass.cpp new file mode 100644 index 000000000..6e2377788 --- /dev/null +++ b/src/boost/libs/config/test/no_exp_func_tem_arg_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS +// This file should compile, if it does not then +// BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS should be defined. +// See file boost_no_exp_func_tem_arg.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS +#include "boost_no_exp_func_tem_arg.ipp" +#else +namespace boost_no_explicit_function_template_arguments = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_explicit_function_template_arguments::test(); +} + diff --git a/src/boost/libs/config/test/no_explicit_cvt_ops_fail.cpp b/src/boost/libs/config/test/no_explicit_cvt_ops_fail.cpp new file mode 100644 index 000000000..ba150874e --- /dev/null +++ b/src/boost/libs/config/test/no_explicit_cvt_ops_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Jun 20 11:51:15 2008 +// 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_EXPLICIT_CONVERSION_OPERATORS +// This file should not compile, if it does then +// BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS should not be defined. +// See file boost_no_explicit_cvt_ops.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS +#include "boost_no_explicit_cvt_ops.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_explicit_conversion_operators::test(); +} + diff --git a/src/boost/libs/config/test/no_explicit_cvt_ops_pass.cpp b/src/boost/libs/config/test/no_explicit_cvt_ops_pass.cpp new file mode 100644 index 000000000..2e3c42069 --- /dev/null +++ b/src/boost/libs/config/test/no_explicit_cvt_ops_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Fri Jun 20 11:51:15 2008 +// 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_EXPLICIT_CONVERSION_OPERATORS +// This file should compile, if it does not then +// BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS should be defined. +// See file boost_no_explicit_cvt_ops.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS +#include "boost_no_explicit_cvt_ops.ipp" +#else +namespace boost_no_cxx11_explicit_conversion_operators = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_explicit_conversion_operators::test(); +} + diff --git a/src/boost/libs/config/test/no_extern_template_fail.cpp b/src/boost/libs/config/test/no_extern_template_fail.cpp new file mode 100644 index 000000000..80c87744e --- /dev/null +++ b/src/boost/libs/config/test/no_extern_template_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 09:24:04 2008 +// 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_EXTERN_TEMPLATE +// This file should not compile, if it does then +// BOOST_NO_CXX11_EXTERN_TEMPLATE should not be defined. +// See file boost_no_extern_template.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_EXTERN_TEMPLATE +#include "boost_no_extern_template.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_extern_template::test(); +} + diff --git a/src/boost/libs/config/test/no_extern_template_pass.cpp b/src/boost/libs/config/test/no_extern_template_pass.cpp new file mode 100644 index 000000000..acbd037c0 --- /dev/null +++ b/src/boost/libs/config/test/no_extern_template_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 09:24:04 2008 +// 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_EXTERN_TEMPLATE +// This file should compile, if it does not then +// BOOST_NO_CXX11_EXTERN_TEMPLATE should be defined. +// See file boost_no_extern_template.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_EXTERN_TEMPLATE +#include "boost_no_extern_template.ipp" +#else +namespace boost_no_cxx11_extern_template = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_extern_template::test(); +} + diff --git a/src/boost/libs/config/test/no_fenv_h_fail.cpp b/src/boost/libs/config/test/no_fenv_h_fail.cpp new file mode 100644 index 000000000..9b2f41039 --- /dev/null +++ b/src/boost/libs/config/test/no_fenv_h_fail.cpp @@ -0,0 +1,33 @@ +// Copyright Bryce Lelbach 2010. +// 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. + +// Test file for macro BOOST_NO_FENV_H +// This file should not compile, if it does then +// BOOST_NO_FENV_H should not be defined. +// See file boost_no_fenv_h.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_FENV_H +#include "boost_no_fenv_h.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_fenv_h::test(); +} + diff --git a/src/boost/libs/config/test/no_fenv_h_pass.cpp b/src/boost/libs/config/test/no_fenv_h_pass.cpp new file mode 100644 index 000000000..573d62449 --- /dev/null +++ b/src/boost/libs/config/test/no_fenv_h_pass.cpp @@ -0,0 +1,33 @@ +// Copyright Bryce Lelbach 2010. +// 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. + +// Test file for macro BOOST_NO_FENV_H +// This file should compile, if it does not then +// BOOST_NO_FENV_H should be defined. +// See file boost_no_fenv_h.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_FENV_H +#include "boost_no_fenv_h.ipp" +#else +namespace boost_no_fenv_h = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_fenv_h::test(); +} + diff --git a/src/boost/libs/config/test/no_fixed_len_variadic_templates_fail.cpp b/src/boost/libs/config/test/no_fixed_len_variadic_templates_fail.cpp new file mode 100644 index 000000000..70988291d --- /dev/null +++ b/src/boost/libs/config/test/no_fixed_len_variadic_templates_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Aug 25 18:12:27 2014 +// 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_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS +// This file should not compile, if it does then +// BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS should not be defined. +// See file boost_no_fixed_len_variadic_templates.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS +#include "boost_no_fixed_len_variadic_templates.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_fixed_length_variadic_template_expansion_packs::test(); +} + diff --git a/src/boost/libs/config/test/no_fixed_len_variadic_templates_pass.cpp b/src/boost/libs/config/test/no_fixed_len_variadic_templates_pass.cpp new file mode 100644 index 000000000..2c52f5343 --- /dev/null +++ b/src/boost/libs/config/test/no_fixed_len_variadic_templates_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Aug 25 18:12:27 2014 +// 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_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS +// This file should compile, if it does not then +// BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS should be defined. +// See file boost_no_fixed_len_variadic_templates.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS +#include "boost_no_fixed_len_variadic_templates.ipp" +#else +namespace boost_no_cxx11_fixed_length_variadic_template_expansion_packs = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_fixed_length_variadic_template_expansion_packs::test(); +} + diff --git a/src/boost/libs/config/test/no_func_tmp_order_fail.cpp b/src/boost/libs/config/test/no_func_tmp_order_fail.cpp new file mode 100644 index 000000000..7736e908d --- /dev/null +++ b/src/boost/libs/config/test/no_func_tmp_order_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_FUNCTION_TEMPLATE_ORDERING +// This file should not compile, if it does then +// BOOST_NO_FUNCTION_TEMPLATE_ORDERING should not be defined. +// See file boost_no_func_tmp_order.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_FUNCTION_TEMPLATE_ORDERING +#include "boost_no_func_tmp_order.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_function_template_ordering::test(); +} + diff --git a/src/boost/libs/config/test/no_func_tmp_order_pass.cpp b/src/boost/libs/config/test/no_func_tmp_order_pass.cpp new file mode 100644 index 000000000..003829f54 --- /dev/null +++ b/src/boost/libs/config/test/no_func_tmp_order_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_FUNCTION_TEMPLATE_ORDERING +// This file should compile, if it does not then +// BOOST_NO_FUNCTION_TEMPLATE_ORDERING should be defined. +// See file boost_no_func_tmp_order.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_FUNCTION_TEMPLATE_ORDERING +#include "boost_no_func_tmp_order.ipp" +#else +namespace boost_no_function_template_ordering = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_function_template_ordering::test(); +} + diff --git a/src/boost/libs/config/test/no_function_template_default_args_fail.cpp b/src/boost/libs/config/test/no_function_template_default_args_fail.cpp new file mode 100644 index 000000000..e10568e88 --- /dev/null +++ b/src/boost/libs/config/test/no_function_template_default_args_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Aug 02 08:25:59 2009 +// 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_FUNCTION_TEMPLATE_DEFAULT_ARGS +// This file should not compile, if it does then +// BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS should not be defined. +// See file boost_no_function_template_default_args.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS +#include "boost_no_function_template_default_args.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_function_template_default_args::test(); +} + diff --git a/src/boost/libs/config/test/no_function_template_default_args_pass.cpp b/src/boost/libs/config/test/no_function_template_default_args_pass.cpp new file mode 100644 index 000000000..478c98629 --- /dev/null +++ b/src/boost/libs/config/test/no_function_template_default_args_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Aug 02 08:25:59 2009 +// 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_FUNCTION_TEMPLATE_DEFAULT_ARGS +// This file should compile, if it does not then +// BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS should be defined. +// See file boost_no_function_template_default_args.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS +#include "boost_no_function_template_default_args.ipp" +#else +namespace boost_no_cxx11_function_template_default_args = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_function_template_default_args::test(); +} + diff --git a/src/boost/libs/config/test/no_function_type_spec_fail.cpp b/src/boost/libs/config/test/no_function_type_spec_fail.cpp new file mode 100644 index 000000000..6ae1dba27 --- /dev/null +++ b/src/boost/libs/config/test/no_function_type_spec_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sun Dec 31 16:23:48 2006 +// 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. + +// Test file for macro BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS +// This file should not compile, if it does then +// BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS should not be defined. +// See file boost_no_function_type_spec.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS +#include "boost_no_function_type_spec.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_function_type_specializations::test(); +} + diff --git a/src/boost/libs/config/test/no_function_type_spec_pass.cpp b/src/boost/libs/config/test/no_function_type_spec_pass.cpp new file mode 100644 index 000000000..e70de0c40 --- /dev/null +++ b/src/boost/libs/config/test/no_function_type_spec_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sun Dec 31 16:23:48 2006 +// 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. + +// Test file for macro BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS +// This file should compile, if it does not then +// BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS should be defined. +// See file boost_no_function_type_spec.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS +#include "boost_no_function_type_spec.ipp" +#else +namespace boost_no_function_type_specializations = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_function_type_specializations::test(); +} + diff --git a/src/boost/libs/config/test/no_i64_limits_fail.cpp b/src/boost/libs/config/test/no_i64_limits_fail.cpp new file mode 100644 index 000000000..63f01b342 --- /dev/null +++ b/src/boost/libs/config/test/no_i64_limits_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_MS_INT64_NUMERIC_LIMITS +// This file should not compile, if it does then +// BOOST_NO_MS_INT64_NUMERIC_LIMITS should not be defined. +// See file boost_no_i64_limits.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_MS_INT64_NUMERIC_LIMITS +#include "boost_no_i64_limits.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_ms_int64_numeric_limits::test(); +} + diff --git a/src/boost/libs/config/test/no_i64_limits_pass.cpp b/src/boost/libs/config/test/no_i64_limits_pass.cpp new file mode 100644 index 000000000..58e63e710 --- /dev/null +++ b/src/boost/libs/config/test/no_i64_limits_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_MS_INT64_NUMERIC_LIMITS +// This file should compile, if it does not then +// BOOST_NO_MS_INT64_NUMERIC_LIMITS should be defined. +// See file boost_no_i64_limits.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_MS_INT64_NUMERIC_LIMITS +#include "boost_no_i64_limits.ipp" +#else +namespace boost_no_ms_int64_numeric_limits = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_ms_int64_numeric_limits::test(); +} + diff --git a/src/boost/libs/config/test/no_inline_memb_init_fail.cpp b/src/boost/libs/config/test/no_inline_memb_init_fail.cpp new file mode 100644 index 000000000..e4b9a6f6f --- /dev/null +++ b/src/boost/libs/config/test/no_inline_memb_init_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_INCLASS_MEMBER_INITIALIZATION +// This file should not compile, if it does then +// BOOST_NO_INCLASS_MEMBER_INITIALIZATION should not be defined. +// See file boost_no_inline_memb_init.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_INCLASS_MEMBER_INITIALIZATION +#include "boost_no_inline_memb_init.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_inclass_member_initialization::test(); +} + diff --git a/src/boost/libs/config/test/no_inline_memb_init_pass.cpp b/src/boost/libs/config/test/no_inline_memb_init_pass.cpp new file mode 100644 index 000000000..1b5131340 --- /dev/null +++ b/src/boost/libs/config/test/no_inline_memb_init_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_INCLASS_MEMBER_INITIALIZATION +// This file should compile, if it does not then +// BOOST_NO_INCLASS_MEMBER_INITIALIZATION should be defined. +// See file boost_no_inline_memb_init.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_INCLASS_MEMBER_INITIALIZATION +#include "boost_no_inline_memb_init.ipp" +#else +namespace boost_no_inclass_member_initialization = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_inclass_member_initialization::test(); +} + diff --git a/src/boost/libs/config/test/no_integral_int64_t_fail.cpp b/src/boost/libs/config/test/no_integral_int64_t_fail.cpp new file mode 100644 index 000000000..92280dfd6 --- /dev/null +++ b/src/boost/libs/config/test/no_integral_int64_t_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_INTEGRAL_INT64_T +// This file should not compile, if it does then +// BOOST_NO_INTEGRAL_INT64_T should not be defined. +// See file boost_no_integral_int64_t.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_INTEGRAL_INT64_T +#include "boost_no_integral_int64_t.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_integral_int64_t::test(); +} + diff --git a/src/boost/libs/config/test/no_integral_int64_t_pass.cpp b/src/boost/libs/config/test/no_integral_int64_t_pass.cpp new file mode 100644 index 000000000..012a562fe --- /dev/null +++ b/src/boost/libs/config/test/no_integral_int64_t_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_INTEGRAL_INT64_T +// This file should compile, if it does not then +// BOOST_NO_INTEGRAL_INT64_T should be defined. +// See file boost_no_integral_int64_t.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_INTEGRAL_INT64_T +#include "boost_no_integral_int64_t.ipp" +#else +namespace boost_no_integral_int64_t = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_integral_int64_t::test(); +} + diff --git a/src/boost/libs/config/test/no_iosfwd_fail.cpp b/src/boost/libs/config/test/no_iosfwd_fail.cpp new file mode 100644 index 000000000..a1c6d9188 --- /dev/null +++ b/src/boost/libs/config/test/no_iosfwd_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Aug 25 12:32:21 2007 +// 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. + +// Test file for macro BOOST_NO_IOSFWD +// This file should not compile, if it does then +// BOOST_NO_IOSFWD should not be defined. +// See file boost_no_iosfwd.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_IOSFWD +#include "boost_no_iosfwd.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_iosfwd::test(); +} + diff --git a/src/boost/libs/config/test/no_iosfwd_pass.cpp b/src/boost/libs/config/test/no_iosfwd_pass.cpp new file mode 100644 index 000000000..6e631d903 --- /dev/null +++ b/src/boost/libs/config/test/no_iosfwd_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Aug 25 12:32:21 2007 +// 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. + +// Test file for macro BOOST_NO_IOSFWD +// This file should compile, if it does not then +// BOOST_NO_IOSFWD should be defined. +// See file boost_no_iosfwd.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_IOSFWD +#include "boost_no_iosfwd.ipp" +#else +namespace boost_no_iosfwd = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_iosfwd::test(); +} + diff --git a/src/boost/libs/config/test/no_iostream_fail.cpp b/src/boost/libs/config/test/no_iostream_fail.cpp new file mode 100644 index 000000000..67a845955 --- /dev/null +++ b/src/boost/libs/config/test/no_iostream_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Aug 25 12:32:21 2007 +// 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. + +// Test file for macro BOOST_NO_IOSTREAM +// This file should not compile, if it does then +// BOOST_NO_IOSTREAM should not be defined. +// See file boost_no_iostream.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_IOSTREAM +#include "boost_no_iostream.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_iostream::test(); +} + diff --git a/src/boost/libs/config/test/no_iostream_pass.cpp b/src/boost/libs/config/test/no_iostream_pass.cpp new file mode 100644 index 000000000..ba1d0ac30 --- /dev/null +++ b/src/boost/libs/config/test/no_iostream_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Aug 25 12:32:21 2007 +// 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. + +// Test file for macro BOOST_NO_IOSTREAM +// This file should compile, if it does not then +// BOOST_NO_IOSTREAM should be defined. +// See file boost_no_iostream.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_IOSTREAM +#include "boost_no_iostream.ipp" +#else +namespace boost_no_iostream = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_iostream::test(); +} + diff --git a/src/boost/libs/config/test/no_is_abstract_fail.cpp b/src/boost/libs/config/test/no_is_abstract_fail.cpp new file mode 100644 index 000000000..1a5c57bef --- /dev/null +++ b/src/boost/libs/config/test/no_is_abstract_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_IS_ABSTRACT +// This file should not compile, if it does then +// BOOST_NO_IS_ABSTRACT should not be defined. +// See file boost_no_is_abstract.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_IS_ABSTRACT +#include "boost_no_is_abstract.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_is_abstract::test(); +} + diff --git a/src/boost/libs/config/test/no_is_abstract_pass.cpp b/src/boost/libs/config/test/no_is_abstract_pass.cpp new file mode 100644 index 000000000..a9caf6863 --- /dev/null +++ b/src/boost/libs/config/test/no_is_abstract_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_IS_ABSTRACT +// This file should compile, if it does not then +// BOOST_NO_IS_ABSTRACT should be defined. +// See file boost_no_is_abstract.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_IS_ABSTRACT +#include "boost_no_is_abstract.ipp" +#else +namespace boost_no_is_abstract = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_is_abstract::test(); +} + diff --git a/src/boost/libs/config/test/no_iter_construct_fail.cpp b/src/boost/libs/config/test/no_iter_construct_fail.cpp new file mode 100644 index 000000000..bc618648a --- /dev/null +++ b/src/boost/libs/config/test/no_iter_construct_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS +// This file should not compile, if it does then +// BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS should not be defined. +// See file boost_no_iter_construct.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS +#include "boost_no_iter_construct.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_templated_iterator_constructors::test(); +} + diff --git a/src/boost/libs/config/test/no_iter_construct_pass.cpp b/src/boost/libs/config/test/no_iter_construct_pass.cpp new file mode 100644 index 000000000..6d063bedf --- /dev/null +++ b/src/boost/libs/config/test/no_iter_construct_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS +// This file should compile, if it does not then +// BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS should be defined. +// See file boost_no_iter_construct.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS +#include "boost_no_iter_construct.ipp" +#else +namespace boost_no_templated_iterator_constructors = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_templated_iterator_constructors::test(); +} + diff --git a/src/boost/libs/config/test/no_lambdas_fail.cpp b/src/boost/libs/config/test/no_lambdas_fail.cpp new file mode 100644 index 000000000..68680bc99 --- /dev/null +++ b/src/boost/libs/config/test/no_lambdas_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 14 16:01:35 2009 +// 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_LAMBDAS +// This file should not compile, if it does then +// BOOST_NO_CXX11_LAMBDAS should not be defined. +// See file boost_no_lambdas.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_LAMBDAS +#include "boost_no_lambdas.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_lambdas::test(); +} + diff --git a/src/boost/libs/config/test/no_lambdas_pass.cpp b/src/boost/libs/config/test/no_lambdas_pass.cpp new file mode 100644 index 000000000..453a72a73 --- /dev/null +++ b/src/boost/libs/config/test/no_lambdas_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 14 16:01:35 2009 +// 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_LAMBDAS +// This file should compile, if it does not then +// BOOST_NO_CXX11_LAMBDAS should be defined. +// See file boost_no_lambdas.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_LAMBDAS +#include "boost_no_lambdas.ipp" +#else +namespace boost_no_cxx11_lambdas = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_lambdas::test(); +} + diff --git a/src/boost/libs/config/test/no_limits_const_exp_fail.cpp b/src/boost/libs/config/test/no_limits_const_exp_fail.cpp new file mode 100644 index 000000000..9f916d9bd --- /dev/null +++ b/src/boost/libs/config/test/no_limits_const_exp_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS +// This file should not compile, if it does then +// BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS should not be defined. +// See file boost_no_limits_const_exp.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS +#include "boost_no_limits_const_exp.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_limits_compile_time_constants::test(); +} + diff --git a/src/boost/libs/config/test/no_limits_const_exp_pass.cpp b/src/boost/libs/config/test/no_limits_const_exp_pass.cpp new file mode 100644 index 000000000..a280b7657 --- /dev/null +++ b/src/boost/libs/config/test/no_limits_const_exp_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS +// This file should compile, if it does not then +// BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS should be defined. +// See file boost_no_limits_const_exp.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS +#include "boost_no_limits_const_exp.ipp" +#else +namespace boost_no_limits_compile_time_constants = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_limits_compile_time_constants::test(); +} + diff --git a/src/boost/libs/config/test/no_limits_fail.cpp b/src/boost/libs/config/test/no_limits_fail.cpp new file mode 100644 index 000000000..d685397cc --- /dev/null +++ b/src/boost/libs/config/test/no_limits_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_LIMITS +// This file should not compile, if it does then +// BOOST_NO_LIMITS should not be defined. +// See file boost_no_limits.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_LIMITS +#include "boost_no_limits.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_limits::test(); +} + diff --git a/src/boost/libs/config/test/no_limits_pass.cpp b/src/boost/libs/config/test/no_limits_pass.cpp new file mode 100644 index 000000000..7d77cac32 --- /dev/null +++ b/src/boost/libs/config/test/no_limits_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_LIMITS +// This file should compile, if it does not then +// BOOST_NO_LIMITS should be defined. +// See file boost_no_limits.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_LIMITS +#include "boost_no_limits.ipp" +#else +namespace boost_no_limits = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_limits::test(); +} + diff --git a/src/boost/libs/config/test/no_ll_limits_fail.cpp b/src/boost/libs/config/test/no_ll_limits_fail.cpp new file mode 100644 index 000000000..477262c7b --- /dev/null +++ b/src/boost/libs/config/test/no_ll_limits_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_LONG_LONG_NUMERIC_LIMITS +// This file should not compile, if it does then +// BOOST_NO_LONG_LONG_NUMERIC_LIMITS should not be defined. +// See file boost_no_ll_limits.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_LONG_LONG_NUMERIC_LIMITS +#include "boost_no_ll_limits.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_long_long_numeric_limits::test(); +} + diff --git a/src/boost/libs/config/test/no_ll_limits_pass.cpp b/src/boost/libs/config/test/no_ll_limits_pass.cpp new file mode 100644 index 000000000..2c6a3860a --- /dev/null +++ b/src/boost/libs/config/test/no_ll_limits_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_LONG_LONG_NUMERIC_LIMITS +// This file should compile, if it does not then +// BOOST_NO_LONG_LONG_NUMERIC_LIMITS should be defined. +// See file boost_no_ll_limits.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_LONG_LONG_NUMERIC_LIMITS +#include "boost_no_ll_limits.ipp" +#else +namespace boost_no_long_long_numeric_limits = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_long_long_numeric_limits::test(); +} + diff --git a/src/boost/libs/config/test/no_long_long_fail.cpp b/src/boost/libs/config/test/no_long_long_fail.cpp new file mode 100644 index 000000000..2a2e724f0 --- /dev/null +++ b/src/boost/libs/config/test/no_long_long_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 07:24:54 2008 +// 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_LONG_LONG +// This file should not compile, if it does then +// BOOST_NO_LONG_LONG should not be defined. +// See file boost_no_long_long.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_LONG_LONG +#include "boost_no_long_long.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_long_long::test(); +} + diff --git a/src/boost/libs/config/test/no_long_long_pass.cpp b/src/boost/libs/config/test/no_long_long_pass.cpp new file mode 100644 index 000000000..3e00f1b39 --- /dev/null +++ b/src/boost/libs/config/test/no_long_long_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 07:24:54 2008 +// 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_LONG_LONG +// This file should compile, if it does not then +// BOOST_NO_LONG_LONG should be defined. +// See file boost_no_long_long.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_LONG_LONG +#include "boost_no_long_long.ipp" +#else +namespace boost_no_long_long = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_long_long::test(); +} + diff --git a/src/boost/libs/config/test/no_mem_func_spec_fail.cpp b/src/boost/libs/config/test/no_mem_func_spec_fail.cpp new file mode 100644 index 000000000..4216ed409 --- /dev/null +++ b/src/boost/libs/config/test/no_mem_func_spec_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS +// This file should not compile, if it does then +// BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS should not be defined. +// See file boost_no_mem_func_spec.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS +#include "boost_no_mem_func_spec.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_member_function_specializations::test(); +} + diff --git a/src/boost/libs/config/test/no_mem_func_spec_pass.cpp b/src/boost/libs/config/test/no_mem_func_spec_pass.cpp new file mode 100644 index 000000000..a26ceb0e3 --- /dev/null +++ b/src/boost/libs/config/test/no_mem_func_spec_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS +// This file should compile, if it does not then +// BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS should be defined. +// See file boost_no_mem_func_spec.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS +#include "boost_no_mem_func_spec.ipp" +#else +namespace boost_no_member_function_specializations = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_member_function_specializations::test(); +} + diff --git a/src/boost/libs/config/test/no_mem_tem_keyword_fail.cpp b/src/boost/libs/config/test/no_mem_tem_keyword_fail.cpp new file mode 100644 index 000000000..fe6b96289 --- /dev/null +++ b/src/boost/libs/config/test/no_mem_tem_keyword_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_MEMBER_TEMPLATE_KEYWORD +// This file should not compile, if it does then +// BOOST_NO_MEMBER_TEMPLATE_KEYWORD should not be defined. +// See file boost_no_mem_tem_keyword.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_MEMBER_TEMPLATE_KEYWORD +#include "boost_no_mem_tem_keyword.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_member_template_keyword::test(); +} + diff --git a/src/boost/libs/config/test/no_mem_tem_keyword_pass.cpp b/src/boost/libs/config/test/no_mem_tem_keyword_pass.cpp new file mode 100644 index 000000000..7beb15975 --- /dev/null +++ b/src/boost/libs/config/test/no_mem_tem_keyword_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_MEMBER_TEMPLATE_KEYWORD +// This file should compile, if it does not then +// BOOST_NO_MEMBER_TEMPLATE_KEYWORD should be defined. +// See file boost_no_mem_tem_keyword.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_MEMBER_TEMPLATE_KEYWORD +#include "boost_no_mem_tem_keyword.ipp" +#else +namespace boost_no_member_template_keyword = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_member_template_keyword::test(); +} + diff --git a/src/boost/libs/config/test/no_mem_tem_pnts_fail.cpp b/src/boost/libs/config/test/no_mem_tem_pnts_fail.cpp new file mode 100644 index 000000000..bca3ee0af --- /dev/null +++ b/src/boost/libs/config/test/no_mem_tem_pnts_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS +// This file should not compile, if it does then +// BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS should not be defined. +// See file boost_no_mem_tem_pnts.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS +#include "boost_no_mem_tem_pnts.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_pointer_to_member_template_parameters::test(); +} + diff --git a/src/boost/libs/config/test/no_mem_tem_pnts_pass.cpp b/src/boost/libs/config/test/no_mem_tem_pnts_pass.cpp new file mode 100644 index 000000000..bf273cc36 --- /dev/null +++ b/src/boost/libs/config/test/no_mem_tem_pnts_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS +// This file should compile, if it does not then +// BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS should be defined. +// See file boost_no_mem_tem_pnts.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS +#include "boost_no_mem_tem_pnts.ipp" +#else +namespace boost_no_pointer_to_member_template_parameters = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_pointer_to_member_template_parameters::test(); +} + diff --git a/src/boost/libs/config/test/no_mem_templ_frnds_fail.cpp b/src/boost/libs/config/test/no_mem_templ_frnds_fail.cpp new file mode 100644 index 000000000..a8602c1f1 --- /dev/null +++ b/src/boost/libs/config/test/no_mem_templ_frnds_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_MEMBER_TEMPLATE_FRIENDS +// This file should not compile, if it does then +// BOOST_NO_MEMBER_TEMPLATE_FRIENDS should not be defined. +// See file boost_no_mem_templ_frnds.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#include "boost_no_mem_templ_frnds.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_member_template_friends::test(); +} + diff --git a/src/boost/libs/config/test/no_mem_templ_frnds_pass.cpp b/src/boost/libs/config/test/no_mem_templ_frnds_pass.cpp new file mode 100644 index 000000000..a234eba7b --- /dev/null +++ b/src/boost/libs/config/test/no_mem_templ_frnds_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_MEMBER_TEMPLATE_FRIENDS +// This file should compile, if it does not then +// BOOST_NO_MEMBER_TEMPLATE_FRIENDS should be defined. +// See file boost_no_mem_templ_frnds.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#include "boost_no_mem_templ_frnds.ipp" +#else +namespace boost_no_member_template_friends = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_member_template_friends::test(); +} + diff --git a/src/boost/libs/config/test/no_mem_templates_fail.cpp b/src/boost/libs/config/test/no_mem_templates_fail.cpp new file mode 100644 index 000000000..3b6227da6 --- /dev/null +++ b/src/boost/libs/config/test/no_mem_templates_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_MEMBER_TEMPLATES +// This file should not compile, if it does then +// BOOST_NO_MEMBER_TEMPLATES should not be defined. +// See file boost_no_mem_templates.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_MEMBER_TEMPLATES +#include "boost_no_mem_templates.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_member_templates::test(); +} + diff --git a/src/boost/libs/config/test/no_mem_templates_pass.cpp b/src/boost/libs/config/test/no_mem_templates_pass.cpp new file mode 100644 index 000000000..7935f1146 --- /dev/null +++ b/src/boost/libs/config/test/no_mem_templates_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:01 2004 +// 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. + +// Test file for macro BOOST_NO_MEMBER_TEMPLATES +// This file should compile, if it does not then +// BOOST_NO_MEMBER_TEMPLATES should be defined. +// See file boost_no_mem_templates.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_MEMBER_TEMPLATES +#include "boost_no_mem_templates.ipp" +#else +namespace boost_no_member_templates = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_member_templates::test(); +} + diff --git a/src/boost/libs/config/test/no_nested_friendship_fail.cpp b/src/boost/libs/config/test/no_nested_friendship_fail.cpp new file mode 100644 index 000000000..dd90e404a --- /dev/null +++ b/src/boost/libs/config/test/no_nested_friendship_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Sep 18 23:32:18 2008 +// 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_NESTED_FRIENDSHIP +// This file should not compile, if it does then +// BOOST_NO_NESTED_FRIENDSHIP should not be defined. +// See file boost_no_nested_friendship.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_NESTED_FRIENDSHIP +#include "boost_no_nested_friendship.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_nested_friendship::test(); +} + diff --git a/src/boost/libs/config/test/no_nested_friendship_pass.cpp b/src/boost/libs/config/test/no_nested_friendship_pass.cpp new file mode 100644 index 000000000..3e114bc9d --- /dev/null +++ b/src/boost/libs/config/test/no_nested_friendship_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Sep 18 23:32:18 2008 +// 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_NESTED_FRIENDSHIP +// This file should compile, if it does not then +// BOOST_NO_NESTED_FRIENDSHIP should be defined. +// See file boost_no_nested_friendship.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_NESTED_FRIENDSHIP +#include "boost_no_nested_friendship.ipp" +#else +namespace boost_no_nested_friendship = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_nested_friendship::test(); +} + diff --git a/src/boost/libs/config/test/no_noexcept_fail.cpp b/src/boost/libs/config/test/no_noexcept_fail.cpp new file mode 100644 index 000000000..b49d9bed7 --- /dev/null +++ b/src/boost/libs/config/test/no_noexcept_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 5 04:40:08 2011 +// 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_NOEXCEPT +// This file should not compile, if it does then +// BOOST_NO_CXX11_NOEXCEPT should not be defined. +// See file boost_no_noexcept.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_NOEXCEPT +#include "boost_no_noexcept.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_noexcept::test(); +} + diff --git a/src/boost/libs/config/test/no_noexcept_pass.cpp b/src/boost/libs/config/test/no_noexcept_pass.cpp new file mode 100644 index 000000000..4f07f7d07 --- /dev/null +++ b/src/boost/libs/config/test/no_noexcept_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 5 04:40:08 2011 +// 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_NOEXCEPT +// This file should compile, if it does not then +// BOOST_NO_CXX11_NOEXCEPT should be defined. +// See file boost_no_noexcept.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_NOEXCEPT +#include "boost_no_noexcept.ipp" +#else +namespace boost_no_cxx11_noexcept = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_noexcept::test(); +} + diff --git a/src/boost/libs/config/test/no_nullptr_fail.cpp b/src/boost/libs/config/test/no_nullptr_fail.cpp new file mode 100644 index 000000000..c870ef236 --- /dev/null +++ b/src/boost/libs/config/test/no_nullptr_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 14 16:01:35 2009 +// 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_NULLPTR +// This file should not compile, if it does then +// BOOST_NO_CXX11_NULLPTR should not be defined. +// See file boost_no_nullptr.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_NULLPTR +#include "boost_no_nullptr.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_nullptr::test(); +} + diff --git a/src/boost/libs/config/test/no_nullptr_pass.cpp b/src/boost/libs/config/test/no_nullptr_pass.cpp new file mode 100644 index 000000000..34450ad50 --- /dev/null +++ b/src/boost/libs/config/test/no_nullptr_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 14 16:01:35 2009 +// 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_NULLPTR +// This file should compile, if it does not then +// BOOST_NO_CXX11_NULLPTR should be defined. +// See file boost_no_nullptr.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_NULLPTR +#include "boost_no_nullptr.ipp" +#else +namespace boost_no_cxx11_nullptr = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_nullptr::test(); +} + diff --git a/src/boost/libs/config/test/no_ops_in_namespace_fail.cpp b/src/boost/libs/config/test/no_ops_in_namespace_fail.cpp new file mode 100644 index 000000000..2e746ece0 --- /dev/null +++ b/src/boost/libs/config/test/no_ops_in_namespace_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_OPERATORS_IN_NAMESPACE +// This file should not compile, if it does then +// BOOST_NO_OPERATORS_IN_NAMESPACE should not be defined. +// See file boost_no_ops_in_namespace.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_OPERATORS_IN_NAMESPACE +#include "boost_no_ops_in_namespace.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_operators_in_namespace::test(); +} + diff --git a/src/boost/libs/config/test/no_ops_in_namespace_pass.cpp b/src/boost/libs/config/test/no_ops_in_namespace_pass.cpp new file mode 100644 index 000000000..5004411dd --- /dev/null +++ b/src/boost/libs/config/test/no_ops_in_namespace_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_OPERATORS_IN_NAMESPACE +// This file should compile, if it does not then +// BOOST_NO_OPERATORS_IN_NAMESPACE should be defined. +// See file boost_no_ops_in_namespace.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_OPERATORS_IN_NAMESPACE +#include "boost_no_ops_in_namespace.ipp" +#else +namespace boost_no_operators_in_namespace = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_operators_in_namespace::test(); +} + diff --git a/src/boost/libs/config/test/no_part_spec_def_args_fail.cpp b/src/boost/libs/config/test/no_part_spec_def_args_fail.cpp new file mode 100644 index 000000000..68f34d275 --- /dev/null +++ b/src/boost/libs/config/test/no_part_spec_def_args_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Apr 21 12:40:41 2008 +// 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: generate.cpp 44422 2008-04-14 18:06:59Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS +// This file should not compile, if it does then +// BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS should not be defined. +// See file boost_no_part_spec_def_args.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS +#include "boost_no_part_spec_def_args.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_partial_specialization_implicit_default_args::test(); +} + diff --git a/src/boost/libs/config/test/no_part_spec_def_args_pass.cpp b/src/boost/libs/config/test/no_part_spec_def_args_pass.cpp new file mode 100644 index 000000000..06864228b --- /dev/null +++ b/src/boost/libs/config/test/no_part_spec_def_args_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Apr 21 12:40:41 2008 +// 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: generate.cpp 44422 2008-04-14 18:06:59Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS +// This file should compile, if it does not then +// BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS should be defined. +// See file boost_no_part_spec_def_args.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS +#include "boost_no_part_spec_def_args.ipp" +#else +namespace boost_no_partial_specialization_implicit_default_args = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_partial_specialization_implicit_default_args::test(); +} + diff --git a/src/boost/libs/config/test/no_partial_spec_fail.cpp b/src/boost/libs/config/test/no_partial_spec_fail.cpp new file mode 100644 index 000000000..0b24a97d8 --- /dev/null +++ b/src/boost/libs/config/test/no_partial_spec_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION +// This file should not compile, if it does then +// BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION should not be defined. +// See file boost_no_partial_spec.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION +#include "boost_no_partial_spec.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_template_partial_specialization::test(); +} + diff --git a/src/boost/libs/config/test/no_partial_spec_pass.cpp b/src/boost/libs/config/test/no_partial_spec_pass.cpp new file mode 100644 index 000000000..5767410a6 --- /dev/null +++ b/src/boost/libs/config/test/no_partial_spec_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION +// This file should compile, if it does not then +// BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION should be defined. +// See file boost_no_partial_spec.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION +#include "boost_no_partial_spec.ipp" +#else +namespace boost_no_template_partial_specialization = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_template_partial_specialization::test(); +} + diff --git a/src/boost/libs/config/test/no_priv_aggregate_fail.cpp b/src/boost/libs/config/test/no_priv_aggregate_fail.cpp new file mode 100644 index 000000000..22ed88fa6 --- /dev/null +++ b/src/boost/libs/config/test/no_priv_aggregate_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_PRIVATE_IN_AGGREGATE +// This file should not compile, if it does then +// BOOST_NO_PRIVATE_IN_AGGREGATE should not be defined. +// See file boost_no_priv_aggregate.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_PRIVATE_IN_AGGREGATE +#include "boost_no_priv_aggregate.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_private_in_aggregate::test(); +} + diff --git a/src/boost/libs/config/test/no_priv_aggregate_pass.cpp b/src/boost/libs/config/test/no_priv_aggregate_pass.cpp new file mode 100644 index 000000000..839be57a9 --- /dev/null +++ b/src/boost/libs/config/test/no_priv_aggregate_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_PRIVATE_IN_AGGREGATE +// This file should compile, if it does not then +// BOOST_NO_PRIVATE_IN_AGGREGATE should be defined. +// See file boost_no_priv_aggregate.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_PRIVATE_IN_AGGREGATE +#include "boost_no_priv_aggregate.ipp" +#else +namespace boost_no_private_in_aggregate = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_private_in_aggregate::test(); +} + diff --git a/src/boost/libs/config/test/no_ptr_mem_const_fail.cpp b/src/boost/libs/config/test/no_ptr_mem_const_fail.cpp new file mode 100644 index 000000000..36eb9dc35 --- /dev/null +++ b/src/boost/libs/config/test/no_ptr_mem_const_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_POINTER_TO_MEMBER_CONST +// This file should not compile, if it does then +// BOOST_NO_POINTER_TO_MEMBER_CONST should not be defined. +// See file boost_no_ptr_mem_const.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_POINTER_TO_MEMBER_CONST +#include "boost_no_ptr_mem_const.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_pointer_to_member_const::test(); +} + diff --git a/src/boost/libs/config/test/no_ptr_mem_const_pass.cpp b/src/boost/libs/config/test/no_ptr_mem_const_pass.cpp new file mode 100644 index 000000000..c15d7ad1a --- /dev/null +++ b/src/boost/libs/config/test/no_ptr_mem_const_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_POINTER_TO_MEMBER_CONST +// This file should compile, if it does not then +// BOOST_NO_POINTER_TO_MEMBER_CONST should be defined. +// See file boost_no_ptr_mem_const.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_POINTER_TO_MEMBER_CONST +#include "boost_no_ptr_mem_const.ipp" +#else +namespace boost_no_pointer_to_member_const = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_pointer_to_member_const::test(); +} + diff --git a/src/boost/libs/config/test/no_range_based_for_fail.cpp b/src/boost/libs/config/test/no_range_based_for_fail.cpp new file mode 100644 index 000000000..6b0a0f54d --- /dev/null +++ b/src/boost/libs/config/test/no_range_based_for_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Tue Jul 10 14:28:33 2012 +// 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_RANGE_BASED_FOR +// This file should not compile, if it does then +// BOOST_NO_CXX11_RANGE_BASED_FOR should not be defined. +// See file boost_no_range_based_for.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_RANGE_BASED_FOR +#include "boost_no_range_based_for.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_range_based_for::test(); +} + diff --git a/src/boost/libs/config/test/no_range_based_for_pass.cpp b/src/boost/libs/config/test/no_range_based_for_pass.cpp new file mode 100644 index 000000000..b8207c579 --- /dev/null +++ b/src/boost/libs/config/test/no_range_based_for_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Tue Jul 10 14:28:33 2012 +// 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_RANGE_BASED_FOR +// This file should compile, if it does not then +// BOOST_NO_CXX11_RANGE_BASED_FOR should be defined. +// See file boost_no_range_based_for.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_RANGE_BASED_FOR +#include "boost_no_range_based_for.ipp" +#else +namespace boost_no_cxx11_range_based_for = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_range_based_for::test(); +} + diff --git a/src/boost/libs/config/test/no_raw_literals_fail.cpp b/src/boost/libs/config/test/no_raw_literals_fail.cpp new file mode 100644 index 000000000..3c535fadf --- /dev/null +++ b/src/boost/libs/config/test/no_raw_literals_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Jun 19 16:26:16 2008 +// 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_RAW_LITERALS +// This file should not compile, if it does then +// BOOST_NO_CXX11_RAW_LITERALS should not be defined. +// See file boost_no_raw_literals.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_RAW_LITERALS +#include "boost_no_raw_literals.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_raw_literals::test(); +} + diff --git a/src/boost/libs/config/test/no_raw_literals_pass.cpp b/src/boost/libs/config/test/no_raw_literals_pass.cpp new file mode 100644 index 000000000..ddf99c271 --- /dev/null +++ b/src/boost/libs/config/test/no_raw_literals_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Jun 19 16:26:16 2008 +// 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_RAW_LITERALS +// This file should compile, if it does not then +// BOOST_NO_CXX11_RAW_LITERALS should be defined. +// See file boost_no_raw_literals.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_RAW_LITERALS +#include "boost_no_raw_literals.ipp" +#else +namespace boost_no_cxx11_raw_literals = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_raw_literals::test(); +} + diff --git a/src/boost/libs/config/test/no_restrict_references_fail.cpp b/src/boost/libs/config/test/no_restrict_references_fail.cpp new file mode 100644 index 000000000..867aa0cb9 --- /dev/null +++ b/src/boost/libs/config/test/no_restrict_references_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Feb 5 18:12:09 2017 +// 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_RESTRICT_REFERENCES +// This file should not compile, if it does then +// BOOST_NO_RESTRICT_REFERENCES should not be defined. +// See file boost_no_restrict_references.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_RESTRICT_REFERENCES +#include "boost_no_restrict_references.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_restrict_references::test(); +} + diff --git a/src/boost/libs/config/test/no_restrict_references_pass.cpp b/src/boost/libs/config/test/no_restrict_references_pass.cpp new file mode 100644 index 000000000..878c54ebb --- /dev/null +++ b/src/boost/libs/config/test/no_restrict_references_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Feb 5 18:12:09 2017 +// 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_RESTRICT_REFERENCES +// This file should compile, if it does not then +// BOOST_NO_RESTRICT_REFERENCES should be defined. +// See file boost_no_restrict_references.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_RESTRICT_REFERENCES +#include "boost_no_restrict_references.ipp" +#else +namespace boost_no_restrict_references = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_restrict_references::test(); +} + diff --git a/src/boost/libs/config/test/no_ret_det_fail.cpp b/src/boost/libs/config/test/no_ret_det_fail.cpp new file mode 100644 index 000000000..e48bfa4f7 --- /dev/null +++ b/src/boost/libs/config/test/no_ret_det_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_UNREACHABLE_RETURN_DETECTION +// This file should not compile, if it does then +// BOOST_NO_UNREACHABLE_RETURN_DETECTION should not be defined. +// See file boost_no_ret_det.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_UNREACHABLE_RETURN_DETECTION +#include "boost_no_ret_det.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_unreachable_return_detection::test(); +} + diff --git a/src/boost/libs/config/test/no_ret_det_pass.cpp b/src/boost/libs/config/test/no_ret_det_pass.cpp new file mode 100644 index 000000000..7d45813f7 --- /dev/null +++ b/src/boost/libs/config/test/no_ret_det_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_UNREACHABLE_RETURN_DETECTION +// This file should compile, if it does not then +// BOOST_NO_UNREACHABLE_RETURN_DETECTION should be defined. +// See file boost_no_ret_det.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_UNREACHABLE_RETURN_DETECTION +#include "boost_no_ret_det.ipp" +#else +namespace boost_no_unreachable_return_detection = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_unreachable_return_detection::test(); +} + diff --git a/src/boost/libs/config/test/no_rtti_fail.cpp b/src/boost/libs/config/test/no_rtti_fail.cpp new file mode 100644 index 000000000..f24f15d62 --- /dev/null +++ b/src/boost/libs/config/test/no_rtti_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Aug 25 10:51:51 2008 +// 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: generate.cpp 47351 2008-07-12 12:41:52Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_RTTI +// This file should not compile, if it does then +// BOOST_NO_RTTI should not be defined. +// See file boost_no_rtti.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_RTTI +#include "boost_no_rtti.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_rtti::test(); +} + diff --git a/src/boost/libs/config/test/no_rtti_pass.cpp b/src/boost/libs/config/test/no_rtti_pass.cpp new file mode 100644 index 000000000..9809213f2 --- /dev/null +++ b/src/boost/libs/config/test/no_rtti_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Aug 25 10:51:51 2008 +// 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: generate.cpp 47351 2008-07-12 12:41:52Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_RTTI +// This file should compile, if it does not then +// BOOST_NO_RTTI should be defined. +// See file boost_no_rtti.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_RTTI +#include "boost_no_rtti.ipp" +#else +namespace boost_no_rtti = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_rtti::test(); +} + diff --git a/src/boost/libs/config/test/no_rvalue_references_fail.cpp b/src/boost/libs/config/test/no_rvalue_references_fail.cpp new file mode 100644 index 000000000..390b6c5f5 --- /dev/null +++ b/src/boost/libs/config/test/no_rvalue_references_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 07:24:54 2008 +// 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_RVALUE_REFERENCES +// This file should not compile, if it does then +// BOOST_NO_CXX11_RVALUE_REFERENCES should not be defined. +// See file boost_no_rvalue_references.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_RVALUE_REFERENCES +#include "boost_no_rvalue_references.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_rvalue_references::test(); +} + diff --git a/src/boost/libs/config/test/no_rvalue_references_pass.cpp b/src/boost/libs/config/test/no_rvalue_references_pass.cpp new file mode 100644 index 000000000..c11494c6c --- /dev/null +++ b/src/boost/libs/config/test/no_rvalue_references_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 07:24:54 2008 +// 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_RVALUE_REFERENCES +// This file should compile, if it does not then +// BOOST_NO_CXX11_RVALUE_REFERENCES should be defined. +// See file boost_no_rvalue_references.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES +#include "boost_no_rvalue_references.ipp" +#else +namespace boost_no_cxx11_rvalue_references = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_rvalue_references::test(); +} + diff --git a/src/boost/libs/config/test/no_scoped_enums_fail.cpp b/src/boost/libs/config/test/no_scoped_enums_fail.cpp new file mode 100644 index 000000000..4c1c184df --- /dev/null +++ b/src/boost/libs/config/test/no_scoped_enums_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 08:00:48 2008 +// 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_SCOPED_ENUMS +// This file should not compile, if it does then +// BOOST_NO_CXX11_SCOPED_ENUMS should not be defined. +// See file boost_no_scoped_enums.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_SCOPED_ENUMS +#include "boost_no_scoped_enums.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_scoped_enums::test(); +} + diff --git a/src/boost/libs/config/test/no_scoped_enums_pass.cpp b/src/boost/libs/config/test/no_scoped_enums_pass.cpp new file mode 100644 index 000000000..501fea90e --- /dev/null +++ b/src/boost/libs/config/test/no_scoped_enums_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 08:00:48 2008 +// 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_SCOPED_ENUMS +// This file should compile, if it does not then +// BOOST_NO_CXX11_SCOPED_ENUMS should be defined. +// See file boost_no_scoped_enums.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_SCOPED_ENUMS +#include "boost_no_scoped_enums.ipp" +#else +namespace boost_no_cxx11_scoped_enums = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_scoped_enums::test(); +} + diff --git a/src/boost/libs/config/test/no_sfinae_expr_fail.cpp b/src/boost/libs/config/test/no_sfinae_expr_fail.cpp new file mode 100644 index 000000000..e7c8b03d7 --- /dev/null +++ b/src/boost/libs/config/test/no_sfinae_expr_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Aug 02 08:25:59 2009 +// 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_SFINAE_EXPR +// This file should not compile, if it does then +// BOOST_NO_SFINAE_EXPR should not be defined. +// See file boost_no_sfinae_expr.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_SFINAE_EXPR +#include "boost_no_sfinae_expr.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_sfinae_expr::test(); +} + diff --git a/src/boost/libs/config/test/no_sfinae_expr_pass.cpp b/src/boost/libs/config/test/no_sfinae_expr_pass.cpp new file mode 100644 index 000000000..fc87d786b --- /dev/null +++ b/src/boost/libs/config/test/no_sfinae_expr_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Sun Aug 02 08:25:59 2009 +// 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_SFINAE_EXPR +// This file should compile, if it does not then +// BOOST_NO_SFINAE_EXPR should be defined. +// See file boost_no_sfinae_expr.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_SFINAE_EXPR +#include "boost_no_sfinae_expr.ipp" +#else +namespace boost_no_sfinae_expr = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_sfinae_expr::test(); +} + diff --git a/src/boost/libs/config/test/no_sfinae_fail.cpp b/src/boost/libs/config/test/no_sfinae_fail.cpp new file mode 100644 index 000000000..915f92460 --- /dev/null +++ b/src/boost/libs/config/test/no_sfinae_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_SFINAE +// This file should not compile, if it does then +// BOOST_NO_SFINAE should not be defined. +// See file boost_no_sfinae.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_SFINAE +#include "boost_no_sfinae.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_sfinae::test(); +} + diff --git a/src/boost/libs/config/test/no_sfinae_pass.cpp b/src/boost/libs/config/test/no_sfinae_pass.cpp new file mode 100644 index 000000000..8ebfc383f --- /dev/null +++ b/src/boost/libs/config/test/no_sfinae_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_SFINAE +// This file should compile, if it does not then +// BOOST_NO_SFINAE should be defined. +// See file boost_no_sfinae.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_SFINAE +#include "boost_no_sfinae.ipp" +#else +namespace boost_no_sfinae = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_sfinae::test(); +} + diff --git a/src/boost/libs/config/test/no_sstream_fail.cpp b/src/boost/libs/config/test/no_sstream_fail.cpp new file mode 100644 index 000000000..3cb5d9af1 --- /dev/null +++ b/src/boost/libs/config/test/no_sstream_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STRINGSTREAM +// This file should not compile, if it does then +// BOOST_NO_STRINGSTREAM should not be defined. +// See file boost_no_sstream.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_STRINGSTREAM +#include "boost_no_sstream.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_stringstream::test(); +} + diff --git a/src/boost/libs/config/test/no_sstream_pass.cpp b/src/boost/libs/config/test/no_sstream_pass.cpp new file mode 100644 index 000000000..de325a397 --- /dev/null +++ b/src/boost/libs/config/test/no_sstream_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STRINGSTREAM +// This file should compile, if it does not then +// BOOST_NO_STRINGSTREAM should be defined. +// See file boost_no_sstream.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_STRINGSTREAM +#include "boost_no_sstream.ipp" +#else +namespace boost_no_stringstream = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_stringstream::test(); +} + diff --git a/src/boost/libs/config/test/no_static_assert_fail.cpp b/src/boost/libs/config/test/no_static_assert_fail.cpp new file mode 100644 index 000000000..f958c683d --- /dev/null +++ b/src/boost/libs/config/test/no_static_assert_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 07:24:54 2008 +// 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_STATIC_ASSERT +// This file should not compile, if it does then +// BOOST_NO_CXX11_STATIC_ASSERT should not be defined. +// See file boost_no_static_assert.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_STATIC_ASSERT +#include "boost_no_static_assert.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_static_assert::test(); +} + diff --git a/src/boost/libs/config/test/no_static_assert_pass.cpp b/src/boost/libs/config/test/no_static_assert_pass.cpp new file mode 100644 index 000000000..852988763 --- /dev/null +++ b/src/boost/libs/config/test/no_static_assert_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 07:24:54 2008 +// 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_STATIC_ASSERT +// This file should compile, if it does not then +// BOOST_NO_CXX11_STATIC_ASSERT should be defined. +// See file boost_no_static_assert.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_STATIC_ASSERT +#include "boost_no_static_assert.ipp" +#else +namespace boost_no_cxx11_static_assert = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_static_assert::test(); +} + diff --git a/src/boost/libs/config/test/no_std_allocator_fail.cpp b/src/boost/libs/config/test/no_std_allocator_fail.cpp new file mode 100644 index 000000000..e5213dcc2 --- /dev/null +++ b/src/boost/libs/config/test/no_std_allocator_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_ALLOCATOR +// This file should not compile, if it does then +// BOOST_NO_STD_ALLOCATOR should not be defined. +// See file boost_no_std_allocator.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_STD_ALLOCATOR +#include "boost_no_std_allocator.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_std_allocator::test(); +} + diff --git a/src/boost/libs/config/test/no_std_allocator_pass.cpp b/src/boost/libs/config/test/no_std_allocator_pass.cpp new file mode 100644 index 000000000..63ab611c6 --- /dev/null +++ b/src/boost/libs/config/test/no_std_allocator_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_ALLOCATOR +// This file should compile, if it does not then +// BOOST_NO_STD_ALLOCATOR should be defined. +// See file boost_no_std_allocator.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_STD_ALLOCATOR +#include "boost_no_std_allocator.ipp" +#else +namespace boost_no_std_allocator = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_std_allocator::test(); +} + diff --git a/src/boost/libs/config/test/no_std_distance_fail.cpp b/src/boost/libs/config/test/no_std_distance_fail.cpp new file mode 100644 index 000000000..a8c21a43a --- /dev/null +++ b/src/boost/libs/config/test/no_std_distance_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_DISTANCE +// This file should not compile, if it does then +// BOOST_NO_STD_DISTANCE should not be defined. +// See file boost_no_std_distance.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_STD_DISTANCE +#include "boost_no_std_distance.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_std_distance::test(); +} + diff --git a/src/boost/libs/config/test/no_std_distance_pass.cpp b/src/boost/libs/config/test/no_std_distance_pass.cpp new file mode 100644 index 000000000..870d86d9c --- /dev/null +++ b/src/boost/libs/config/test/no_std_distance_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_DISTANCE +// This file should compile, if it does not then +// BOOST_NO_STD_DISTANCE should be defined. +// See file boost_no_std_distance.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_STD_DISTANCE +#include "boost_no_std_distance.ipp" +#else +namespace boost_no_std_distance = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_std_distance::test(); +} + diff --git a/src/boost/libs/config/test/no_std_iter_traits_fail.cpp b/src/boost/libs/config/test/no_std_iter_traits_fail.cpp new file mode 100644 index 000000000..98ba389f7 --- /dev/null +++ b/src/boost/libs/config/test/no_std_iter_traits_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_ITERATOR_TRAITS +// This file should not compile, if it does then +// BOOST_NO_STD_ITERATOR_TRAITS should not be defined. +// See file boost_no_std_iter_traits.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_STD_ITERATOR_TRAITS +#include "boost_no_std_iter_traits.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_std_iterator_traits::test(); +} + diff --git a/src/boost/libs/config/test/no_std_iter_traits_pass.cpp b/src/boost/libs/config/test/no_std_iter_traits_pass.cpp new file mode 100644 index 000000000..30b7399d9 --- /dev/null +++ b/src/boost/libs/config/test/no_std_iter_traits_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_ITERATOR_TRAITS +// This file should compile, if it does not then +// BOOST_NO_STD_ITERATOR_TRAITS should be defined. +// See file boost_no_std_iter_traits.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_STD_ITERATOR_TRAITS +#include "boost_no_std_iter_traits.ipp" +#else +namespace boost_no_std_iterator_traits = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_std_iterator_traits::test(); +} + diff --git a/src/boost/libs/config/test/no_std_iterator_fail.cpp b/src/boost/libs/config/test/no_std_iterator_fail.cpp new file mode 100644 index 000000000..7da3216dc --- /dev/null +++ b/src/boost/libs/config/test/no_std_iterator_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_ITERATOR +// This file should not compile, if it does then +// BOOST_NO_STD_ITERATOR should not be defined. +// See file boost_no_std_iterator.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_STD_ITERATOR +#include "boost_no_std_iterator.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_std_iterator::test(); +} + diff --git a/src/boost/libs/config/test/no_std_iterator_pass.cpp b/src/boost/libs/config/test/no_std_iterator_pass.cpp new file mode 100644 index 000000000..7dbd9ce5f --- /dev/null +++ b/src/boost/libs/config/test/no_std_iterator_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_ITERATOR +// This file should compile, if it does not then +// BOOST_NO_STD_ITERATOR should be defined. +// See file boost_no_std_iterator.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_STD_ITERATOR +#include "boost_no_std_iterator.ipp" +#else +namespace boost_no_std_iterator = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_std_iterator::test(); +} + diff --git a/src/boost/libs/config/test/no_std_locale_fail.cpp b/src/boost/libs/config/test/no_std_locale_fail.cpp new file mode 100644 index 000000000..46d2a4656 --- /dev/null +++ b/src/boost/libs/config/test/no_std_locale_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_LOCALE +// This file should not compile, if it does then +// BOOST_NO_STD_LOCALE should not be defined. +// See file boost_no_std_locale.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_STD_LOCALE +#include "boost_no_std_locale.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_std_locale::test(); +} + diff --git a/src/boost/libs/config/test/no_std_locale_pass.cpp b/src/boost/libs/config/test/no_std_locale_pass.cpp new file mode 100644 index 000000000..95a16483c --- /dev/null +++ b/src/boost/libs/config/test/no_std_locale_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_LOCALE +// This file should compile, if it does not then +// BOOST_NO_STD_LOCALE should be defined. +// See file boost_no_std_locale.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_STD_LOCALE +#include "boost_no_std_locale.ipp" +#else +namespace boost_no_std_locale = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_std_locale::test(); +} + diff --git a/src/boost/libs/config/test/no_std_messages_fail.cpp b/src/boost/libs/config/test/no_std_messages_fail.cpp new file mode 100644 index 000000000..f5da5a28b --- /dev/null +++ b/src/boost/libs/config/test/no_std_messages_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_MESSAGES +// This file should not compile, if it does then +// BOOST_NO_STD_MESSAGES should not be defined. +// See file boost_no_std_messages.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_STD_MESSAGES +#include "boost_no_std_messages.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_std_messages::test(); +} + diff --git a/src/boost/libs/config/test/no_std_messages_pass.cpp b/src/boost/libs/config/test/no_std_messages_pass.cpp new file mode 100644 index 000000000..c3d1786e0 --- /dev/null +++ b/src/boost/libs/config/test/no_std_messages_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_MESSAGES +// This file should compile, if it does not then +// BOOST_NO_STD_MESSAGES should be defined. +// See file boost_no_std_messages.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_STD_MESSAGES +#include "boost_no_std_messages.ipp" +#else +namespace boost_no_std_messages = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_std_messages::test(); +} + diff --git a/src/boost/libs/config/test/no_std_min_max_fail.cpp b/src/boost/libs/config/test/no_std_min_max_fail.cpp new file mode 100644 index 000000000..438d55a2b --- /dev/null +++ b/src/boost/libs/config/test/no_std_min_max_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_MIN_MAX +// This file should not compile, if it does then +// BOOST_NO_STD_MIN_MAX should not be defined. +// See file boost_no_std_min_max.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_STD_MIN_MAX +#include "boost_no_std_min_max.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_std_min_max::test(); +} + diff --git a/src/boost/libs/config/test/no_std_min_max_pass.cpp b/src/boost/libs/config/test/no_std_min_max_pass.cpp new file mode 100644 index 000000000..f5349aa39 --- /dev/null +++ b/src/boost/libs/config/test/no_std_min_max_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_MIN_MAX +// This file should compile, if it does not then +// BOOST_NO_STD_MIN_MAX should be defined. +// See file boost_no_std_min_max.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_STD_MIN_MAX +#include "boost_no_std_min_max.ipp" +#else +namespace boost_no_std_min_max = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_std_min_max::test(); +} + diff --git a/src/boost/libs/config/test/no_std_oi_assign_fail.cpp b/src/boost/libs/config/test/no_std_oi_assign_fail.cpp new file mode 100644 index 000000000..353e3a109 --- /dev/null +++ b/src/boost/libs/config/test/no_std_oi_assign_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN +// This file should not compile, if it does then +// BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN should not be defined. +// See file boost_no_std_oi_assign.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN +#include "boost_no_std_oi_assign.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_std_output_iterator_assign::test(); +} + diff --git a/src/boost/libs/config/test/no_std_oi_assign_pass.cpp b/src/boost/libs/config/test/no_std_oi_assign_pass.cpp new file mode 100644 index 000000000..7f16148db --- /dev/null +++ b/src/boost/libs/config/test/no_std_oi_assign_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN +// This file should compile, if it does not then +// BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN should be defined. +// See file boost_no_std_oi_assign.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN +#include "boost_no_std_oi_assign.ipp" +#else +namespace boost_no_std_output_iterator_assign = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_std_output_iterator_assign::test(); +} + diff --git a/src/boost/libs/config/test/no_std_typeinfo_fail.cpp b/src/boost/libs/config/test/no_std_typeinfo_fail.cpp new file mode 100644 index 000000000..7bb145f07 --- /dev/null +++ b/src/boost/libs/config/test/no_std_typeinfo_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Aug 25 12:32:22 2007 +// 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. + +// Test file for macro BOOST_NO_STD_TYPEINFO +// This file should not compile, if it does then +// BOOST_NO_STD_TYPEINFO should not be defined. +// See file boost_no_std_typeinfo.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_STD_TYPEINFO +#include "boost_no_std_typeinfo.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_std_typeinfo::test(); +} + diff --git a/src/boost/libs/config/test/no_std_typeinfo_pass.cpp b/src/boost/libs/config/test/no_std_typeinfo_pass.cpp new file mode 100644 index 000000000..0bfd031a3 --- /dev/null +++ b/src/boost/libs/config/test/no_std_typeinfo_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Aug 25 12:32:22 2007 +// 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. + +// Test file for macro BOOST_NO_STD_TYPEINFO +// This file should compile, if it does not then +// BOOST_NO_STD_TYPEINFO should be defined. +// See file boost_no_std_typeinfo.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_STD_TYPEINFO +#include "boost_no_std_typeinfo.ipp" +#else +namespace boost_no_std_typeinfo = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_std_typeinfo::test(); +} + diff --git a/src/boost/libs/config/test/no_std_use_facet_fail.cpp b/src/boost/libs/config/test/no_std_use_facet_fail.cpp new file mode 100644 index 000000000..e1c06b6a9 --- /dev/null +++ b/src/boost/libs/config/test/no_std_use_facet_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_USE_FACET +// This file should not compile, if it does then +// BOOST_NO_STD_USE_FACET should not be defined. +// See file boost_no_std_use_facet.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_STD_USE_FACET +#include "boost_no_std_use_facet.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_std_use_facet::test(); +} + diff --git a/src/boost/libs/config/test/no_std_use_facet_pass.cpp b/src/boost/libs/config/test/no_std_use_facet_pass.cpp new file mode 100644 index 000000000..111f38233 --- /dev/null +++ b/src/boost/libs/config/test/no_std_use_facet_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_USE_FACET +// This file should compile, if it does not then +// BOOST_NO_STD_USE_FACET should be defined. +// See file boost_no_std_use_facet.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_STD_USE_FACET +#include "boost_no_std_use_facet.ipp" +#else +namespace boost_no_std_use_facet = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_std_use_facet::test(); +} + diff --git a/src/boost/libs/config/test/no_std_wstreambuf_fail.cpp b/src/boost/libs/config/test/no_std_wstreambuf_fail.cpp new file mode 100644 index 000000000..40e6ecb94 --- /dev/null +++ b/src/boost/libs/config/test/no_std_wstreambuf_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_WSTREAMBUF +// This file should not compile, if it does then +// BOOST_NO_STD_WSTREAMBUF should not be defined. +// See file boost_no_std_wstreambuf.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_STD_WSTREAMBUF +#include "boost_no_std_wstreambuf.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_std_wstreambuf::test(); +} + diff --git a/src/boost/libs/config/test/no_std_wstreambuf_pass.cpp b/src/boost/libs/config/test/no_std_wstreambuf_pass.cpp new file mode 100644 index 000000000..f5aa6c639 --- /dev/null +++ b/src/boost/libs/config/test/no_std_wstreambuf_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_WSTREAMBUF +// This file should compile, if it does not then +// BOOST_NO_STD_WSTREAMBUF should be defined. +// See file boost_no_std_wstreambuf.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_STD_WSTREAMBUF +#include "boost_no_std_wstreambuf.ipp" +#else +namespace boost_no_std_wstreambuf = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_std_wstreambuf::test(); +} + diff --git a/src/boost/libs/config/test/no_std_wstring_fail.cpp b/src/boost/libs/config/test/no_std_wstring_fail.cpp new file mode 100644 index 000000000..39a5fa83f --- /dev/null +++ b/src/boost/libs/config/test/no_std_wstring_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_WSTRING +// This file should not compile, if it does then +// BOOST_NO_STD_WSTRING should not be defined. +// See file boost_no_std_wstring.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_STD_WSTRING +#include "boost_no_std_wstring.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_std_wstring::test(); +} + diff --git a/src/boost/libs/config/test/no_std_wstring_pass.cpp b/src/boost/libs/config/test/no_std_wstring_pass.cpp new file mode 100644 index 000000000..0fb8e0319 --- /dev/null +++ b/src/boost/libs/config/test/no_std_wstring_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STD_WSTRING +// This file should compile, if it does not then +// BOOST_NO_STD_WSTRING should be defined. +// See file boost_no_std_wstring.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_STD_WSTRING +#include "boost_no_std_wstring.ipp" +#else +namespace boost_no_std_wstring = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_std_wstring::test(); +} + diff --git a/src/boost/libs/config/test/no_stdc_namespace_fail.cpp b/src/boost/libs/config/test/no_stdc_namespace_fail.cpp new file mode 100644 index 000000000..745a2b899 --- /dev/null +++ b/src/boost/libs/config/test/no_stdc_namespace_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STDC_NAMESPACE +// This file should not compile, if it does then +// BOOST_NO_STDC_NAMESPACE should not be defined. +// See file boost_no_stdc_namespace.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_STDC_NAMESPACE +#include "boost_no_stdc_namespace.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_stdc_namespace::test(); +} + diff --git a/src/boost/libs/config/test/no_stdc_namespace_pass.cpp b/src/boost/libs/config/test/no_stdc_namespace_pass.cpp new file mode 100644 index 000000000..8b8eeafe7 --- /dev/null +++ b/src/boost/libs/config/test/no_stdc_namespace_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_STDC_NAMESPACE +// This file should compile, if it does not then +// BOOST_NO_STDC_NAMESPACE should be defined. +// See file boost_no_stdc_namespace.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_STDC_NAMESPACE +#include "boost_no_stdc_namespace.ipp" +#else +namespace boost_no_stdc_namespace = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_stdc_namespace::test(); +} + diff --git a/src/boost/libs/config/test/no_swprintf_fail.cpp b/src/boost/libs/config/test/no_swprintf_fail.cpp new file mode 100644 index 000000000..3df0b132f --- /dev/null +++ b/src/boost/libs/config/test/no_swprintf_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_SWPRINTF +// This file should not compile, if it does then +// BOOST_NO_SWPRINTF should not be defined. +// See file boost_no_swprintf.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_SWPRINTF +#include "boost_no_swprintf.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_swprintf::test(); +} + diff --git a/src/boost/libs/config/test/no_swprintf_pass.cpp b/src/boost/libs/config/test/no_swprintf_pass.cpp new file mode 100644 index 000000000..3d4ef7096 --- /dev/null +++ b/src/boost/libs/config/test/no_swprintf_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_SWPRINTF +// This file should compile, if it does not then +// BOOST_NO_SWPRINTF should be defined. +// See file boost_no_swprintf.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_SWPRINTF +#include "boost_no_swprintf.ipp" +#else +namespace boost_no_swprintf = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_swprintf::test(); +} + diff --git a/src/boost/libs/config/test/no_tem_local_classes_fail.cpp b/src/boost/libs/config/test/no_tem_local_classes_fail.cpp new file mode 100644 index 000000000..f6c2a31ff --- /dev/null +++ b/src/boost/libs/config/test/no_tem_local_classes_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Wed Mar 21 13:05:19 2012 +// 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_LOCAL_CLASS_TEMPLATE_PARAMETERS +// This file should not compile, if it does then +// BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS should not be defined. +// See file boost_no_tem_local_classes.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS +#include "boost_no_tem_local_classes.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_local_class_template_parameters::test(); +} + diff --git a/src/boost/libs/config/test/no_tem_local_classes_pass.cpp b/src/boost/libs/config/test/no_tem_local_classes_pass.cpp new file mode 100644 index 000000000..036819c18 --- /dev/null +++ b/src/boost/libs/config/test/no_tem_local_classes_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Wed Mar 21 13:05:19 2012 +// 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_LOCAL_CLASS_TEMPLATE_PARAMETERS +// This file should compile, if it does not then +// BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS should be defined. +// See file boost_no_tem_local_classes.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS +#include "boost_no_tem_local_classes.ipp" +#else +namespace boost_no_cxx11_local_class_template_parameters = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_local_class_template_parameters::test(); +} + diff --git a/src/boost/libs/config/test/no_template_aliases_fail.cpp b/src/boost/libs/config/test/no_template_aliases_fail.cpp new file mode 100644 index 000000000..fd4af49e5 --- /dev/null +++ b/src/boost/libs/config/test/no_template_aliases_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 14 16:01:36 2009 +// 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_TEMPLATE_ALIASES +// This file should not compile, if it does then +// BOOST_NO_CXX11_TEMPLATE_ALIASES should not be defined. +// See file boost_no_template_aliases.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_TEMPLATE_ALIASES +#include "boost_no_template_aliases.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_template_aliases::test(); +} + diff --git a/src/boost/libs/config/test/no_template_aliases_pass.cpp b/src/boost/libs/config/test/no_template_aliases_pass.cpp new file mode 100644 index 000000000..ed66a355e --- /dev/null +++ b/src/boost/libs/config/test/no_template_aliases_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 14 16:01:36 2009 +// 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_TEMPLATE_ALIASES +// This file should compile, if it does not then +// BOOST_NO_CXX11_TEMPLATE_ALIASES should be defined. +// See file boost_no_template_aliases.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_TEMPLATE_ALIASES +#include "boost_no_template_aliases.ipp" +#else +namespace boost_no_cxx11_template_aliases = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_template_aliases::test(); +} + diff --git a/src/boost/libs/config/test/no_template_streams_fail.cpp b/src/boost/libs/config/test/no_template_streams_fail.cpp new file mode 100644 index 000000000..16dfd5b16 --- /dev/null +++ b/src/boost/libs/config/test/no_template_streams_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Apr 21 10:10:52 2008 +// 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: generate.cpp 44422 2008-04-14 18:06:59Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_TEMPLATED_IOSTREAMS +// This file should not compile, if it does then +// BOOST_NO_TEMPLATED_IOSTREAMS should not be defined. +// See file boost_no_template_streams.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_TEMPLATED_IOSTREAMS +#include "boost_no_template_streams.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_templated_iostreams::test(); +} + diff --git a/src/boost/libs/config/test/no_template_streams_pass.cpp b/src/boost/libs/config/test/no_template_streams_pass.cpp new file mode 100644 index 000000000..9ea790981 --- /dev/null +++ b/src/boost/libs/config/test/no_template_streams_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon Apr 21 10:10:52 2008 +// 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: generate.cpp 44422 2008-04-14 18:06:59Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_TEMPLATED_IOSTREAMS +// This file should compile, if it does not then +// BOOST_NO_TEMPLATED_IOSTREAMS should be defined. +// See file boost_no_template_streams.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_TEMPLATED_IOSTREAMS +#include "boost_no_template_streams.ipp" +#else +namespace boost_no_templated_iostreams = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_templated_iostreams::test(); +} + diff --git a/src/boost/libs/config/test/no_template_template_fail.cpp b/src/boost/libs/config/test/no_template_template_fail.cpp new file mode 100644 index 000000000..44f8a2b61 --- /dev/null +++ b/src/boost/libs/config/test/no_template_template_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_TEMPLATE_TEMPLATES +// This file should not compile, if it does then +// BOOST_NO_TEMPLATE_TEMPLATES should not be defined. +// See file boost_no_template_template.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_TEMPLATE_TEMPLATES +#include "boost_no_template_template.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_template_templates::test(); +} + diff --git a/src/boost/libs/config/test/no_template_template_pass.cpp b/src/boost/libs/config/test/no_template_template_pass.cpp new file mode 100644 index 000000000..e70c33e16 --- /dev/null +++ b/src/boost/libs/config/test/no_template_template_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_TEMPLATE_TEMPLATES +// This file should compile, if it does not then +// BOOST_NO_TEMPLATE_TEMPLATES should be defined. +// See file boost_no_template_template.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_TEMPLATE_TEMPLATES +#include "boost_no_template_template.ipp" +#else +namespace boost_no_template_templates = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_template_templates::test(); +} + diff --git a/src/boost/libs/config/test/no_two_phase_lookup_fail.cpp b/src/boost/libs/config/test/no_two_phase_lookup_fail.cpp new file mode 100644 index 000000000..6be607227 --- /dev/null +++ b/src/boost/libs/config/test/no_two_phase_lookup_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Mon Jan 01 12:05:16 2007 +// 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. + +// Test file for macro BOOST_NO_TWO_PHASE_NAME_LOOKUP +// This file should not compile, if it does then +// BOOST_NO_TWO_PHASE_NAME_LOOKUP should not be defined. +// See file boost_no_two_phase_lookup.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_TWO_PHASE_NAME_LOOKUP +#include "boost_no_two_phase_lookup.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_two_phase_name_lookup::test(); +} + diff --git a/src/boost/libs/config/test/no_two_phase_lookup_pass.cpp b/src/boost/libs/config/test/no_two_phase_lookup_pass.cpp new file mode 100644 index 000000000..544958767 --- /dev/null +++ b/src/boost/libs/config/test/no_two_phase_lookup_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Mon Jan 01 12:05:16 2007 +// 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. + +// Test file for macro BOOST_NO_TWO_PHASE_NAME_LOOKUP +// This file should compile, if it does not then +// BOOST_NO_TWO_PHASE_NAME_LOOKUP should be defined. +// See file boost_no_two_phase_lookup.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_TWO_PHASE_NAME_LOOKUP +#include "boost_no_two_phase_lookup.ipp" +#else +namespace boost_no_two_phase_name_lookup = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_two_phase_name_lookup::test(); +} + diff --git a/src/boost/libs/config/test/no_typeid_fail.cpp b/src/boost/libs/config/test/no_typeid_fail.cpp new file mode 100644 index 000000000..7c3e4b23b --- /dev/null +++ b/src/boost/libs/config/test/no_typeid_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Aug 25 12:32:22 2007 +// 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. + +// Test file for macro BOOST_NO_TYPEID +// This file should not compile, if it does then +// BOOST_NO_TYPEID should not be defined. +// See file boost_no_typeid.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_TYPEID +#include "boost_no_typeid.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_typeid::test(); +} + diff --git a/src/boost/libs/config/test/no_typeid_pass.cpp b/src/boost/libs/config/test/no_typeid_pass.cpp new file mode 100644 index 000000000..80582ef3b --- /dev/null +++ b/src/boost/libs/config/test/no_typeid_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Sat Aug 25 12:32:22 2007 +// 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. + +// Test file for macro BOOST_NO_TYPEID +// This file should compile, if it does not then +// BOOST_NO_TYPEID should be defined. +// See file boost_no_typeid.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_TYPEID +#include "boost_no_typeid.ipp" +#else +namespace boost_no_typeid = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_typeid::test(); +} + diff --git a/src/boost/libs/config/test/no_typename_with_ctor_fail.cpp b/src/boost/libs/config/test/no_typename_with_ctor_fail.cpp new file mode 100644 index 000000000..74ee7b0e6 --- /dev/null +++ b/src/boost/libs/config/test/no_typename_with_ctor_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Sep 18 23:32:18 2008 +// 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_TYPENAME_WITH_CTOR +// This file should not compile, if it does then +// BOOST_NO_TYPENAME_WITH_CTOR should not be defined. +// See file boost_no_typename_with_ctor.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_TYPENAME_WITH_CTOR +#include "boost_no_typename_with_ctor.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_typename_with_ctor::test(); +} + diff --git a/src/boost/libs/config/test/no_typename_with_ctor_pass.cpp b/src/boost/libs/config/test/no_typename_with_ctor_pass.cpp new file mode 100644 index 000000000..4a2d9bbcc --- /dev/null +++ b/src/boost/libs/config/test/no_typename_with_ctor_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu Sep 18 23:32:18 2008 +// 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_TYPENAME_WITH_CTOR +// This file should compile, if it does not then +// BOOST_NO_TYPENAME_WITH_CTOR should be defined. +// See file boost_no_typename_with_ctor.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_TYPENAME_WITH_CTOR +#include "boost_no_typename_with_ctor.ipp" +#else +namespace boost_no_typename_with_ctor = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_typename_with_ctor::test(); +} + diff --git a/src/boost/libs/config/test/no_unicode_literals_fail.cpp b/src/boost/libs/config/test/no_unicode_literals_fail.cpp new file mode 100644 index 000000000..381f562ac --- /dev/null +++ b/src/boost/libs/config/test/no_unicode_literals_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 09:24:04 2008 +// 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_UNICODE_LITERALS +// This file should not compile, if it does then +// BOOST_NO_CXX11_UNICODE_LITERALS should not be defined. +// See file boost_no_unicode_literals.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_UNICODE_LITERALS +#include "boost_no_unicode_literals.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_unicode_literals::test(); +} + diff --git a/src/boost/libs/config/test/no_unicode_literals_pass.cpp b/src/boost/libs/config/test/no_unicode_literals_pass.cpp new file mode 100644 index 000000000..3fd454707 --- /dev/null +++ b/src/boost/libs/config/test/no_unicode_literals_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 09:24:04 2008 +// 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_UNICODE_LITERALS +// This file should compile, if it does not then +// BOOST_NO_CXX11_UNICODE_LITERALS should be defined. +// See file boost_no_unicode_literals.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_UNICODE_LITERALS +#include "boost_no_unicode_literals.ipp" +#else +namespace boost_no_cxx11_unicode_literals = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_unicode_literals::test(); +} + diff --git a/src/boost/libs/config/test/no_unified_init_fail.cpp b/src/boost/libs/config/test/no_unified_init_fail.cpp new file mode 100644 index 000000000..5535fe7d3 --- /dev/null +++ b/src/boost/libs/config/test/no_unified_init_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon May 09 12:11:17 2011 +// 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: generate.cpp 70001 2011-03-15 13:17:46Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX +// This file should not compile, if it does then +// BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX should not be defined. +// See file boost_no_unified_init.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX +#include "boost_no_unified_init.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_unified_initialization_syntax::test(); +} + diff --git a/src/boost/libs/config/test/no_unified_init_pass.cpp b/src/boost/libs/config/test/no_unified_init_pass.cpp new file mode 100644 index 000000000..f4cf57178 --- /dev/null +++ b/src/boost/libs/config/test/no_unified_init_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Mon May 09 12:11:17 2011 +// 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: generate.cpp 70001 2011-03-15 13:17:46Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX +// This file should compile, if it does not then +// BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX should be defined. +// See file boost_no_unified_init.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX +#include "boost_no_unified_init.ipp" +#else +namespace boost_no_cxx11_unified_initialization_syntax = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_unified_initialization_syntax::test(); +} + diff --git a/src/boost/libs/config/test/no_using_breaks_adl_fail.cpp b/src/boost/libs/config/test/no_using_breaks_adl_fail.cpp new file mode 100644 index 000000000..39a9b84d6 --- /dev/null +++ b/src/boost/libs/config/test/no_using_breaks_adl_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL +// This file should not compile, if it does then +// BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL should not be defined. +// See file boost_no_using_breaks_adl.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL +#include "boost_no_using_breaks_adl.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_function_scope_using_declaration_breaks_adl::test(); +} + diff --git a/src/boost/libs/config/test/no_using_breaks_adl_pass.cpp b/src/boost/libs/config/test/no_using_breaks_adl_pass.cpp new file mode 100644 index 000000000..5f4cb4933 --- /dev/null +++ b/src/boost/libs/config/test/no_using_breaks_adl_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL +// This file should compile, if it does not then +// BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL should be defined. +// See file boost_no_using_breaks_adl.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL +#include "boost_no_using_breaks_adl.ipp" +#else +namespace boost_function_scope_using_declaration_breaks_adl = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_function_scope_using_declaration_breaks_adl::test(); +} + diff --git a/src/boost/libs/config/test/no_using_decl_overld_fail.cpp b/src/boost/libs/config/test/no_using_decl_overld_fail.cpp new file mode 100644 index 000000000..35e12697a --- /dev/null +++ b/src/boost/libs/config/test/no_using_decl_overld_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE +// This file should not compile, if it does then +// BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE should not be defined. +// See file boost_no_using_decl_overld.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE +#include "boost_no_using_decl_overld.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_using_declaration_overloads_from_typename_base::test(); +} + diff --git a/src/boost/libs/config/test/no_using_decl_overld_pass.cpp b/src/boost/libs/config/test/no_using_decl_overld_pass.cpp new file mode 100644 index 000000000..c5290fc45 --- /dev/null +++ b/src/boost/libs/config/test/no_using_decl_overld_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE +// This file should compile, if it does not then +// BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE should be defined. +// See file boost_no_using_decl_overld.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE +#include "boost_no_using_decl_overld.ipp" +#else +namespace boost_no_using_declaration_overloads_from_typename_base = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_using_declaration_overloads_from_typename_base::test(); +} + diff --git a/src/boost/libs/config/test/no_using_template_fail.cpp b/src/boost/libs/config/test/no_using_template_fail.cpp new file mode 100644 index 000000000..febbbcd66 --- /dev/null +++ b/src/boost/libs/config/test/no_using_template_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_USING_TEMPLATE +// This file should not compile, if it does then +// BOOST_NO_USING_TEMPLATE should not be defined. +// See file boost_no_using_template.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_USING_TEMPLATE +#include "boost_no_using_template.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_using_template::test(); +} + diff --git a/src/boost/libs/config/test/no_using_template_pass.cpp b/src/boost/libs/config/test/no_using_template_pass.cpp new file mode 100644 index 000000000..b48a31e36 --- /dev/null +++ b/src/boost/libs/config/test/no_using_template_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_USING_TEMPLATE +// This file should compile, if it does not then +// BOOST_NO_USING_TEMPLATE should be defined. +// See file boost_no_using_template.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_USING_TEMPLATE +#include "boost_no_using_template.ipp" +#else +namespace boost_no_using_template = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_using_template::test(); +} + diff --git a/src/boost/libs/config/test/no_variadic_macros_fail.cpp b/src/boost/libs/config/test/no_variadic_macros_fail.cpp new file mode 100644 index 000000000..d76c4f362 --- /dev/null +++ b/src/boost/libs/config/test/no_variadic_macros_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Tue Aug 17 09:59:01 2010 +// 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: generate.cpp 49281 2008-10-11 15:40:44Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_CXX11_VARIADIC_MACROS +// This file should not compile, if it does then +// BOOST_NO_CXX11_VARIADIC_MACROS should not be defined. +// See file boost_no_variadic_macros.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_VARIADIC_MACROS +#include "boost_no_variadic_macros.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_variadic_macros::test(); +} + diff --git a/src/boost/libs/config/test/no_variadic_macros_pass.cpp b/src/boost/libs/config/test/no_variadic_macros_pass.cpp new file mode 100644 index 000000000..291b6ea66 --- /dev/null +++ b/src/boost/libs/config/test/no_variadic_macros_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Tue Aug 17 09:59:01 2010 +// 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: generate.cpp 49281 2008-10-11 15:40:44Z johnmaddock $ +// + + +// Test file for macro BOOST_NO_CXX11_VARIADIC_MACROS +// This file should compile, if it does not then +// BOOST_NO_CXX11_VARIADIC_MACROS should be defined. +// See file boost_no_variadic_macros.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_VARIADIC_MACROS +#include "boost_no_variadic_macros.ipp" +#else +namespace boost_no_cxx11_variadic_macros = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_variadic_macros::test(); +} + diff --git a/src/boost/libs/config/test/no_variadic_templates_fail.cpp b/src/boost/libs/config/test/no_variadic_templates_fail.cpp new file mode 100644 index 000000000..05fc2c7ad --- /dev/null +++ b/src/boost/libs/config/test/no_variadic_templates_fail.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 07:24:54 2008 +// 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_VARIADIC_TEMPLATES +// This file should not compile, if it does then +// BOOST_NO_CXX11_VARIADIC_TEMPLATES should not be defined. +// See file boost_no_variadic_templates.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_CXX11_VARIADIC_TEMPLATES +#include "boost_no_variadic_templates.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_variadic_templates::test(); +} + diff --git a/src/boost/libs/config/test/no_variadic_templates_pass.cpp b/src/boost/libs/config/test/no_variadic_templates_pass.cpp new file mode 100644 index 000000000..2b95540ea --- /dev/null +++ b/src/boost/libs/config/test/no_variadic_templates_pass.cpp @@ -0,0 +1,37 @@ +// This file was automatically generated on Thu May 29 07:24:54 2008 +// 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_VARIADIC_TEMPLATES +// This file should compile, if it does not then +// BOOST_NO_CXX11_VARIADIC_TEMPLATES should be defined. +// See file boost_no_variadic_templates.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES +#include "boost_no_variadic_templates.ipp" +#else +namespace boost_no_cxx11_variadic_templates = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_cxx11_variadic_templates::test(); +} + diff --git a/src/boost/libs/config/test/no_void_returns_fail.cpp b/src/boost/libs/config/test/no_void_returns_fail.cpp new file mode 100644 index 000000000..ff08562a3 --- /dev/null +++ b/src/boost/libs/config/test/no_void_returns_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_VOID_RETURNS +// This file should not compile, if it does then +// BOOST_NO_VOID_RETURNS should not be defined. +// See file boost_no_void_returns.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_VOID_RETURNS +#include "boost_no_void_returns.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_void_returns::test(); +} + diff --git a/src/boost/libs/config/test/no_void_returns_pass.cpp b/src/boost/libs/config/test/no_void_returns_pass.cpp new file mode 100644 index 000000000..73a0882b7 --- /dev/null +++ b/src/boost/libs/config/test/no_void_returns_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_VOID_RETURNS +// This file should compile, if it does not then +// BOOST_NO_VOID_RETURNS should be defined. +// See file boost_no_void_returns.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_VOID_RETURNS +#include "boost_no_void_returns.ipp" +#else +namespace boost_no_void_returns = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_void_returns::test(); +} + diff --git a/src/boost/libs/config/test/no_wchar_t_fail.cpp b/src/boost/libs/config/test/no_wchar_t_fail.cpp new file mode 100644 index 000000000..c1b0712e3 --- /dev/null +++ b/src/boost/libs/config/test/no_wchar_t_fail.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_INTRINSIC_WCHAR_T +// This file should not compile, if it does then +// BOOST_NO_INTRINSIC_WCHAR_T should not be defined. +// See file boost_no_wchar_t.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 <boost/config.hpp> +#include "test.hpp" + +#ifdef BOOST_NO_INTRINSIC_WCHAR_T +#include "boost_no_wchar_t.ipp" +#else +#error "this file should not compile" +#endif + +int main( int, char *[] ) +{ + return boost_no_intrinsic_wchar_t::test(); +} + diff --git a/src/boost/libs/config/test/no_wchar_t_pass.cpp b/src/boost/libs/config/test/no_wchar_t_pass.cpp new file mode 100644 index 000000000..b31c07fb5 --- /dev/null +++ b/src/boost/libs/config/test/no_wchar_t_pass.cpp @@ -0,0 +1,34 @@ +// This file was automatically generated on Fri Dec 03 18:04:02 2004 +// 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. + +// Test file for macro BOOST_NO_INTRINSIC_WCHAR_T +// This file should compile, if it does not then +// BOOST_NO_INTRINSIC_WCHAR_T should be defined. +// See file boost_no_wchar_t.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 <boost/config.hpp> +#include "test.hpp" + +#ifndef BOOST_NO_INTRINSIC_WCHAR_T +#include "boost_no_wchar_t.ipp" +#else +namespace boost_no_intrinsic_wchar_t = empty_boost; +#endif + +int main( int, char *[] ) +{ + return boost_no_intrinsic_wchar_t::test(); +} + diff --git a/src/boost/libs/config/test/pragma_message_test.cpp b/src/boost/libs/config/test/pragma_message_test.cpp new file mode 100644 index 000000000..9464897c3 --- /dev/null +++ b/src/boost/libs/config/test/pragma_message_test.cpp @@ -0,0 +1,18 @@ +// Copyright 2017 Peter Dimov. +// +// Distributed under 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 + +#include <boost/config/pragma_message.hpp> + +BOOST_PRAGMA_MESSAGE("first message") + +#define MSG2 "second message" +BOOST_PRAGMA_MESSAGE(MSG2) + +#include <boost/config.hpp> // BOOST_STRINGIZE + +#define MSG3 third message +BOOST_PRAGMA_MESSAGE(BOOST_STRINGIZE(MSG3)) diff --git a/src/boost/libs/config/test/test.hpp b/src/boost/libs/config/test/test.hpp new file mode 100644 index 000000000..af7578096 --- /dev/null +++ b/src/boost/libs/config/test/test.hpp @@ -0,0 +1,21 @@ +// (C) Copyright John Maddock 2001. +// 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. + +#ifndef BOOST_CONFIG_TEST_HPP +#define BOOST_CONFIG_TEST_HPP + +namespace empty_boost{ + +int test() +{ + return 0; +} + +} + +#endif + diff --git a/src/boost/libs/config/test/threads/test_thread_fail1.cpp b/src/boost/libs/config/test/threads/test_thread_fail1.cpp new file mode 100644 index 000000000..5e0406bb3 --- /dev/null +++ b/src/boost/libs/config/test/threads/test_thread_fail1.cpp @@ -0,0 +1,10 @@ +// (C) Copyright John Maddock 2003. +// 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) + +// disable thread support: +#define BOOST_DISABLE_THREADS +// this should now be a compiler error: +#include <boost/config/requires_threads.hpp> +// we should never get here... diff --git a/src/boost/libs/config/test/threads/test_thread_fail2.cpp b/src/boost/libs/config/test/threads/test_thread_fail2.cpp new file mode 100644 index 000000000..56ba4a073 --- /dev/null +++ b/src/boost/libs/config/test/threads/test_thread_fail2.cpp @@ -0,0 +1,13 @@ +// (C) Copyright John Maddock 2003. +// 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) + +#include <boost/config.hpp> +// disable thread support: +#ifdef BOOST_HAS_THREADS +# undef BOOST_HAS_THREADS +#endif +// this should now be a compiler error: +#include <boost/config/requires_threads.hpp> +// we should never get here... diff --git a/src/boost/libs/config/tools/Jamfile.v2 b/src/boost/libs/config/tools/Jamfile.v2 new file mode 100644 index 000000000..de66b8d22 --- /dev/null +++ b/src/boost/libs/config/tools/Jamfile.v2 @@ -0,0 +1,15 @@ +# Copyright John Maddock 2005. +# 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) + +run generate.cpp + ../../regex/build//boost_regex + ../../filesystem/build//boost_filesystem ../../system/build//boost_system + : ../../.. +; + + + + + diff --git a/src/boost/libs/config/tools/configure.in b/src/boost/libs/config/tools/configure.in new file mode 100644 index 000000000..3e1425cec --- /dev/null +++ b/src/boost/libs/config/tools/configure.in @@ -0,0 +1,463 @@ +# copyright John Maddock 2003 +# 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) +# +# the following variables contain our macro definitions: +# +required_defs="" +required_undefs="" + +dnl Process this file with autoconf to produce a configure script. +dnl disable cache processing, it has no effect here: +define([AC_CACHE_LOAD], )dnl +define([AC_CACHE_SAVE], )dnl +AC_INIT(./tools/configure.in) + + +AC_ARG_ENABLE(test, --enable-test tests current settings rather than defining new ones) + +if test "foo"$enable_test = "foo"; then + enable_test="no" +fi + +cat << EOF +*** $0: boost configuration utility *** + +Please stand by while exploring compiler capabilities... +Be patient - this could take some time... + +Note that this test script only gives an approximate +configuration - you will need to test the results carefully +using the boost regression test suite before using the results. +EOF + +if test $enable_test = 'yes'; then + +cat << EOF + +This script reports only the difference between the detected +configuration, and the existing boost configuration. Its +primary aim is to quickly report how well boost is configured +for one compiler. + +*** + +EOF + +else + +cat << EOF + +*** + +EOF +fi + +AC_ARG_ENABLE(extension,[--enable-extension=<ext>], +[ +case "$enableval" in + no) AC_MSG_RESULT(Info :.cpp used as extension for tests) + ac_ext=cpp + ;; + *) AC_MSG_RESULT(Argument : .$enableval used as extension) + ac_ext=$enableval +esac +], +[AC_MSG_RESULT(Info : .cpp used as extension for tests) + ac_ext=cpp +] +) + +dnl figure out which version of sed to use, on some platforms +dnl the version in the path is not Unix conforming (MacOS X ? ) + +if test -f /bin/sed ; then + SED=/bin/sed +else + if test -f /usr/bin/sed ; then + SED=/usr/bin/sed + else + SED=sed + fi +fi + +dnl Set the boost main directory. +AC_MSG_CHECKING(for boost main tree) +boost_base= +AC_ARG_WITH(boost, + AC_HELP_STRING([--with-boost=DIR],[path to the boost main tree]), + [ + #echo "--with boost is set" + if test "x$withval" != "x"; then + if test "x$withval" != no; then + boost_base=`echo "$withval" | $SED 's,//*,/,g' | $SED 's,/$,,'` + #echo boost_base=$boost_base + if test -f "$boost_base/boost/config.hpp"; then + if test -f "$boost_base/libs/config/configure"; then :; else + boost_base= + #echo "$boost_base/libs/config/configure" not found + fi + else + #echo "$boost_base/boost/config.hpp" not found + boost_base= + fi + fi + fi + ] +) +if test "x$boost_base" = "x"; then + #echo '$0 = ' $0 + boost_base=`expr "x$0" : 'x\(.*\)/@<:@/@:>@*' \| '.'` + boost_base="$boost_base/../.." + #echo boost_base=$boost_base + if test -f "$boost_base/boost/config.hpp"; then + if test -f "$boost_base/libs/config/configure"; then :; else + boost_base= + fi + else + boost_base= + fi +fi +if test "x$boost_base" != "x"; then + AC_MSG_RESULT([$boost_base]) +else + AC_MSG_RESULT([not found]) + AC_MSG_ERROR([The boost main tree was not found. + Specify its location by the --with-boost option.]) +fi + + + +# Save that, as it is being redefined several times +use_ac_ext=$ac_ext + +AC_PROG_CXX +ac_ext=$use_ac_ext + +AC_LANG_CPLUSPLUS + +OLD_CXXFLAGS="$CXXFLAGS" + + +if test $enable_test = 'yes'; then + CXXFLAGS="-I$boost_base -I$boost_base/libs/config/test $CXXFLAGS" +else + CXXFLAGS="-I$boost_base -I$boost_base/libs/config/test $CXXFLAGS -DBOOST_NO_CONFIG" +fi + +# add the -AA conformance option to CXXFLAGS for HP aCC only +if test $CXX = 'aCC'; then + CXXFLAGS="-AA $CXXFLAGS" +fi + +dnl check for some standard libraries +dnl without these some of the tests may fail: + +AC_CHECK_LIB(pthread, pthread_exit) +AC_CHECK_LIB(m, cos) +AC_CHECK_LIB(rt, clock) + +# +# enumerate test files and test each one: +# +for file in $boost_base/libs/config/test/boost_no*.ipp; do + + basename=`echo $file | $SED 's/.*boost_\(.*\)\.ipp/\1/'` + macroname=`cat $file | grep '^//[[ ]]*MACRO:' | $SED 's/.*MACRO:[[ ]]*\([[_A-Z0-9]]*\).*/\1/'` + title=`cat $file | grep '^//[[ ]]*TITLE:' | $SED 's/.*TITLE:[[ ]]*\([[^ ]].*\)/\1/'` + namespace=`echo $macroname | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` + +#echo file = $file +#echo basename = $basename +#echo macroname = $macroname +#echo title = $title +#echo namespace = $namespace + + ac_ext=$use_ac_ext + if test $enable_test = 'yes'; then + AC_MSG_CHECKING($title (pass expected) ) + else + AC_MSG_CHECKING($title ) + fi + AC_TRY_RUN( + [ +#include <boost/config.hpp> +#include "test.hpp" + +#if !defined($macroname) || defined(BOOST_NO_CONFIG) +#include "boost_$basename.ipp" +#else +namespace ${namespace} = empty_boost; +#endif + +int main(){ return ${namespace}::test(); } ] + , + [AC_MSG_RESULT(OK)] + , + [AC_MSG_RESULT(Failed) + required_defs="$macroname $required_defs"] + ) + + if test $enable_test = 'yes'; then + + ac_ext=$use_ac_ext + AC_MSG_CHECKING($title (fail expected) ) + AC_TRY_RUN( + [ +#include <boost/config.hpp> +#include "test.hpp" + +#ifdef $macroname +#include "boost_$basename.ipp" +#else +#error "this file should not compile" +#endif + +int main() { return ${namespace}::test(); }] + , + [AC_MSG_RESULT(failed) + required_undefs="$macroname $required_undefs"] + , + [AC_MSG_RESULT(OK)] + ) + + fi + +done + +# +# enumerate optional test files and test each one: +# +for file in $boost_base/libs/config/test/boost_has*.ipp; do + + basename=`echo $file | $SED 's/.*boost_\(.*\)\.ipp/\1/'` + macroname=`cat $file | grep '^//[[ ]]*MACRO:' | $SED 's/.*MACRO:[[ ]]*\([[_A-Z0-9]]*\).*/\1/'` + title=`cat $file | grep '^//[[ ]]*TITLE:' | $SED 's/.*TITLE:[[ ]]*\([[^ ]].*\)/\1/'` + namespace=`echo $macroname | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` + +# echo $file +# echo $basename +# echo $macroname +# echo $title + + ac_ext=$use_ac_ext + if test $enable_test = 'yes'; then + AC_MSG_CHECKING($title (pass expected) ) + AC_TRY_RUN( + [ +#include <boost/config.hpp> +#include "test.hpp" + +#ifdef $macroname +#include "boost_$basename.ipp" +#else +namespace ${namespace} = empty_boost; +#endif + +int main(){ return ${namespace}::test(); }] + , + [AC_MSG_RESULT(OK)] + , + [AC_MSG_RESULT(Failed) + required_undefs="$macroname $required_undefs"] + ) + + AC_MSG_CHECKING($title (fail expected) ) + AC_TRY_RUN( + [ +#include <boost/config.hpp> +#include "test.hpp" + +#ifndef $macroname +#include "boost_$basename.ipp" +#else +#error "this file should not compile" +#endif + +int main(){ return ${namespace}::test(); }] + , + [ + AC_MSG_RESULT(failed) + required_defs="$macroname $required_defs" + ] + , + [ + AC_MSG_RESULT(OK) + ] + ) + + else + + ac_ext=$use_ac_ext + AC_MSG_CHECKING($title) + AC_TRY_RUN( + [ +#include <boost/config.hpp> +#include "test.hpp" + +#include "boost_$basename.ipp" + +int main(){ return ${namespace}::test(); }] + , + [ + AC_MSG_RESULT(Yes) + required_defs="$macroname $required_defs" + ] + , + [ + AC_MSG_RESULT(no) + ] + ) + + fi + +done + + +#echo $required_defs +#echo $required_undefs + +if test $enable_test = 'yes'; then + +if test "$required_defs" = ""; then +echo no boost macros need to be defined +echo no boost macros need to be defined >&5 +else +echo the following macros need to be defined +echo $required_defs +echo the following macros need to be defined >&5 +echo $required_defs >&5 +fi +if test "$required_undefs" = ""; then +echo no boost macros need to be undefined +echo no boost macros need to be undefined >&5 +else +echo "the following macros need to be undef'ed" +echo $required_undefs +echo "the following macros need to be undef'ed" >&5 +echo $required_undefs >&5 +fi + +else + +date_string=`date` + +echo boost_base=$boost_base + +cat > user.hpp << EOF +// (C) Copyright Boost.org 2001. +// Do not check in modified versions of this file, +// This file may be customised by the end user, but not by boost. + +// +// Use this file to define a site and compiler specific +// configuration policy, this version was auto-generated by +// configure on ${date_string} +// With the following options: +// CXX = ${CXX} +// CXXFLAGS = ${CXXFLAGS} +// LDFLAGS = ${LDFLAGS} +// LIBS = ${LIBS} +// + +// define this to disable all config options, +// excluding the user config. Use if your +// setup is fully ISO complient, and has no +// useful extentions, or for autoconf generated +// setups: +#ifndef BOOST_NO_CONFIG +# define BOOST_NO_CONFIG +#endif + + +// define if you want to disable threading support, even +// when available: +// #define BOOST_DISABLE_THREADS + +// define if you want the regex library to use the C locale +// even on Win32: +// #define BOOST_REGEX_USE_C_LOCALE + +// define this is you want the regex library to use the C++ +// locale: +// #define BOOST_REGEX_USE_CPP_LOCALE + + +// +// options added by configure: +// +EOF + +for name in $required_defs; do +echo '#define '"$name" >> user.hpp +done + +cat_conts=`cat user.hpp` + +# +# post configuration step: +# +AC_MSG_CHECKING(original configuration ) +rm -f conftest$ac_exeext +$CXX -I$boost_base $OLD_CXXFLAGS -DBOOST_NO_USER_CONFIG -o conftest$ac_exeext $LDFLAGS $boost_base/libs/config/test/config_info.cpp $LIBS >&5 2>&1 +./conftest >&5 2>&1 +AC_MSG_RESULT(done) +AC_MSG_CHECKING(new configuration ) +rm -f conftest$ac_exeext +$CXX -I$boost_base -I$boost_base/libs/config $OLD_CXXFLAGS -DBOOST_USER_CONFIG='"user.hpp"' -o conftest$ac_exeext $LDFLAGS $boost_base/libs/config/test/config_info.cpp $LIBS >&5 2>&1 +./conftest >&5 2>&1 +AC_MSG_RESULT(done) + +AC_OUTPUT( +[], +[ +cat > user.hpp << EEEOF +${cat_conts} +EEEOF +cat << EEEOF + +Adjustments to boost configuration have been written to +user.hpp. Copy this to boost/config/user.hpp to use "as is", +or define BOOST_SITE_CONFIG to point to its location. + +TREAT THIS FILE WITH CARE. +Autoconf generated options are not infallible! + +EEEOF +], +[ +cat_conts="$cat_conts" +] +) + +fi + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/boost/libs/config/tools/generate.cpp b/src/boost/libs/config/tools/generate.cpp new file mode 100644 index 000000000..b1b3c496e --- /dev/null +++ b/src/boost/libs/config/tools/generate.cpp @@ -0,0 +1,522 @@ +// (C) Copyright John Maddock 2004. +// 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) + +// +// This progam scans for *.ipp files in the libs/config/test +// directory and then generates the *.cpp test files from them +// along with config_test.cpp and a Jamfile. +// + +#include <boost/regex.hpp> +#include <boost/filesystem/path.hpp> +#include <boost/filesystem/operations.hpp> +#include <boost/filesystem/fstream.hpp> +#include <boost/detail/lightweight_main.hpp> +#include <iostream> +#include <sstream> +#include <string> +#include <set> +#include <ctime> + +namespace fs = boost::filesystem; + +fs::path config_path; + +std::string copyright( +"// Copyright John Maddock 2002-4.\n" +"// Use, modification and distribution are subject to the \n" +"// 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" +"// See http://www.boost.org/libs/config for the most recent version." +"//\n// Revision $Id$\n//\n"); + +std::stringstream config_test1; +std::stringstream config_test1a; +std::stringstream config_test2; +std::stringstream jamfile; +std::stringstream jamfile_v2; +std::stringstream build_config_test; +std::stringstream build_config_jamfile; +std::set<std::string> macro_list; +std::set<std::string> feature_list; + +void write_config_info() +{ + // load the file into memory so we can scan it: + fs::ifstream ifs(config_path / "config_info.cpp"); + std::string file_text; + std::copy(std::istreambuf_iterator<char>(ifs), std::istreambuf_iterator<char>(), std::back_inserter(file_text)); + ifs.close(); + // create macro list: + std::stringstream ss; + for(std::set<std::string>::const_iterator i(macro_list.begin()), j(macro_list.end()); + i != j; + ++i) + { + ss << " PRINT_MACRO(" << *i << ");\n"; + } + std::string macros = ss.str(); + // scan for Boost macro block: + boost::regex re("BEGIN\\s+GENERATED\\s+BLOCK\\s+DO\\s+NOT\\s+EDIT\\s+THIS[^\\n]+\\n(.*?)\\n\\s+//\\s*END\\s+GENERATED\\s+BLOCK"); + boost::smatch what; + if(boost::regex_search(file_text, what, re)) + { + std::string new_text; + new_text.append(what.prefix().first, what[1].first); + new_text.append(macros); + new_text.append(what[1].second, what.suffix().second); + fs::ofstream ofs(config_path / "config_info.cpp"); + ofs << new_text; + } +} + +void write_config_test() +{ + fs::ofstream ofs(config_path / "config_test.cpp"); + time_t t = std::time(0); + ofs << "// This file was automatically generated on " << std::ctime(&t); + ofs << "// by libs/config/tools/generate.cpp\n" << copyright << std::endl; + ofs << "// Test file for config setup\n" + "// This file should compile, if it does not then\n" + "// one or more macros need to be defined.\n" + "// see boost_*.ipp for more details\n\n" + "// Do not edit this file, it was generated automatically by\n\n" + "#include <boost/config.hpp>\n#include <iostream>\n#include \"test.hpp\"\n\n" + "int error_count = 0;\n\n"; + ofs << config_test1.str() << std::endl; + ofs << config_test1a.str() << std::endl; + ofs << "int main( int, char *[] )\n{\n" << config_test2.str() << " return error_count;\n}\n\n"; +} + +void write_jamfile_v2() +{ + fs::ofstream ofs(config_path / "all" / "Jamfile.v2"); + time_t t = std::time(0); + ofs << "#\n# Regression test Jamfile for boost configuration setup.\n# *** DO NOT EDIT THIS FILE BY HAND ***\n" + "# This file was automatically generated on " << std::ctime(&t); + ofs << "# by libs/config/tools/generate.cpp\n" + "# Copyright John Maddock.\n" + "# Use, modification and distribution are subject to the \n" + "# 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# If you need to alter build preferences then set them in\n" + "# the template defined in options_v2.jam.\n#\n" + "path-constant DOT : . ;\n" + "include $(DOT)/options_v2.jam ;\n\n" + "run ../config_info.cpp : : : <threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static ;\n" + "run ../config_info.cpp : : : <threading>multi : config_info_threaded ;\n" + "run ../math_info.cpp : : : <toolset>borland:<runtime-link>static <toolset>borland:<link>static ;\n" + "run ../config_test.cpp : : : <threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static ;\n" + "run ../config_test.cpp : : : <threading>multi : config_test_threaded ;\n" + "run ../limits_test.cpp ../../../test/build//boost_test_exec_monitor ;\n" + "run ../abi/abi_test.cpp ../abi/main.cpp ;\n\n"; + ofs << jamfile_v2.str() << std::endl; + +} + +void write_test_file(const fs::path& file, + const std::string& macro_name, + const std::string& namespace_name, + const std::string& header_file, + bool positive_test, + bool expect_success) +{ + if(!fs::exists(file)) + { + std::cout << "Writing test file " << file.string() << std::endl; + + fs::ofstream ofs(file); + std::time_t t = std::time(0); + ofs << "// This file was automatically generated on " << std::ctime(&t); + ofs << "// by libs/config/tools/generate.cpp\n" << copyright << std::endl; + ofs << "\n// Test file for macro " << macro_name << std::endl; + + if(expect_success) + { + ofs << "// This file should compile, if it does not then\n" + "// " << macro_name << " should "; + if(positive_test) + ofs << "not "; + ofs << "be defined.\n"; + } + else + { + ofs << "// This file should not compile, if it does then\n" + "// " << macro_name << " should "; + if(!positive_test) + ofs << "not "; + ofs << "be defined.\n"; + } + ofs << "// See file " << header_file << " for details\n\n"; + + ofs << "// Must not have BOOST_ASSERT_CONFIG set; it defeats\n" + "// the objective of this file:\n" + "#ifdef BOOST_ASSERT_CONFIG\n" + "# undef BOOST_ASSERT_CONFIG\n" + "#endif\n\n"; + + static const boost::regex tr1_exp("BOOST_HAS_TR1.*"); + + ofs << "#include <boost/config.hpp>\n"; + + ofs << "#include \"test.hpp\"\n\n" + "#if"; + if(positive_test != expect_success) + ofs << "n"; + ofs << "def " << macro_name << + "\n#include \"" << header_file << + "\"\n#else\n"; + if(expect_success) + ofs << "namespace " << namespace_name << " = empty_boost;\n"; + else + ofs << "#error \"this file should not compile\"\n"; + ofs << "#endif\n\n"; + + ofs << "int main( int, char *[] )\n{\n return " << namespace_name << "::test();\n}\n\n"; + } + else + { + std::cout << "Skipping existing test file " << file.string() << std::endl; + } +} + +void write_build_tests() +{ + fs::ofstream ofs(config_path / ".." / "checks" / "test_case.cpp"); + time_t t = std::time(0); + ofs << "// This file was automatically generated on " << std::ctime(&t); + ofs << "// by libs/config/tools/generate.cpp\n" << copyright << std::endl; + ofs << "#include <boost/config.hpp>\n\n"; + ofs << build_config_test.str() << std::endl; + ofs << "int main( int, char *[] )\n{\n" << " return 0;\n}\n\n"; +} + +void write_build_check_jamfile() +{ + fs::ofstream ofs(config_path / ".." / "checks" / "Jamfile.v2"); + time_t t = std::time(0); + ofs << "#\n# *** DO NOT EDIT THIS FILE BY HAND ***\n" + "# This file was automatically generated on " << std::ctime(&t); + ofs << "# by libs/config/tools/generate.cpp\n" + "# Copyright John Maddock.\n" + "# Use, modification and distribution are subject to the \n" + "# 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" + "\n" + ; + ofs << build_config_jamfile.str() << std::endl; +} + +void process_ipp_file(const fs::path& file, bool positive_test) +{ + std::cout << "Info: Scanning file: " << file.string() << std::endl; + + // our variables: + std::string file_text; + std::string macro_name; + std::string namespace_name; + fs::path positive_file; + fs::path negative_file; + + // load the file into memory so we can scan it: + fs::ifstream ifs(file); + std::copy(std::istreambuf_iterator<char>(ifs), std::istreambuf_iterator<char>(), std::back_inserter(file_text)); + ifs.close(); + // scan for the macro name: + boost::regex macro_regex("//\\s*MACRO\\s*:\\s*(\\w+)"); + boost::smatch macro_match; + if(boost::regex_search(file_text, macro_match, macro_regex)) + { + macro_name = macro_match[1]; + macro_list.insert(macro_name); + namespace_name = boost::regex_replace(file_text, macro_regex, "\\L$1", boost::format_first_only | boost::format_no_copy); + } + if(macro_name.empty()) + { + std::cout << "Error: no macro definition found in " << file.string(); + } + else + { + std::cout << "Info: Macroname: " << macro_name << std::endl; + } + + // get the output filesnames: + boost::regex file_regex("boost_([^.]+)\\.ipp"); + positive_file = file.branch_path() / boost::regex_replace(file.leaf().string(), file_regex, "$1_pass.cpp"); + negative_file = file.branch_path() / boost::regex_replace(file.leaf().string(), file_regex, "$1_fail.cpp"); + write_test_file(positive_file, macro_name, namespace_name, file.leaf().string(), positive_test, true); + write_test_file(negative_file, macro_name, namespace_name, file.leaf().string(), positive_test, false); + + // always create config_test data, + // positive and negative tests go to separate streams, because for some + // reason some compilers choke unless we put them in a particular order... + std::ostream* pout = positive_test ? &config_test1a : &config_test1; + *pout << "#if"; + if(!positive_test) + *pout << "n"; + *pout << "def " << macro_name + << "\n#include \"" << file.leaf().string() << "\"\n#else\nnamespace " + << namespace_name << " = empty_boost;\n#endif\n"; + + config_test2 << " if(0 != " << namespace_name << "::test())\n" + " {\n" + " std::cerr << \"Failed test for " << macro_name << " at: \" << __FILE__ << \":\" << __LINE__ << std::endl;\n" + " ++error_count;\n" + " }\n"; + + // always generate the jamfile data: + jamfile << "test-suite \"" << macro_name << "\" : \n" + "[ run " << positive_file.leaf().string() << " <template>config_options ]\n" + "[ compile-fail " << negative_file.leaf().string() << " <template>config_options ] ;\n"; + + jamfile_v2 << "test-suite \"" << macro_name << "\" : \n" + "[ run ../" << positive_file.leaf().string() << " ]\n" + "[ compile-fail ../" << negative_file.leaf().string() << " ] ;\n"; + + // Generate data for the Build-checks test file: + build_config_test << "#ifdef TEST_" << macro_name << std::endl; + if (positive_test) + { + build_config_test << "# ifndef " << macro_name << "\n# error \"Feature macro " << macro_name << " is not defined.\"\n# endif\n"; + } + else + { + build_config_test << "# ifdef " << macro_name << "\n# error \"Defect macro " << macro_name << " is defined.\"\n# endif\n"; + } + build_config_test << "#endif\n"; + + // 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"); + if(feature_list.find(feature_name) == feature_list.end()) + build_config_jamfile << "obj " << feature_name << " : test_case.cpp : <define>TEST_" << macro_name << " ;\n"; + feature_list.insert(feature_name); +} + +void write_std_check(std::string macroname, int min_value, std::string header, int std_version, bool primary = true) +{ + std::string test_name(macroname); + while (test_name[0] == '_') + test_name.erase(0, 1); + std::string test_basename = test_name; + test_name.append("_"); + test_name.append(1, std_version > 10 ? std_version / 10 + '0' : '0'); + test_name.append(1, std_version % 10 + '0'); + fs::ofstream ofs(config_path / ".." / "checks" / "std" / (test_name + ".cpp")); + time_t t = std::time(0); + ofs << "// This file was automatically generated on " << std::ctime(&t); + ofs << "// by libs/config/tools/generate.cpp\n" << copyright << std::endl; + ofs << "#ifdef __has_include\n#if __has_include(<version>)\n#include <version>\n#endif\n#endif\n\n"; + if (header.size()) + { + ofs << "#include <" << header << ">\n\n"; + } + ofs << "#ifndef " << macroname << "\n#error \"Macro << " << macroname << " is not set\"\n#endif\n\n"; + ofs << "#if " << macroname << " < " << min_value << "\n#error \"Macro " << macroname << " had too low a value\"\n#endif\n\n"; + ofs << "int main( int, char *[] )\n{\n" << " return 0;\n}\n\n"; + + build_config_jamfile << "obj " << test_name << " : std/" << test_name << ".cpp ;\n"; + if(primary) + build_config_jamfile << "alias " << test_basename << " : " << test_name << " ;\n"; +} + +void write_std_config_checks() +{ + // C++20 + write_std_check("__cpp_impl_destroying_delete", 201806, "", 20); + write_std_check("__cpp_lib_destroying_delete", 201806, "new", 20); + write_std_check("__cpp_char8_t", 201811, "", 20); + write_std_check("__cpp_impl_three_way_comparison", 201711, "", 20); + write_std_check("__cpp_lib_three_way_comparison", 201711, "compare", 20); + write_std_check("__cpp_conditional_explicit", 201806, "", 20); + write_std_check("__cpp_nontype_template_parameter_class", 201806, "", 20); + write_std_check("__cpp_lib_char8_t", 201811, "atomic", 20); + write_std_check("__cpp_lib_concepts", 201806, "concepts", 20); + write_std_check("__cpp_lib_constexpr_swap_algorithms", 201806, "algorithm", 20); + write_std_check("__cpp_lib_constexpr_misc", 201811, "array", 20); + write_std_check("__cpp_lib_bind_front", 201811, "functional", 20); + write_std_check("__cpp_lib_is_constant_evaluated", 201811, "type_traits", 20); + write_std_check("__cpp_lib_erase_if", 201811, "string", 20); + write_std_check("__cpp_lib_list_remove_return_type", 201806, "forward_list", 20); + write_std_check("__cpp_lib_generic_unordered_lookup", 201811, "unordered_map", 20); + write_std_check("__cpp_lib_ranges", 201811, "algorithm", 20); + write_std_check("__cpp_lib_bit_cast", 201806, "bit", 20); + write_std_check("__cpp_lib_atomic_ref", 201806, "atomic", 20); + // C++17 + write_std_check("__cpp_hex_float", 201603, "", 17); + write_std_check("__cpp_inline_variables", 201606, "", 17); + write_std_check("__cpp_aligned_new", 201606, "", 17); + write_std_check("__cpp_guaranteed_copy_elision", 201606, "", 17); + write_std_check("__cpp_noexcept_function_type", 201510, "", 17); + write_std_check("__cpp_fold_expressions", 201603, "", 17); + write_std_check("__cpp_capture_star_this", 201603, "", 17); + write_std_check("__cpp_constexpr", 201603, "", 17, false); + write_std_check("__cpp_if_constexpr", 201606, "", 17); + write_std_check("__cpp_range_based_for", 201603, "", 17, false); + write_std_check("__cpp_static_assert", 201411, "", 17, false); + write_std_check("__cpp_deduction_guides", 201611, "", 17); // NOTE: this is the pre-std version number used by gcc-8, is this OK??? + write_std_check("__cpp_nontype_template_parameter_auto", 201606, "", 17); + write_std_check("__cpp_namespace_attributes", 201411, "", 17); + write_std_check("__cpp_enumerator_attributes", 201411, "", 17); + write_std_check("__cpp_inheriting_constructors", 201511, "", 17, false); + write_std_check("__cpp_variadic_using", 201611, "", 17); + write_std_check("__cpp_structured_bindings", 201606, "", 17); + write_std_check("__cpp_aggregate_bases", 201603, "", 17); + write_std_check("__cpp_nontype_template_args", 201411, "", 17); + write_std_check("__cpp_template_template_args", 201611, "", 17); + write_std_check("__cpp_lib_byte", 201603, "cstddef", 17); + write_std_check("__cpp_lib_hardware_interference_size", 201703, "new", 17); + write_std_check("__cpp_lib_launder", 201606, "new", 17); + write_std_check("__cpp_lib_uncaught_exceptions", 201411, "exception", 17); + write_std_check("__cpp_lib_as_const", 201510, "utility", 17); + write_std_check("__cpp_lib_make_from_tuple", 201606, "tuple", 17); + write_std_check("__cpp_lib_apply", 201603, "tuple", 17); + write_std_check("__cpp_lib_optional", 201606, "optional", 17); + write_std_check("__cpp_lib_variant", 201606, "variant", 17); + write_std_check("__cpp_lib_any", 201606, "any", 17); + write_std_check("__cpp_lib_addressof_constexpr", 201603, "memory", 17); + write_std_check("__cpp_lib_raw_memory_algorithms", 201606, "memory", 17); + write_std_check("__cpp_lib_transparent_operators", 201510, "memory", 17, false); + write_std_check("__cpp_lib_enable_shared_from_this", 201603, "memory", 17); + write_std_check("__cpp_lib_shared_ptr_weak_type", 201606, "memory", 17); + write_std_check("__cpp_lib_shared_ptr_arrays", 201611, "memory", 17); + write_std_check("__cpp_lib_memory_resource", 201603, "memory_resource", 17); + write_std_check("__cpp_lib_boyer_moore_searcher", 201603, "functional", 17); + write_std_check("__cpp_lib_invoke", 201411, "functional", 17); + write_std_check("__cpp_lib_not_fn", 201603, "functional", 17); + write_std_check("__cpp_lib_void_t", 201411, "type_traits", 17); + write_std_check("__cpp_lib_bool_constant", 201505, "type_traits", 17); + write_std_check("__cpp_lib_type_trait_variable_templates", 201510, "type_traits", 17); + write_std_check("__cpp_lib_logical_traits", 201510, "type_traits", 17); + write_std_check("__cpp_lib_is_swappable", 201603, "type_traits", 17); + write_std_check("__cpp_lib_is_invocable", 201703, "type_traits", 17); + write_std_check("__cpp_lib_has_unique_object_representations", 201606, "type_traits", 17); + write_std_check("__cpp_lib_is_aggregate", 201703, "type_traits", 17); + write_std_check("__cpp_lib_chrono", 201611, "chrono", 17); + write_std_check("__cpp_lib_execution", 201603, "execution", 17); + write_std_check("__cpp_lib_parallel_algorithm", 201603, "algorithm", 17); + write_std_check("__cpp_lib_to_chars", 201611, "utility", 17); + write_std_check("__cpp_lib_string_view", 201606, "string", 17); + write_std_check("__cpp_lib_allocator_traits_is_always_equal", 201411, "memory", 17); + write_std_check("__cpp_lib_incomplete_container_elements", 201505, "forward_list", 17); + write_std_check("__cpp_lib_map_try_emplace", 201411, "map", 17); + write_std_check("__cpp_lib_unordered_map_try_emplace", 201411, "unordered_map", 17); + write_std_check("__cpp_lib_node_extract", 201606, "map", 17); + write_std_check("__cpp_lib_array_constexpr", 201603, "iterator", 17); + write_std_check("__cpp_lib_nonmember_container_access", 201411, "iterator", 17); + write_std_check("__cpp_lib_sample", 201603, "algorithm", 17); + write_std_check("__cpp_lib_clamp", 201603, "algorithm", 17); + write_std_check("__cpp_lib_gcd_lcm", 201606, "numeric", 17); + write_std_check("__cpp_lib_hypot", 201603, "cmath", 17); + write_std_check("__cpp_lib_math_special_functions", 201603, "cmath", 17); + write_std_check("__cpp_lib_filesystem", 201703, "filesystem", 17); + write_std_check("__cpp_lib_atomic_is_always_lock_free", 201603, "atomic", 17); + write_std_check("__cpp_lib_shared_mutex", 201505, "shared_mutex", 17); + write_std_check("__cpp_lib_scoped_lock", 201703, "mutex", 17); + // C++14 + write_std_check("__cpp_binary_literals", 201304, "", 14); + write_std_check("__cpp_init_captures", 201304, "", 14); + write_std_check("__cpp_generic_lambdas", 201304, "", 14); + write_std_check("__cpp_sized_deallocation", 201309, "", 14); + write_std_check("__cpp_constexpr", 201304, "", 14, false); + write_std_check("__cpp_decltype_auto", 201304, "", 14); + write_std_check("__cpp_return_type_deduction", 201304, "", 14); + write_std_check("__cpp_aggregate_nsdmi", 201304, "", 14); + write_std_check("__cpp_variable_templates", 201304, "", 14); + write_std_check("__cpp_lib_integer_sequence", 201304, "utility", 14); + write_std_check("__cpp_lib_exchange_function", 201304, "utility", 14); + write_std_check("__cpp_lib_tuples_by_type", 201304, "utility", 14); + write_std_check("__cpp_lib_tuple_element_t", 201402, "tuple", 14); + write_std_check("__cpp_lib_make_unique", 201304, "memory", 14); + write_std_check("__cpp_lib_transparent_operators", 201210, "functional", 14); + write_std_check("__cpp_lib_integral_constant_callable", 201304, "type_traits", 14); + write_std_check("__cpp_lib_transformation_trait_aliases", 201304, "type_traits", 14); + write_std_check("__cpp_lib_result_of_sfinae", 201210, "functional", 14); + write_std_check("__cpp_lib_is_final", 201402, "type_traits", 14); + write_std_check("__cpp_lib_is_null_pointer", 201309, "type_traits", 14); + write_std_check("__cpp_lib_chrono_udls", 201304, "chrono", 14); + write_std_check("__cpp_lib_string_udls", 201304, "string", 14); + write_std_check("__cpp_lib_generic_associative_lookup", 201304, "map", 14); + write_std_check("__cpp_lib_null_iterators", 201304, "iterator", 14); + write_std_check("__cpp_lib_make_reverse_iterator", 201402, "iterator", 14); + write_std_check("__cpp_lib_robust_nonmodifying_seq_ops", 201304, "algorithm", 14); + write_std_check("__cpp_lib_complex_udls", 201309, "complex", 14); + write_std_check("__cpp_lib_quoted_string_io", 201304, "iomanip", 14); + write_std_check("__cpp_lib_shared_timed_mutex", 201402, "shared_mutex", 14); + // C++11 + write_std_check("__cpp_unicode_characters", 200704, "", 11); + write_std_check("__cpp_raw_strings", 200710, "", 11); + write_std_check("__cpp_unicode_literals", 200710, "", 11); + write_std_check("__cpp_user_defined_literals", 200809, "", 11); + write_std_check("__cpp_threadsafe_static_init", 200806, "", 11); + write_std_check("__cpp_lambdas", 200907, "", 11); + write_std_check("__cpp_constexpr", 200704, "", 11); + write_std_check("__cpp_range_based_for", 200907, "", 11); + write_std_check("__cpp_static_assert", 200410, "", 11); + write_std_check("__cpp_decltype", 200707, "", 11); + write_std_check("__cpp_attributes", 200809, "", 11); + write_std_check("__cpp_rvalue_references", 200610, "", 11); + write_std_check("__cpp_variadic_templates", 200704, "", 11); + write_std_check("__cpp_initializer_lists", 200806, "", 11); + write_std_check("__cpp_explicit_conversion", 200710, "", 11); + write_std_check("__cpp_delegating_constructors", 200604, "", 11); + write_std_check("__cpp_nsdmi", 200809, "", 11); + write_std_check("__cpp_inheriting_constructors", 200802, "", 11); + write_std_check("__cpp_ref_qualifiers", 200710, "", 11); + write_std_check("__cpp_alias_templates", 200704, "", 11); + // C++98 + write_std_check("__cpp_rtti", 199711, "", 03); + write_std_check("__cpp_exceptions", 199711, "", 03); +} + +int cpp_main(int argc, char* argv[]) +{ + // + // get the boost path to begin with: + // + if(argc > 1) + { + fs::path p(argv[1]); + config_path = p / "libs" / "config" / "test" ; + } + else + { + // try __FILE__: + fs::path p(__FILE__); + config_path = p.branch_path().branch_path() / "test"; + } + std::cout << "Info: Boost.Config test path set as: " << config_path.string() << std::endl; + + // enumerate *.ipp files and store them in a map for now: + boost::regex ipp_mask("boost_(?:(has)|no).*\\.ipp"); + boost::smatch ipp_match; + fs::directory_iterator i(config_path), j; + std::map<fs::path, bool> files_to_process; + while(i != j) + { + if(boost::regex_match(i->path().leaf().string(), ipp_match, ipp_mask)) + { + files_to_process[*i] = ipp_match[1].matched; + } + ++i; + } + // Enumerate the files and process them, by defering this until now + // the results are always alphabetized which reduces churn in the + // generated files. + for(std::map<fs::path, bool>::const_iterator pos = files_to_process.begin(); pos != files_to_process.end(); ++pos) + { + process_ipp_file(pos->first, pos->second); + } + write_config_test(); + write_jamfile_v2(); + write_config_info(); + write_std_config_checks(); + write_build_tests(); + write_build_check_jamfile(); + return 0; +} + |