Merge config changes from Trunk.

[SVN r76122]
This commit is contained in:
John Maddock
2011-12-23 17:17:31 +00:00
parent 7bd78dda03
commit 3b7ff73e9d
27 changed files with 471 additions and 154 deletions
+1 -1
View File
@@ -1,7 +1,7 @@
#
# Regression test Jamfile for boost configuration setup.
# *** DO NOT EDIT THIS FILE BY HAND ***
# This file was automatically generated on Wed Jul 13 18:50:14 2011
# This file was automatically generated on Sun Nov 27 09:43:19 2011
# by libs/config/tools/generate.cpp
# Copyright John Maddock.
# Use, modification and distribution are subject to the
+1 -2
View File
@@ -14,10 +14,9 @@
namespace boost_has_ftime{
void f()
void f(FILETIME)
{
// this is never called, it just has to compile:
FILETIME ft;
}
int test()
+11 -1
View File
@@ -13,9 +13,19 @@
namespace boost_no_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 = u"abc";
const char16_t* p;
f(p);
return 0;
}
+11 -1
View File
@@ -12,9 +12,19 @@
namespace boost_no_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 = U"abc";
const char32_t* p;
f(p);
return 0;
}
+3
View File
@@ -12,6 +12,8 @@
namespace boost_no_constexpr {
void quiet_warning(int){}
constexpr int square(int x) { return x * x; } // from N2235
// from 5.19:
@@ -37,6 +39,7 @@ X<a> xx; // OK: unique conversion to int
int test()
{
int i = square(5);
quiet_warning(i);
return 0;
}
+3
View File
@@ -13,6 +13,8 @@
namespace boost_no_decltype {
void quiet_warning(int){}
struct test_class
{
test_class() {}
@@ -39,6 +41,7 @@ int test()
{
int i;
decltype(i) j;
// quiet_warning(j);
decltype(get_test_class()) k;
#ifndef _MSC_VER
// Although the VC++ decltype is buggy, we none the less enable support,
+1 -1
View File
@@ -11,7 +11,7 @@
// DESCRIPTION: The compiler does not support C++0x defaulted functions
#if defined(__GNUC__) && !defined(__GXX_EXPERIMENTAL_CXX0X__) && !defined(BOOST_INTEL_STDCXX0X)
# error Defaulted functions aren't really supported in non-C++0x mode
# error Defaulted functions are not supported in non-C++0x mode
#endif
namespace boost_no_defaulted_functions {
+1 -1
View File
@@ -11,7 +11,7 @@
// DESCRIPTION: The compiler does not support C++0x =delete functions
#if defined(__GNUC__) && !defined(__GXX_EXPERIMENTAL_CXX0X__) && !defined(BOOST_INTEL_STDCXX0X)
# error Deleted functions aren't really supported in non-C++0x mode
# error Deleted functions are not supported in non-C++0x mode
#endif
namespace boost_no_deleted_functions {
+4 -1
View File
@@ -11,11 +11,13 @@
// 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 isn't really available in non-C++0x mode
# error This feature is not available in non-C++0x mode
#endif
namespace boost_no_explicit_conversion_operators {
void quiet_warning(int){}
struct foo {
explicit operator int() { return 1; }
};
@@ -24,6 +26,7 @@ int test()
{
foo f;
int i = int(f);
quiet_warning(i);
return 0;
}
+3
View File
@@ -16,6 +16,8 @@
namespace boost_no_initializer_lists {
void quiet_warning(const std::initializer_list<int>&){}
void f(std::initializer_list<int>)
{
}
@@ -25,6 +27,7 @@ int test()
std::vector<std::string> v{"once", "upon", "a", "time"}; // See C++ std 8.5.4
f( { 1, 2, 3, 4 } );
std::initializer_list<int> x = { 1, 2 };
quiet_warning(x);
return 0;
}
+1 -1
View File
@@ -11,7 +11,7 @@
// 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 isn't really available in non-C++0x mode
# error This feature is not available in non-C++0x mode
#endif
namespace boost_no_lambdas {
+3
View File
@@ -11,12 +11,15 @@
namespace boost_no_noexcept {
void quiet_warning(bool){}
int f() noexcept ;
int g() noexcept( noexcept( f() ) ) ;
int test()
{
bool b = noexcept( g() );
quiet_warning(b);
return 0;
}
+3
View File
@@ -12,9 +12,12 @@
namespace boost_no_nullptr {
void quiet_warning(const int*){}
int test()
{
int * p = nullptr;
quiet_warning(p);
return 0;
}
+5
View File
@@ -12,10 +12,15 @@
namespace boost_no_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;
}
+2
View File
@@ -13,10 +13,12 @@
namespace boost_no_std_typeinfo
{
void quiet_warning(const std::type_info*){}
int test()
{
std::type_info * p = 0;
quiet_warning(p);
return 0;
}
+4
View File
@@ -12,10 +12,14 @@
namespace boost_no_unicode_literals {
void quiet_warning(const char*){}
int test()
{
const char* c8 = u8"";
const char16_t* c16 = u"";
const char32_t* c32 = U"";
quiet_warning(c8);
return 0;
}
+3 -1
View File
@@ -49,13 +49,15 @@
namespace boost_no_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;
}
+6
View File
@@ -1102,6 +1102,10 @@ void print_boost_macros()
// END GENERATED BLOCK
PRINT_MACRO(BOOST_INTEL);
@@ -1111,6 +1115,8 @@ void print_boost_macros()
PRINT_MACRO(BOOST_CONSTEXPR);
PRINT_MACRO(BOOST_CONSTEXPR_OR_CONST);
PRINT_MACRO(BOOST_STATIC_CONSTEXPR);
PRINT_MACRO(BOOST_NOEXCEPT);
PRINT_MACRO(BOOST_FORCEINLINE);
}
void print_separator()
+1 -1
View File
@@ -1,4 +1,4 @@
// This file was automatically generated on Wed Jul 13 18:50:14 2011
// This file was automatically generated on Sun Nov 27 09:43:19 2011
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-4.
// Use, modification and distribution are subject to the