forked from boostorg/config
Add more macros for removed std lib features:
BOOST_NO_CXX98_FUNCTION_BASE BOOST_NO_CXX98_BINDERS Added new documentation section for features that have been removed from the standard.
This commit is contained in:
1 parent
5193948558
commit
0e364efe0b
16 files changed
+387
-5
No files matched your search
+10
-1
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# Regression test Jamfile for boost configuration setup.
|
||||
# *** DO NOT EDIT THIS FILE BY HAND ***
|
||||
# This file was automatically generated on Mon Apr 17 12:45:44 2017
|
||||
# This file was automatically generated on Mon Apr 17 18:35:54 2017
|
||||
# by libs/config/tools/generate.cpp
|
||||
# Copyright John Maddock.
|
||||
# Use, modification and distribution are subject to the
|
||||
@@ -370,6 +370,15 @@ test-suite "BOOST_NO_CXX17_STD_APPLY" :
|
||||
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_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 ] ;
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1078,6 +1078,9 @@ void print_boost_macros()
|
||||
PRINT_MACRO(BOOST_NO_CXX14_VARIABLE_TEMPLATES);
|
||||
PRINT_MACRO(BOOST_NO_CXX17_STD_APPLY);
|
||||
PRINT_MACRO(BOOST_NO_CXX17_STD_INVOKE);
|
||||
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);
|
||||
@@ -1153,6 +1156,10 @@ void print_boost_macros()
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
+31
-1
@@ -1,4 +1,4 @@
|
||||
// This file was automatically generated on Mon Apr 17 12:45:44 2017
|
||||
// This file was automatically generated on Mon Apr 17 18:35:54 2017
|
||||
// by libs/config/tools/generate.cpp
|
||||
// Copyright John Maddock 2002-4.
|
||||
// Use, modification and distribution are subject to the
|
||||
@@ -337,6 +337,21 @@ namespace boost_no_cxx17_std_apply = empty_boost;
|
||||
#else
|
||||
namespace boost_no_cxx17_std_invoke = 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
|
||||
@@ -1606,6 +1621,21 @@ int main( int, char *[] )
|
||||
std::cerr << "Failed test for BOOST_NO_CXX17_STD_INVOKE 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;
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user