diff --git a/development/cs-win32.html b/development/cs-win32.html index 94ba723..6e98250 100644 --- a/development/cs-win32.html +++ b/development/cs-win32.html @@ -8,15 +8,18 @@ Compiler Status: win32

Compiler Status: win32

-

Run Date: 28 Jan 2001 13:03 GMT

+

Run Date: 03 Feb 2001 11:25 GMT

System Configuration: Microsoft Windows 32bit

- - + + + + + @@ -27,6 +30,9 @@ Compiler Status: win32 + + + @@ -35,6 +41,9 @@ Compiler Status: win32 + + + @@ -43,6 +52,9 @@ Compiler Status: win32 + + + @@ -51,11 +63,17 @@ Compiler Status: win32 + + + + + + @@ -67,6 +85,9 @@ Compiler Status: win32 + + + @@ -75,12 +96,18 @@ Compiler Status: win32 + + + - + + + + @@ -91,6 +118,9 @@ Compiler Status: win32 + + + @@ -99,6 +129,9 @@ Compiler Status: win32 + + + @@ -107,12 +140,18 @@ Compiler Status: win32 + + + + + + diff --git a/development/include/boost/type_traits/transform_traits.hpp b/development/include/boost/type_traits/transform_traits.hpp index 7d245d1..b9d487c 100644 --- a/development/include/boost/type_traits/transform_traits.hpp +++ b/development/include/boost/type_traits/transform_traits.hpp @@ -169,7 +169,16 @@ public: } // namespace boost +#ifdef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION +// +// if there is no partial specialisation support +// include a bunch of full specialisations as a workaround: +// +#include +#endif + #endif // TRANSFORM_TRAITS_HPP + diff --git a/development/include/boost/type_traits/transform_traits_spec.hpp b/development/include/boost/type_traits/transform_traits_spec.hpp new file mode 100644 index 0000000..8d9560d --- /dev/null +++ b/development/include/boost/type_traits/transform_traits_spec.hpp @@ -0,0 +1,75 @@ + +// Copyright (c) 2001 Aleksey Gurtovoy. +// Permission to copy, use, modify, sell and distribute this software is +// granted provided this copyright notice appears in all copies. +// This software is provided "as is" without express or implied warranty, +// and with no claim as to its suitability for any purpose. + +#ifndef TRANSFORM_TRAITS_HPP +#include +#endif + +#define BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_CONST_VOLATILE_RANK1(T) \ +template<> struct remove_const { typedef T type; }; \ +template<> struct remove_const { typedef T volatile type; }; \ +template<> struct remove_volatile { typedef T type; }; \ +template<> struct remove_volatile { typedef T const type; }; \ +template<> struct remove_cv { typedef T type; }; \ +template<> struct remove_cv { typedef T type; }; \ +template<> struct remove_cv { typedef T type; }; \ +/**/ + +#define BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_PTR_REF_RANK_1(T) \ +template<> struct remove_pointer { typedef T type; }; \ +template<> struct remove_reference { typedef T type; }; \ +/**/ + +#define BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_PTR_REF_RANK_2(T) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_PTR_REF_RANK_1(T) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_PTR_REF_RANK_1(T const) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_PTR_REF_RANK_1(T volatile) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_PTR_REF_RANK_1(T const volatile) \ +/**/ + +#define BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_ALL_RANK_1(T) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_PTR_REF_RANK_2(T) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_CONST_VOLATILE_RANK1(T) \ +/**/ + +#define BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_ALL_RANK_2(T) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_ALL_RANK_1(T*) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_ALL_RANK_1(T const*) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_ALL_RANK_1(T volatile*) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_ALL_RANK_1(T const volatile*) \ +/**/ + +#define BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION(T) \ +namespace boost { \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_ALL_RANK_1(T) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_ALL_RANK_2(T) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_ALL_RANK_2(T*) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_ALL_RANK_2(T const*) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_ALL_RANK_2(T volatile*) \ +BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_ALL_RANK_2(T const volatile*) \ +} \ +/**/ + +BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION(char) +BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION(signed char) +BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION(unsigned char) +BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION(signed short) +BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION(unsigned short) +BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION(signed int) +BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION(unsigned int) +BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION(signed long) +BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION(unsigned long) +BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION(float) +BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION(double) +BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION(long double) + +#undef BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_CONST_VOLATILE_RANK1 +#undef BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_PTR_REF_RANK_1 +#undef BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_PTR_REF_RANK_2 +#undef BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_ALL_RANK_1 +#undef BOOST_TYPE_TRAITS_SPECIALIZATION_REMOVE_ALL_RANK_2 + diff --git a/development/include/boost/type_traits/type_traits_test.hpp b/development/include/boost/type_traits/type_traits_test.hpp index 50700b2..8981805 100644 --- a/development/include/boost/type_traits/type_traits_test.hpp +++ b/development/include/boost/type_traits/type_traits_test.hpp @@ -166,6 +166,9 @@ struct test_align std::cout << "checking value of " << typeid(boost::alignment_of).name() << "...failed" << std::endl; std::cout << "\tfound: " << boost::alignment_of::value << " expected " << a << std::endl; } + // suppress warnings about unused variables: + (void)p; + (void)a; } }; #ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION @@ -224,7 +227,7 @@ struct BOOST_TT_JOIN(nested_tester_,what){\ BOOST_TT_JOIN(nested_tester_,what)(const char* s) : tester(::boost::what::value, s){}\ }; #define NESTED_TEST(what, with)\ -{BOOST_TT_JOIN(nested_tester_,what) check(#what "<" #with ">");} +{BOOST_TT_JOIN(nested_tester_,what) check(#what "<" #with ">"); (void)check;} #define BOOST_TT_JOIN( X, Y ) BOOST_DO_TT_JOIN( X, Y ) #define BOOST_DO_TT_JOIN( X, Y ) X##Y @@ -354,3 +357,5 @@ struct non_empty : boost::noncopyable + + diff --git a/development/index.htm b/development/index.htm new file mode 100644 index 0000000..d36e3c9 --- /dev/null +++ b/development/index.htm @@ -0,0 +1,1146 @@ + + + + + + +Type Traits + + + + +

Header +<boost/type_traits.hpp>

+ +

The contents of <boost/type_traits.hpp> are declared in +namespace boost.

+ +

The file <boost/type_traits.hpp> +contains various template classes that describe the fundamental +properties of a type; each class represents a single type +property or a single type transformation. If you are new to this +library then read the accompanying article +first.

+ +

This documentation is divided up into the following sections:

+ +
Primary Type Categorisation
+Secondary Type Categorisation
+Type Properties
+Relationships Between Types
+Transformations Between Types
+Compiler Support Information
+Type traits headers
+Example Code
+ +

 

+ +

Primary Type Categorisation

+ +

The following type traits templates identify which type +category the type belongs to. For any given type, exactly one of +the following expressions will evaluate to true. Note that this +means that is_integral<T>::value and is_float<T>::value +will only every be true for built-in types; if you want to check +for a user-defined type that may behave "as if" it is +an integral or floating point type, then use the std::numeric_limits +template instead.

+ +
Program Test
Type
GNU
GCC
2.95.2
Borland
BCC
5.5.1
cygwin
GCC 2.95.2
cygwin
GCC 2.95.2
+ SGI STL 3.3
cygwin
GCC 2.95.2
+ STLPort 4
Borland
5.5.1
Borland
5.4
Microsoft
VC++
6.0 SP4
Microsoft
VC++
6.0 SP4
STLport
4.0
Pass Pass PassPassPassPass
libs/type_traits/arithmetic_traits_test.cppPass Pass PassPassPassPass
libs/type_traits/composite_traits_test.cppPass Pass PassPassPassPass
libs/type_traits/cv_traits_test.cppPass Pass PassPassPassPass
libs/type_traits/is_convertible_test.cpp run PassPassPassFail Fail Pass PassPass Pass PassPassPassPass
libs/type_traits/object_type_traits_test.cppPass Pass PassPassPassPass
libs/type_traits/transform_traits_test.cpp run PassPassPassPassPassFail Fail Fail
Pass Pass PassPassPassPass
libs/type_traits/copy_example.cppPass Pass PassPassPassPass
libs/type_traits/fill_example.cppPass Pass PassPassPassPass
libs/type_traits/iter_swap_example.cpp compile Pass PassPassPassPass Fail Fail
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 

Expression

+

Description

+

Reference

+

Compiler requirements

+
 
 ::boost::is_void<T>::valueEvaluates + to true only if T is a cv-qualified void type.

3.9.1p9

+
  
 ::boost::is_integral<T>::valueEvaluates + to true only if T is an cv-qualified integral type.

3.9.1p7

+
  
 ::boost::is_float<T>::valueEvaluates + to true only if T is a cv-qualified floating point type.

3.9.1p8

+
  
 ::boost::is_pointer<T>::valueEvaluates + to true only if T is cv-qualified pointer type (includes + function pointers, but excludes pointers to members).

3.9.2p2

+

8.3.1

+
  
 ::boost::is_reference<T>::valueEvaluates + to true only if T is a reference type.

3.9.2

+

8.3.2

+
If the + compiler does not support partial-specialisation of class + templates, then references to types that are both const + and volatile qualified will not be correctly identified. 
 ::boost::is_member_pointer<T>::valueEvaluates + to true only if T is a cv-qualified pointer to a data-member + or member-function.

3.9.2

+

8.3.3

+
On some + compilers, member function pointers may be incorrectly + identified as regular pointers. 
 ::boost::is_array<T>::valueEvaluates + to true only if T is an array type.

3.9.2

+

8.3.4

+
If the + compiler does not support partial-specialisation of class + templates, then some types may be incorrectly identified + as arrays (mainly function types). 
 ::boost::is_union<T>::valueEvaluates + to true only if T is of union type. Currently requires + some kind of compiler support, otherwise unions are + identified as classes.

3.9.2

+

9.5

+
C 
 ::boost::is_class<T>::valueEvaluates + to true only if T is of class/struct type.

3.9.2

+

9.2

+
C 
 ::boost::is_enum<T>::valueEvaluates + to true only if T is of enum type.

3.9.2

+

7.2

+
Requires a + correctly functioning is_convertible template (this means + that is_enum is currently broken under Borland C++). 
+ +

 

+ +

Secondary Type Categorisation

+ +

The following type categories are made up of the union of one +or more primary type categorisations. A type may belong to more +than one of these categories, in addition to one of the primary +categories.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 

Expression

+

Description

+

Reference

+

Compiler requirements

+
 
 ::boost::is_arithmetic<T>::valueEvaluates + to true only if T is a cv-qualified arithmetic type. That + is either an integral or floating point type.

3.9.1p8

+
  
 ::boost::is_fundamental<T>::valueEvaluates + to true only if T is an cv-qualified fundamental type. + That is either an integral, a floating point, or a void + type.

3.9.1

+
  
 ::boost::is_object<T>::valueEvaluates + to true only if T is a cv-qualified object type. That is + not a function, reference, or void type.

3.9p9

+
  
 ::boost::is_scalar<T>::valueEvaluates + to true only if T is cv-qualified scalar type. That is an + arithmetic, a pointer or a pointer to member type.

3.9p10

+
  
 ::boost::is_compound<T>::valueEvaluates + to true only if T is a compound type. That is an array, + function, pointer, reference, enumerator, union, class or + member function type.

3.9.2

+
  
+ +

 

+ +

Type Properties

+ +

The following templates identify the properties that a type +has.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 

Expression

+

Description

+

Reference

+

Compiler requirements

+
 
 ::boost::alignment_of<T>::valueIdentifies + the alignment requirements of T. Actually returns a value + that is only guaranteed to be a multiple of the actual + alignment requirements of T   
 ::boost::is_empty<T>::valueTrue if T + is an empty struct or class. If the compiler implements + the "zero sized empty base classes" + optimisation, then is_empty will correctly guess whether + T is empty. Relies upon is_class to determine whether T + is a class type.

10p5

+

PCD

+
 
 ::boost::is_const<T>::valueEvaluates + to true only if T is top-level const-qualified.

3.9.3

+
  
 ::boost::is_volatile<T>::valueEvaluates + to true only if T is volatile-qualified.

3.9.3

+
  
 ::boost::is_POD<T>::valueEvaluates + to true only if T is a cv-qualified POD type.

3.9p10

+

9p4

+
  
 ::boost::has_trivial_constructor<T>::valueTrue if T + has a trivial default constructor - that is T() is + equivalent to memset. 

PC

+
 
 ::boost::has_trivial_copy<T>::valueTrue if T + has a trivial copy constructor - that is T(const T&) + is equivalent to memcpy. 

PC

+
 
 ::boost::has_trivial_assign<T>::valueTrue if T + has a trivial assignment operator - that is if T::operator=(const + T&) is equivalent to memcpy. 

PC

+
 
 ::boost::has_trivial_destructor<T>::valueTrue if T + has a trivial destructor - that is if T::~T() has no + effect. 

PC

+
 
+ +

 

+ +

Relationships Between Types

+ +

The following templates determine the whether there is a +relationship between two types:

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
 

Expression

+

Description

+

Reference

+

Compiler requirements

+
 
 
::boost::is_same<T,U>::value
+

Evaluates to true if T and U are the same + type.

+
   
 ::boost::is_convertible<T,U>::valueEvaluates + to true if type T is convertible to type U.

4

+

8.5

+
Note that + this template is currently broken with Borland's compiler, + for constructor-based conversions. 
+ +

 

+ +

Transformations Between Types

+ +

The following templates transform one type to another, based +upon some well-defined rule. Each template has a single member +called type that is the result of applying the +transformation to the template argument T:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 

Expression

+

Description

+

Reference

+

Compiler requirements

+
 
 ::boost::remove_const<T>::typeCreates a + type the same as T but with any top level const qualifier + removed. For example "const int" would become + "int", but "const int*" would remain + unchanged.3.9.3

P

+
 
 ::boost::remove_volatile<T>::typeCreates a + type the same as T but with any top level volatile + qualifier removed. For example "volatile int" + would become "int".

3.9.3

+

P

+
 
 ::boost::remove_reference<T>::typeIf T is a + reference type then removes the reference, otherwise + leaves T unchanged. For example "int&" + becomes "int" but "int*" remains + unchanged.8.3.2

P

+
 
 ::boost::remove_bounds<T>::typeIf T is an + array type then removes the top level array qualifier + from T, otherwise leaves T unchanged. For example "int[2][3]" + becomes "int[3]".8.3.4

P

+
 
 ::boost::remove_pointer<T>::typeIf T is a + pointer type, then removes the top-level indirection from + T, otherwise leaves T unchanged. For example "int*" + becomes "int", but "int&" remains + unchanged.8.3.1

P

+
 
 ::boost::add_reference<T>::typeIf T is a + reference type then leaves T unchanged, otherwise + converts T to a reference type. For example "int&" + remains unchanged, but "double" becomes "double&".8.3.2

P

+
 
 ::boost::add_pointer<T>::typeIf "t" + is an instance of T, then add_pointer<T>::type is + the type returned by "&t". For example + "int", "int&", "int[2]" + and "int (&)[2]" all become "int*".8.3.1

P

+
 
+ +

 

+ +

Compiler Support Information

+ +

The legends used in the tables above have the following +meanings:

+ + + + + + + + + + + + + + +

P

+
Denotes that the class + requires support for partial specialisation of class + templates to work correctly.

C

+
Denotes that direct compiler + support for that traits class is required.

D

+
Denotes that the traits + class is dependent upon a class that requires direct + compiler support.
+ +

 

+ +

For those classes that are marked with a D or C, if compiler +support is not provided, this type trait may return "false" +when the correct value is actually "true". The single +exception to this rule is "is_class", which attempts to +guess whether or not T is really a class, and may return "true" +when the correct value is actually "false". This can +happen if: T is a union or T is a compiler-supplied scalar type +that is not specialised for in these type traits.

+ +

If there is no compiler support, to ensure that these +traits always return the correct values, specialise 'is_union' +for each user-defined union type, 'is_empty' for each user-defined +empty composite type, and 'is_POD' for each user-defined POD type. +The 'has_*' traits should also be specialized if the user-defined +type has those traits and is not a POD.

+ +

The following rules are automatically enforced:

+ +

is_enum implies is_POD

+ +

is_POD implies has_*

+ +

This means, for example, if you have an empty POD-struct, just +specialize is_empty and is_POD, which will cause all the has_* to +also return true.

+ +

Type Traits Headers

+ +

The type traits library is normally included with:

+ +

#include <boost/type_traits.hpp>

+ +

However the library is actually split up into a number of +smaller headers, sometimes it can be convenient to include one of +these directly in order to get just those type traits classes you +actually need. Note however that the type traits classes are +highly interdependent - so you may not save as much as you think +this way. The following table lists the type traits classes in +alphabetical order, along with the header that contains each +template.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 Template + classHeader 
 add_pointer<boost/type_traits/transform_traits.hpp> 
 add_reference<boost/type_traits/transform_traits.hpp> 
 alignment_of<boost.type_traits/alignment_traits.hpp> 
 has_trivial_assign<boost/type_traits/object_traits.hpp> 
 has_trivial_constructor<boost/type_traits/object_traits.hpp> 
 has_trivial_copy<boost/type_traits/object_traits.hpp> 
 has_trivial_destructor<boost/type_traits/object_traits.hpp> 
 is_arithmetic<boost/type_traits/arithmetic_traits.hpp> 
 is_array + <boost/type_traits/composite_traits.hpp> 
 is_class<boost/type_traits/object_traits.hpp> 
 is_compound<boost/type_traits/object_traits.hpp> 
 is_const<boost/type_traits/cv_traits.hpp> 
 is_convertible<boost/type_traits/conversion_traits.hpp> 
 is_empty<boost/type_traits/object_traits.hpp> 
 is_enum<boost/type_traits/composite_traits.hpp> 
 is_float<boost/type_traits/arithmetic_traits.hpp> 
 is_fundamental<boost/type_traits/arithmetic_traits.hpp> 
 is_integral<boost/type_traits/arithmetic_traits.hpp> 
 is_member_pointer<boost/type_traits/composite_traits.hpp> 
 is_object + <boost/type_traits/object_traits.hpp> 
 is_POD<boost/type_traits/object_traits.hpp> 
 is_pointer<boost/type_traits/composite_traits.hpp> 
 is_reference<boost/type_traits/composite_traits.hpp> 
 is_same<boost/type_traits/same_traits.hpp> 
 is_scalar<boost/type_traits/object_traits.hpp> 
 is_union<boost/type_traits/composite_traits.hpp> 
 is_void<boost/type_traits/arithmetic_traits.hpp> 
 is_volatile<boost/type_traits/cv_traits.hpp> 
 remove_bounds<boost/type_traits/transform_traits.hpp> 
 remove_const<boost/type_traits/cv_traits.hpp> 
 remove_cv<boost/type_traits/cv_traits.hpp> 
 remove_pointer<boost/type_traits/transform_traits.hpp> 
 remove_reference + <boost/type_traits/transform_traits.hpp> 
 remove_volatile<boost/type_traits/cv_traits.hpp> 
+ +

 

+ +

Example code

+ +

Type-traits comes with four example programs that illustrate +some of the ways in which the type traits templates may be used:

+ +

Copy_example.cpp

+ +

Demonstrates a version of std::copy that uses memcpy where +appropriate to optimise the copy operation;

+ +
//
+// opt::copy
+// same semantics as std::copy
+// calls memcpy where appropiate.
+//
+
+namespace detail{
+
+template<typename I1, typename I2>
+I2 copy_imp(I1 first, I1 last, I2 out)
+{
+   while(first != last)
+   {
+      *out = *first;
+      ++out;
+      ++first;
+   }
+   return out;
+}
+
+template <bool b>
+struct copier
+{
+   template<typename I1, typename I2>
+   static I2 do_copy(I1 first, I1 last, I2 out)
+   { return copy_imp(first, last, out); }
+};
+
+template <>
+struct copier<true>
+{
+   template<typename I1, typename I2>
+   static I2* do_copy(I1* first, I1* last, I2* out)
+   {
+      memcpy(out, first, (last-first)*sizeof(I2));
+      return out+(last-first);
+   }
+};
+
+
+}
+
+template<typename I1, typename I2>
+inline I2 copy(I1 first, I1 last, I2 out)
+{
+   typedef typename boost::remove_cv<typename std::iterator_traits<I1>::value_type>::type v1_t;
+   typedef typename boost::remove_cv<typename std::iterator_traits<I2>::value_type>::type v2_t;
+   return detail::copier<
+      ::boost::type_traits::ice_and<
+         ::boost::is_same<v1_t, v2_t>::value,
+         ::boost::is_pointer<I1>::value,
+         ::boost::is_pointer<I2>::value,
+         ::boost::has_trivial_assign<v1_t>::value
+      >::value>::do_copy(first, last, out);
+}
+ +

fill_example.cpp

+ +

Demonstrates a version of std::fill that uses memset where +appropriate to optimise fill operations. Also uses call_traits to +optimise parameter passing, to avoid aliasing issues:

+ +
namespace opt{
+//
+// fill
+// same as std::fill, uses memset where appropriate, along with call_traits
+// to "optimise" parameter passing.
+//
+namespace detail{
+
+template <typename I, typename T>
+void do_fill_(I first, I last, typename boost::call_traits<T>::param_type val)
+{
+   while(first != last)
+   {
+      *first = val;
+      ++first;
+   }
+}
+
+template <bool opt>
+struct filler
+{
+   template <typename I, typename T>
+   struct rebind
+   {
+      static void do_fill(I first, I last, typename boost::call_traits<T>::param_type val)
+      { do_fill_<I,T>(first, last, val); }
+   };
+};
+
+template <>
+struct filler<true>
+{
+   template <typename I, typename T>
+   struct rebind
+   {
+      static void do_fill(I first, I last, T val)
+      {
+         std::memset(first, val, last-first);
+      }
+   };
+};
+
+}
+
+template <class I, class T>
+inline void fill(I first, I last, const T& val)
+{
+   typedef detail::filler<
+      ::boost::type_traits::ice_and<
+         ::boost::is_pointer<I>::value,
+         ::boost::is_arithmetic<T>::value,
+         (sizeof(T) == 1)
+      >::value> filler_t;
+   typedef typename filler_t:: template rebind<I,T> binder;
+   binder::do_fill(first, last, val);
+}
+
+};   // namespace opt
+ +

iter_swap_example.cpp

+ +

Demonstrates a version of std::iter_swap that works with +proxying iterators, as well as regular ones; calls std::swap for +regular iterators, otherwise does a "slow but safe" +swap:

+ +
namespace opt{
+//
+// iter_swap:
+// tests whether iterator is a proxying iterator or not, and
+// uses optimal form accordingly:
+//
+namespace detail{
+
+template <bool b>
+struct swapper
+{
+   template <typename I>
+   static void do_swap(I one, I two)
+   {
+      typedef typename std::iterator_traits<I>::value_type v_t;
+      v_t v = *one;
+      *one = *two;
+      *two = v;
+   }
+};
+
+template <>
+struct swapper<true>
+{
+   template <typename I>
+   static void do_swap(I one, I two)
+   {
+      using std::swap;
+      swap(*one, *two);
+   }
+};
+
+}
+
+template <typename I1, typename I2>
+inline void iter_swap(I1 one, I2 two)
+{
+   typedef typename std::iterator_traits<I1>::reference r1_t;
+   typedef typename std::iterator_traits<I2>::reference r2_t;
+   detail::swapper<
+      ::boost::type_traits::ice_and<
+         ::boost::is_reference<r1_t>::value, 
+         ::boost::is_reference<r2_t>::value,
+         ::boost::is_same<r1_t, r2_t>::value
+      >::value>::do_swap(one, two);
+}
+
+};   // namespace opt
+ +

Trivial_destructor_example.cpp

+ +

This algorithm is the reverse of std::unitialized_copy; it +takes a block of initialized memory and calls destructors on all +objects therein. This would typically be used inside container +classes that manage their own memory:

+ +
namespace opt{
+//
+// algorithm destroy_array:
+// The reverse of std::unitialized_copy, takes a block of
+// initialized memory and calls destructors on all objects therein.
+//
+
+namespace detail{
+
+template <bool>
+struct array_destroyer
+{
+   template <class T>
+   static void destroy_array(T* i, T* j){ do_destroy_array(i, j); }
+};
+
+template <>
+struct array_destroyer<true>
+{
+   template <class T>
+   static void destroy_array(T*, T*){}
+};
+
+template <class T>
+void do_destroy_array(T* first, T* last)
+{
+   while(first != last)
+   {
+      first->~T();
+      ++first;
+   }
+}
+
+}; // namespace detail
+
+template <class T>
+inline void destroy_array(T* p1, T* p2)
+{
+   detail::array_destroyer<boost::has_trivial_destructor<T>::value>::destroy_array(p1, p2);
+}
+} // namespace opt
+ +
+ +

Revised 01 Feb 2001

+ +

© Copyright John Maddock 2001. Permission to copy, use, +modify, sell and distribute this document is granted provided +this copyright notice appears in all copies. This document is +provided "as is" without express or implied warranty, +and with no claim as to its suitability for any purpose.

+ +

The type traits library is based on contributions by Steve +Cleary, Beman Dawes, Aleksey Gurtovoy, Howard Hinnant, John +Maddock and Jeremy Siek.

+ +

Maintained by John +Maddock, the latest version of this file can be found at www.boost.org, and the boost +discussion list at www.egroups.com/list/boost.

+ + diff --git a/development/regression.out.txt b/development/regression.out.txt index b6ef2eb..1a61e15 100644 --- a/development/regression.out.txt +++ b/development/regression.out.txt @@ -1,7 +1,116 @@ *** libs/type_traits/alignment_test.cpp *** ** GCC 2.95.2 -g++ -o boosttmp.exe -ftemplate-depth-30 -I../.. ../../libs/type_traits/alignment_test.cpp +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -I../.. ../../libs/type_traits/alignment_test.cpp +./boosttmp.exe +14 tests completed, 0 failures found, 0 failures expected from this compiler. +Pass + +** GCC 2.95.2 + SGI STL 3.3 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -Id:/stlimp/sgi330 -I../.. ../../libs/type_traits/alignment_test.cpp +./boosttmp.exe +14 tests completed, 0 failures found, 0 failures expected from this compiler. +Pass + +** GCC 2.95.2 + STLPort 4 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -D__STL_DEBUG -Ie:/stlport/stlport -I../.. ../../libs/type_traits/alignment_test.cpp -Le:/stlport/lib -lstlport_cygwin_stldebug +In file included from e:/stlport/stlport/stl/_iterator_base.h:38, + from e:/stlport/stlport/stl/_iterator.h:34, + from e:/stlport/stlport/iterator:35, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/alignment_traits.hpp:16, + from ../../libs/type_traits/alignment_test.cpp:7: +e:/stlport/stlport/stl/type_traits.h:198: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:206: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:319: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:323: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_string_hash.h:23, + from e:/stlport/stlport/stl/_string.h:1534, + from e:/stlport/stlport/stl/_locale.c:23, + from e:/stlport/stlport/stl/_locale.h:217, + from e:/stlport/stlport/stl/_ios_base.h:25, + from e:/stlport/stlport/stl/_streambuf.h:21, + from e:/stlport/stlport/streambuf:31, + from e:/stlport/stlport/stl/_stream_iterator.h:47, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/alignment_traits.hpp:16, + from ../../libs/type_traits/alignment_test.cpp:7: +e:/stlport/stlport/stl/_hash_fun.h:93: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_hash_fun.h:96: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/limits:39, + from e:/stlport/stlport/stl/_ostream.h:24, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/alignment_traits.hpp:16, + from ../../libs/type_traits/alignment_test.cpp:7: +e:/stlport/stlport/stl/_limits.h:261: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:266: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ forbids long long integer constants +In file included from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/alignment_traits.hpp:16, + from ../../libs/type_traits/alignment_test.cpp:7: +e:/stlport/stlport/stl/_ostream.h:94: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_ostream.h:95: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/alignment_traits.hpp:16, + from ../../libs/type_traits/alignment_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.h:233: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:238: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:309: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:311: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:363: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:368: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:406: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:408: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:459: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:460: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_numeric_facets.h:529, + from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/alignment_traits.hpp:16, + from ../../libs/type_traits/alignment_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.c:127: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:135: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:187: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:194: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/alignment_traits.hpp:16, + from ../../libs/type_traits/alignment_test.cpp:7: +e:/stlport/stlport/stl/_istream.h:90: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_istream.h:91: warning: ANSI C++ does not support `long long' ./boosttmp.exe 14 tests completed, 0 failures found, 0 failures expected from this compiler. Pass @@ -13,18 +122,24 @@ bcc32 -eboosttmp.exe -I../.. -j10 -q ../../libs/type_traits/alignment_test.cpp 14 tests completed, 0 failures found, 0 failures expected from this compiler. Pass +** Borland C++ 5.4 +e:/cpp/cbuilder4/bin/bcc32 -eboosttmp.exe -I../.. -j10 -q ../../libs/type_traits/alignment_test.cpp +../../libs/type_traits/alignment_test.cpp: +./boosttmp.exe +14 tests completed, 0 failures found, 0 failures expected from this compiler. +Pass + ** Microsoft Visual C++ -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/alignment_test.cpp /link user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /Zi /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/alignment_test.cpp /link user32.lib alignment_test.cpp ../../libs/type_traits/alignment_test.cpp(15) : warning C4305: 'argument' : truncation from 'enum ' to 'bool' ../../libs/type_traits/alignment_test.cpp(15) : while compiling class-template member function '__thiscall nested_tester_alignment_of::nested_tester_alignment_of(const char *)' -LINK : LNK6004: boosttmp.exe not found or not built by the last incremental link; performing full link ./boosttmp.exe 11 tests completed, 0 failures found, 0 failures expected from this compiler. Pass ** Microsoft Visual C++ with STLport -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/alignment_test.cpp /link /libpath:e:/stlport/lib user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MT /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/alignment_test.cpp /link /libpath:e:/stlport/lib user32.lib alignment_test.cpp ../../libs/type_traits/alignment_test.cpp(15) : warning C4305: 'argument' : truncation from 'enum ' to 'bool' ../../libs/type_traits/alignment_test.cpp(15) : while compiling class-template member function '__thiscall nested_tester_alignment_of::nested_tester_alignment_of(const char *)' @@ -35,7 +150,121 @@ Pass *** libs/type_traits/arithmetic_traits_test.cpp *** ** GCC 2.95.2 -g++ -o boosttmp.exe -ftemplate-depth-30 -I../.. ../../libs/type_traits/arithmetic_traits_test.cpp +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -I../.. ../../libs/type_traits/arithmetic_traits_test.cpp +./boosttmp.exe +111 tests completed, 0 failures found, 0 failures expected from this compiler. +Pass + +** GCC 2.95.2 + SGI STL 3.3 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -Id:/stlimp/sgi330 -I../.. ../../libs/type_traits/arithmetic_traits_test.cpp +./boosttmp.exe +111 tests completed, 0 failures found, 0 failures expected from this compiler. +Pass + +** GCC 2.95.2 + STLPort 4 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -D__STL_DEBUG -Ie:/stlport/stlport -I../.. ../../libs/type_traits/arithmetic_traits_test.cpp -Le:/stlport/lib -lstlport_cygwin_stldebug +In file included from e:/stlport/stlport/stl/_iterator_base.h:38, + from e:/stlport/stlport/stl/_iterator.h:34, + from e:/stlport/stlport/iterator:35, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/arithmetic_traits.hpp:18, + from ../../libs/type_traits/arithmetic_traits_test.cpp:7: +e:/stlport/stlport/stl/type_traits.h:198: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:206: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:319: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:323: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_string_hash.h:23, + from e:/stlport/stlport/stl/_string.h:1534, + from e:/stlport/stlport/stl/_locale.c:23, + from e:/stlport/stlport/stl/_locale.h:217, + from e:/stlport/stlport/stl/_ios_base.h:25, + from e:/stlport/stlport/stl/_streambuf.h:21, + from e:/stlport/stlport/streambuf:31, + from e:/stlport/stlport/stl/_stream_iterator.h:47, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/arithmetic_traits.hpp:18, + from ../../libs/type_traits/arithmetic_traits_test.cpp:7: +e:/stlport/stlport/stl/_hash_fun.h:93: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_hash_fun.h:96: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/limits:39, + from e:/stlport/stlport/stl/_ostream.h:24, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/arithmetic_traits.hpp:18, + from ../../libs/type_traits/arithmetic_traits_test.cpp:7: +e:/stlport/stlport/stl/_limits.h:261: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:266: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ forbids long long integer constants +In file included from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/arithmetic_traits.hpp:18, + from ../../libs/type_traits/arithmetic_traits_test.cpp:7: +e:/stlport/stlport/stl/_ostream.h:94: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_ostream.h:95: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/arithmetic_traits.hpp:18, + from ../../libs/type_traits/arithmetic_traits_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.h:233: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:238: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:309: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:311: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:363: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:368: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:406: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:408: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:459: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:460: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_numeric_facets.h:529, + from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/arithmetic_traits.hpp:18, + from ../../libs/type_traits/arithmetic_traits_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.c:127: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:135: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:187: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:194: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/arithmetic_traits.hpp:18, + from ../../libs/type_traits/arithmetic_traits_test.cpp:7: +e:/stlport/stlport/stl/_istream.h:90: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_istream.h:91: warning: ANSI C++ does not support `long long' +In file included from ../../libs/type_traits/arithmetic_traits_test.cpp:7: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' ./boosttmp.exe 111 tests completed, 0 failures found, 0 failures expected from this compiler. Pass @@ -47,8 +276,15 @@ bcc32 -eboosttmp.exe -I../.. -j10 -q ../../libs/type_traits/arithmetic_traits_te 123 tests completed, 0 failures found, 0 failures expected from this compiler. Pass +** Borland C++ 5.4 +e:/cpp/cbuilder4/bin/bcc32 -eboosttmp.exe -I../.. -j10 -q ../../libs/type_traits/arithmetic_traits_test.cpp +../../libs/type_traits/arithmetic_traits_test.cpp: +./boosttmp.exe +123 tests completed, 0 failures found, 0 failures expected from this compiler. +Pass + ** Microsoft Visual C++ -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/arithmetic_traits_test.cpp /link user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /Zi /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/arithmetic_traits_test.cpp /link user32.lib arithmetic_traits_test.cpp LINK : LNK6004: boosttmp.exe not found or not built by the last incremental link; performing full link ./boosttmp.exe @@ -56,7 +292,7 @@ LINK : LNK6004: boosttmp.exe not found or not built by the last incremental link Pass ** Microsoft Visual C++ with STLport -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/arithmetic_traits_test.cpp /link /libpath:e:/stlport/lib user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MT /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/arithmetic_traits_test.cpp /link /libpath:e:/stlport/lib user32.lib arithmetic_traits_test.cpp ./boosttmp.exe 123 tests completed, 0 failures found, 0 failures expected from this compiler. @@ -65,7 +301,127 @@ Pass *** libs/type_traits/composite_traits_test.cpp *** ** GCC 2.95.2 -g++ -o boosttmp.exe -ftemplate-depth-30 -I../.. ../../libs/type_traits/composite_traits_test.cpp +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -I../.. ../../libs/type_traits/composite_traits_test.cpp +./boosttmp.exe +checking value of boost::is_reference::value...failed + found: 0 expected 1 +70 tests completed, 1 failures found, 1 failures expected from this compiler. +Pass + +** GCC 2.95.2 + SGI STL 3.3 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -Id:/stlimp/sgi330 -I../.. ../../libs/type_traits/composite_traits_test.cpp +./boosttmp.exe +checking value of boost::is_reference::value...failed + found: 0 expected 1 +70 tests completed, 1 failures found, 1 failures expected from this compiler. +Pass + +** GCC 2.95.2 + STLPort 4 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -D__STL_DEBUG -Ie:/stlport/stlport -I../.. ../../libs/type_traits/composite_traits_test.cpp -Le:/stlport/lib -lstlport_cygwin_stldebug +In file included from e:/stlport/stlport/stl/_iterator_base.h:38, + from e:/stlport/stlport/stl/_iterator.h:34, + from e:/stlport/stlport/iterator:35, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/composite_traits.hpp:24, + from ../../libs/type_traits/composite_traits_test.cpp:7: +e:/stlport/stlport/stl/type_traits.h:198: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:206: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:319: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:323: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_string_hash.h:23, + from e:/stlport/stlport/stl/_string.h:1534, + from e:/stlport/stlport/stl/_locale.c:23, + from e:/stlport/stlport/stl/_locale.h:217, + from e:/stlport/stlport/stl/_ios_base.h:25, + from e:/stlport/stlport/stl/_streambuf.h:21, + from e:/stlport/stlport/streambuf:31, + from e:/stlport/stlport/stl/_stream_iterator.h:47, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/composite_traits.hpp:24, + from ../../libs/type_traits/composite_traits_test.cpp:7: +e:/stlport/stlport/stl/_hash_fun.h:93: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_hash_fun.h:96: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/limits:39, + from e:/stlport/stlport/stl/_ostream.h:24, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/composite_traits.hpp:24, + from ../../libs/type_traits/composite_traits_test.cpp:7: +e:/stlport/stlport/stl/_limits.h:261: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:266: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ forbids long long integer constants +In file included from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/composite_traits.hpp:24, + from ../../libs/type_traits/composite_traits_test.cpp:7: +e:/stlport/stlport/stl/_ostream.h:94: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_ostream.h:95: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/composite_traits.hpp:24, + from ../../libs/type_traits/composite_traits_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.h:233: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:238: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:309: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:311: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:363: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:368: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:406: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:408: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:459: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:460: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_numeric_facets.h:529, + from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/composite_traits.hpp:24, + from ../../libs/type_traits/composite_traits_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.c:127: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:135: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:187: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:194: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/composite_traits.hpp:24, + from ../../libs/type_traits/composite_traits_test.cpp:7: +e:/stlport/stlport/stl/_istream.h:90: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_istream.h:91: warning: ANSI C++ does not support `long long' +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../boost/type_traits/composite_traits.hpp:30, + from ../../libs/type_traits/composite_traits_test.cpp:7: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' ./boosttmp.exe checking value of boost::is_reference::value...failed found: 0 expected 1 @@ -83,8 +439,19 @@ checking value of boost::is_enum::value...failed 70 tests completed, 2 failures found, 2 failures expected from this compiler. Pass +** Borland C++ 5.4 +e:/cpp/cbuilder4/bin/bcc32 -eboosttmp.exe -I../.. -j10 -q ../../libs/type_traits/composite_traits_test.cpp +../../libs/type_traits/composite_traits_test.cpp: +./boosttmp.exe +checking value of boost::is_pointer::value...failed + found: 1 expected 0 +checking value of boost::is_enum::value...failed + found: 0 expected 1 +70 tests completed, 2 failures found, 2 failures expected from this compiler. +Pass + ** Microsoft Visual C++ -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/composite_traits_test.cpp /link user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /Zi /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/composite_traits_test.cpp /link user32.lib composite_traits_test.cpp LINK : LNK6004: boosttmp.exe not found or not built by the last incremental link; performing full link ./boosttmp.exe @@ -94,7 +461,7 @@ checking value of boost::is_reference::value...failed Pass ** Microsoft Visual C++ with STLport -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/composite_traits_test.cpp /link /libpath:e:/stlport/lib user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MT /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/composite_traits_test.cpp /link /libpath:e:/stlport/lib user32.lib composite_traits_test.cpp ./boosttmp.exe checking value of boost::is_reference::value...failed @@ -105,7 +472,116 @@ Pass *** libs/type_traits/cv_traits_test.cpp *** ** GCC 2.95.2 -g++ -o boosttmp.exe -ftemplate-depth-30 -I../.. ../../libs/type_traits/cv_traits_test.cpp +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -I../.. ../../libs/type_traits/cv_traits_test.cpp +./boosttmp.exe +18 tests completed, 0 failures found, 0 failures expected from this compiler. +Pass + +** GCC 2.95.2 + SGI STL 3.3 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -Id:/stlimp/sgi330 -I../.. ../../libs/type_traits/cv_traits_test.cpp +./boosttmp.exe +18 tests completed, 0 failures found, 0 failures expected from this compiler. +Pass + +** GCC 2.95.2 + STLPort 4 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -D__STL_DEBUG -Ie:/stlport/stlport -I../.. ../../libs/type_traits/cv_traits_test.cpp -Le:/stlport/lib -lstlport_cygwin_stldebug +In file included from e:/stlport/stlport/stl/_iterator_base.h:38, + from e:/stlport/stlport/stl/_iterator.h:34, + from e:/stlport/stlport/iterator:35, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/cv_traits.hpp:17, + from ../../libs/type_traits/cv_traits_test.cpp:7: +e:/stlport/stlport/stl/type_traits.h:198: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:206: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:319: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:323: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_string_hash.h:23, + from e:/stlport/stlport/stl/_string.h:1534, + from e:/stlport/stlport/stl/_locale.c:23, + from e:/stlport/stlport/stl/_locale.h:217, + from e:/stlport/stlport/stl/_ios_base.h:25, + from e:/stlport/stlport/stl/_streambuf.h:21, + from e:/stlport/stlport/streambuf:31, + from e:/stlport/stlport/stl/_stream_iterator.h:47, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/cv_traits.hpp:17, + from ../../libs/type_traits/cv_traits_test.cpp:7: +e:/stlport/stlport/stl/_hash_fun.h:93: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_hash_fun.h:96: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/limits:39, + from e:/stlport/stlport/stl/_ostream.h:24, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/cv_traits.hpp:17, + from ../../libs/type_traits/cv_traits_test.cpp:7: +e:/stlport/stlport/stl/_limits.h:261: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:266: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ forbids long long integer constants +In file included from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/cv_traits.hpp:17, + from ../../libs/type_traits/cv_traits_test.cpp:7: +e:/stlport/stlport/stl/_ostream.h:94: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_ostream.h:95: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/cv_traits.hpp:17, + from ../../libs/type_traits/cv_traits_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.h:233: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:238: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:309: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:311: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:363: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:368: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:406: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:408: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:459: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:460: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_numeric_facets.h:529, + from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/cv_traits.hpp:17, + from ../../libs/type_traits/cv_traits_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.c:127: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:135: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:187: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:194: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/cv_traits.hpp:17, + from ../../libs/type_traits/cv_traits_test.cpp:7: +e:/stlport/stlport/stl/_istream.h:90: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_istream.h:91: warning: ANSI C++ does not support `long long' ./boosttmp.exe 18 tests completed, 0 failures found, 0 failures expected from this compiler. Pass @@ -117,8 +593,15 @@ bcc32 -eboosttmp.exe -I../.. -j10 -q ../../libs/type_traits/cv_traits_test.cpp 18 tests completed, 0 failures found, 0 failures expected from this compiler. Pass +** Borland C++ 5.4 +e:/cpp/cbuilder4/bin/bcc32 -eboosttmp.exe -I../.. -j10 -q ../../libs/type_traits/cv_traits_test.cpp +../../libs/type_traits/cv_traits_test.cpp: +./boosttmp.exe +18 tests completed, 0 failures found, 0 failures expected from this compiler. +Pass + ** Microsoft Visual C++ -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/cv_traits_test.cpp /link user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /Zi /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/cv_traits_test.cpp /link user32.lib cv_traits_test.cpp LINK : LNK6004: boosttmp.exe not found or not built by the last incremental link; performing full link ./boosttmp.exe @@ -130,7 +613,7 @@ checking value of boost::is_volatile::value...failed Pass ** Microsoft Visual C++ with STLport -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/cv_traits_test.cpp /link /libpath:e:/stlport/lib user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MT /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/cv_traits_test.cpp /link /libpath:e:/stlport/lib user32.lib cv_traits_test.cpp ./boosttmp.exe checking value of boost::is_const::value...failed @@ -143,7 +626,122 @@ Pass *** libs/type_traits/is_convertible_test.cpp *** ** GCC 2.95.2 -g++ -o boosttmp.exe -ftemplate-depth-30 -I../.. ../../libs/type_traits/is_convertible_test.cpp +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -I../.. ../../libs/type_traits/is_convertible_test.cpp +./boosttmp.exe +37 tests completed, 0 failures found, 0 failures expected from this compiler. +Pass + +** GCC 2.95.2 + SGI STL 3.3 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -Id:/stlimp/sgi330 -I../.. ../../libs/type_traits/is_convertible_test.cpp +./boosttmp.exe +37 tests completed, 0 failures found, 0 failures expected from this compiler. +Pass + +** GCC 2.95.2 + STLPort 4 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -D__STL_DEBUG -Ie:/stlport/stlport -I../.. ../../libs/type_traits/is_convertible_test.cpp -Le:/stlport/lib -lstlport_cygwin_stldebug +In file included from e:/stlport/stlport/stl/_iterator_base.h:38, + from e:/stlport/stlport/stl/_iterator.h:34, + from e:/stlport/stlport/iterator:35, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/conversion_traits.hpp:19, + from ../../libs/type_traits/is_convertible_test.cpp:7: +e:/stlport/stlport/stl/type_traits.h:198: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:206: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:319: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:323: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_string_hash.h:23, + from e:/stlport/stlport/stl/_string.h:1534, + from e:/stlport/stlport/stl/_locale.c:23, + from e:/stlport/stlport/stl/_locale.h:217, + from e:/stlport/stlport/stl/_ios_base.h:25, + from e:/stlport/stlport/stl/_streambuf.h:21, + from e:/stlport/stlport/streambuf:31, + from e:/stlport/stlport/stl/_stream_iterator.h:47, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/conversion_traits.hpp:19, + from ../../libs/type_traits/is_convertible_test.cpp:7: +e:/stlport/stlport/stl/_hash_fun.h:93: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_hash_fun.h:96: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/limits:39, + from e:/stlport/stlport/stl/_ostream.h:24, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/conversion_traits.hpp:19, + from ../../libs/type_traits/is_convertible_test.cpp:7: +e:/stlport/stlport/stl/_limits.h:261: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:266: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ forbids long long integer constants +In file included from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/conversion_traits.hpp:19, + from ../../libs/type_traits/is_convertible_test.cpp:7: +e:/stlport/stlport/stl/_ostream.h:94: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_ostream.h:95: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/conversion_traits.hpp:19, + from ../../libs/type_traits/is_convertible_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.h:233: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:238: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:309: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:311: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:363: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:368: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:406: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:408: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:459: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:460: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_numeric_facets.h:529, + from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/conversion_traits.hpp:19, + from ../../libs/type_traits/is_convertible_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.c:127: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:135: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:187: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:194: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/conversion_traits.hpp:19, + from ../../libs/type_traits/is_convertible_test.cpp:7: +e:/stlport/stlport/stl/_istream.h:90: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_istream.h:91: warning: ANSI C++ does not support `long long' +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../libs/type_traits/is_convertible_test.cpp:7: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' ./boosttmp.exe 37 tests completed, 0 failures found, 0 failures expected from this compiler. Pass @@ -157,8 +755,17 @@ Error E2379 ../../libs/type_traits/is_convertible_test.cpp 54: Statement missing *** 3 errors in Compile *** Fail +** Borland C++ 5.4 +e:/cpp/cbuilder4/bin/bcc32 -eboosttmp.exe -I../.. -j10 -q ../../libs/type_traits/is_convertible_test.cpp +../../libs/type_traits/is_convertible_test.cpp: +Error E2396 ../../libs/type_traits/is_convertible_test.cpp 54: Template argument must be a constant expression in function main(int,char * *) +Error E2299 ../../libs/type_traits/is_convertible_test.cpp 54: Cannot generate template specialization from 'checker<(value)>' in function main(int,char * *) +Error E2379 ../../libs/type_traits/is_convertible_test.cpp 54: Statement missing ; in function main(int,char * *) +*** 3 errors in Compile *** +Fail + ** Microsoft Visual C++ -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/is_convertible_test.cpp /link user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /Zi /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/is_convertible_test.cpp /link user32.lib is_convertible_test.cpp LINK : LNK6004: boosttmp.exe not found or not built by the last incremental link; performing full link ./boosttmp.exe @@ -166,7 +773,7 @@ LINK : LNK6004: boosttmp.exe not found or not built by the last incremental link Pass ** Microsoft Visual C++ with STLport -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/is_convertible_test.cpp /link /libpath:e:/stlport/lib user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MT /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/is_convertible_test.cpp /link /libpath:e:/stlport/lib user32.lib is_convertible_test.cpp ../..\boost/type_traits/conversion_traits.hpp(57) : warning C4244: 'argument' : conversion from 'float' to 'int', possible loss of data ../..\boost/type_traits/conversion_traits.hpp(83) : see reference to class template instantiation 'boost::detail::from_not_void_conversion::bind' being compiled @@ -178,7 +785,116 @@ Pass *** libs/type_traits/is_same_test.cpp *** ** GCC 2.95.2 -g++ -o boosttmp.exe -ftemplate-depth-30 -I../.. ../../libs/type_traits/is_same_test.cpp +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -I../.. ../../libs/type_traits/is_same_test.cpp +./boosttmp.exe +13 tests completed, 0 failures found, 0 failures expected from this compiler. +Pass + +** GCC 2.95.2 + SGI STL 3.3 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -Id:/stlimp/sgi330 -I../.. ../../libs/type_traits/is_same_test.cpp +./boosttmp.exe +13 tests completed, 0 failures found, 0 failures expected from this compiler. +Pass + +** GCC 2.95.2 + STLPort 4 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -D__STL_DEBUG -Ie:/stlport/stlport -I../.. ../../libs/type_traits/is_same_test.cpp -Le:/stlport/lib -lstlport_cygwin_stldebug +In file included from e:/stlport/stlport/stl/_iterator_base.h:38, + from e:/stlport/stlport/stl/_iterator.h:34, + from e:/stlport/stlport/iterator:35, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/same_traits.hpp:15, + from ../../libs/type_traits/is_same_test.cpp:7: +e:/stlport/stlport/stl/type_traits.h:198: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:206: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:319: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:323: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_string_hash.h:23, + from e:/stlport/stlport/stl/_string.h:1534, + from e:/stlport/stlport/stl/_locale.c:23, + from e:/stlport/stlport/stl/_locale.h:217, + from e:/stlport/stlport/stl/_ios_base.h:25, + from e:/stlport/stlport/stl/_streambuf.h:21, + from e:/stlport/stlport/streambuf:31, + from e:/stlport/stlport/stl/_stream_iterator.h:47, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/same_traits.hpp:15, + from ../../libs/type_traits/is_same_test.cpp:7: +e:/stlport/stlport/stl/_hash_fun.h:93: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_hash_fun.h:96: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/limits:39, + from e:/stlport/stlport/stl/_ostream.h:24, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/same_traits.hpp:15, + from ../../libs/type_traits/is_same_test.cpp:7: +e:/stlport/stlport/stl/_limits.h:261: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:266: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ forbids long long integer constants +In file included from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/same_traits.hpp:15, + from ../../libs/type_traits/is_same_test.cpp:7: +e:/stlport/stlport/stl/_ostream.h:94: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_ostream.h:95: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/same_traits.hpp:15, + from ../../libs/type_traits/is_same_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.h:233: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:238: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:309: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:311: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:363: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:368: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:406: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:408: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:459: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:460: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_numeric_facets.h:529, + from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/same_traits.hpp:15, + from ../../libs/type_traits/is_same_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.c:127: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:135: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:187: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:194: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/same_traits.hpp:15, + from ../../libs/type_traits/is_same_test.cpp:7: +e:/stlport/stlport/stl/_istream.h:90: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_istream.h:91: warning: ANSI C++ does not support `long long' ./boosttmp.exe 13 tests completed, 0 failures found, 0 failures expected from this compiler. Pass @@ -190,8 +906,15 @@ bcc32 -eboosttmp.exe -I../.. -j10 -q ../../libs/type_traits/is_same_test.cpp 13 tests completed, 0 failures found, 0 failures expected from this compiler. Pass +** Borland C++ 5.4 +e:/cpp/cbuilder4/bin/bcc32 -eboosttmp.exe -I../.. -j10 -q ../../libs/type_traits/is_same_test.cpp +../../libs/type_traits/is_same_test.cpp: +./boosttmp.exe +13 tests completed, 0 failures found, 0 failures expected from this compiler. +Pass + ** Microsoft Visual C++ -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/is_same_test.cpp /link user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /Zi /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/is_same_test.cpp /link user32.lib is_same_test.cpp LINK : LNK6004: boosttmp.exe not found or not built by the last incremental link; performing full link ./boosttmp.exe @@ -201,7 +924,7 @@ checking value of (::boost::is_same::value)...failed Pass ** Microsoft Visual C++ with STLport -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/is_same_test.cpp /link /libpath:e:/stlport/lib user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MT /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/is_same_test.cpp /link /libpath:e:/stlport/lib user32.lib is_same_test.cpp ./boosttmp.exe checking value of (::boost::is_same::value)...failed @@ -212,7 +935,152 @@ Pass *** libs/type_traits/object_type_traits_test.cpp *** ** GCC 2.95.2 -g++ -o boosttmp.exe -ftemplate-depth-30 -I../.. ../../libs/type_traits/object_type_traits_test.cpp +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -I../.. ../../libs/type_traits/object_type_traits_test.cpp +./boosttmp.exe +checking value of boost::has_trivial_constructor::value...failed + found: 0 expected 1 +checking value of boost::has_trivial_copy::value...failed + found: 0 expected 1 +checking value of boost::has_trivial_assign::value...failed + found: 0 expected 1 +checking value of boost::is_empty::value...failed + found: 0 expected 1 +checking value of boost::is_empty::value...failed + found: 0 expected 1 +checking value of boost::is_empty::value...failed + boost::is_empty::value does not compile on this compiler +checking value of boost::is_empty::value...failed + found: 0 expected 1 +129 tests completed, 7 failures found, 7 failures expected from this compiler. +Pass + +** GCC 2.95.2 + SGI STL 3.3 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -Id:/stlimp/sgi330 -I../.. ../../libs/type_traits/object_type_traits_test.cpp +./boosttmp.exe +checking value of boost::has_trivial_constructor::value...failed + found: 0 expected 1 +checking value of boost::has_trivial_copy::value...failed + found: 0 expected 1 +checking value of boost::has_trivial_assign::value...failed + found: 0 expected 1 +checking value of boost::is_empty::value...failed + found: 0 expected 1 +checking value of boost::is_empty::value...failed + found: 0 expected 1 +checking value of boost::is_empty::value...failed + boost::is_empty::value does not compile on this compiler +checking value of boost::is_empty::value...failed + found: 0 expected 1 +129 tests completed, 7 failures found, 7 failures expected from this compiler. +Pass + +** GCC 2.95.2 + STLPort 4 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -D__STL_DEBUG -Ie:/stlport/stlport -I../.. ../../libs/type_traits/object_type_traits_test.cpp -Le:/stlport/lib -lstlport_cygwin_stldebug +In file included from e:/stlport/stlport/stl/_iterator_base.h:38, + from e:/stlport/stlport/stl/_iterator.h:34, + from e:/stlport/stlport/iterator:35, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/object_traits.hpp:19, + from ../../libs/type_traits/object_type_traits_test.cpp:7: +e:/stlport/stlport/stl/type_traits.h:198: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:206: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:319: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:323: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_string_hash.h:23, + from e:/stlport/stlport/stl/_string.h:1534, + from e:/stlport/stlport/stl/_locale.c:23, + from e:/stlport/stlport/stl/_locale.h:217, + from e:/stlport/stlport/stl/_ios_base.h:25, + from e:/stlport/stlport/stl/_streambuf.h:21, + from e:/stlport/stlport/streambuf:31, + from e:/stlport/stlport/stl/_stream_iterator.h:47, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/object_traits.hpp:19, + from ../../libs/type_traits/object_type_traits_test.cpp:7: +e:/stlport/stlport/stl/_hash_fun.h:93: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_hash_fun.h:96: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/limits:39, + from e:/stlport/stlport/stl/_ostream.h:24, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/object_traits.hpp:19, + from ../../libs/type_traits/object_type_traits_test.cpp:7: +e:/stlport/stlport/stl/_limits.h:261: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:266: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ forbids long long integer constants +In file included from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/object_traits.hpp:19, + from ../../libs/type_traits/object_type_traits_test.cpp:7: +e:/stlport/stlport/stl/_ostream.h:94: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_ostream.h:95: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/object_traits.hpp:19, + from ../../libs/type_traits/object_type_traits_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.h:233: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:238: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:309: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:311: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:363: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:368: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:406: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:408: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:459: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:460: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_numeric_facets.h:529, + from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/object_traits.hpp:19, + from ../../libs/type_traits/object_type_traits_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.c:127: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:135: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:187: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:194: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/object_traits.hpp:19, + from ../../libs/type_traits/object_type_traits_test.cpp:7: +e:/stlport/stlport/stl/_istream.h:90: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_istream.h:91: warning: ANSI C++ does not support `long long' +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../boost/type_traits/composite_traits.hpp:30, + from ../../boost/type_traits/object_traits.hpp:25, + from ../../libs/type_traits/object_type_traits_test.cpp:7: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' ./boosttmp.exe checking value of boost::has_trivial_constructor::value...failed found: 0 expected 1 @@ -264,8 +1132,41 @@ checking value of boost::is_empty::value...failed 129 tests completed, 13 failures found, 13 failures expected from this compiler. Pass +** Borland C++ 5.4 +e:/cpp/cbuilder4/bin/bcc32 -eboosttmp.exe -I../.. -j10 -q ../../libs/type_traits/object_type_traits_test.cpp +../../libs/type_traits/object_type_traits_test.cpp: +./boosttmp.exe +checking value of boost::is_class::value...failed + found: 1 expected 0 +checking value of boost::is_POD::value...failed + found: 0 expected 1 +checking value of boost::has_trivial_constructor::value...failed + found: 0 expected 1 +checking value of boost::has_trivial_constructor::value...failed + found: 0 expected 1 +checking value of boost::has_trivial_copy::value...failed + found: 0 expected 1 +checking value of boost::has_trivial_copy::value...failed + found: 0 expected 1 +checking value of boost::has_trivial_assign::value...failed + found: 0 expected 1 +checking value of boost::has_trivial_assign::value...failed + found: 0 expected 1 +checking value of boost::has_trivial_destructor::value...failed + found: 0 expected 1 +checking value of boost::is_empty::value...failed + found: 0 expected 1 +checking value of boost::is_empty::value...failed + found: 0 expected 1 +checking value of boost::is_empty::value...failed + boost::is_empty::value does not compile on this compiler +checking value of boost::is_empty::value...failed + found: 0 expected 1 +129 tests completed, 13 failures found, 13 failures expected from this compiler. +Pass + ** Microsoft Visual C++ -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/object_type_traits_test.cpp /link user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /Zi /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/object_type_traits_test.cpp /link user32.lib object_type_traits_test.cpp LINK : LNK6004: boosttmp.exe not found or not built by the last incremental link; performing full link ./boosttmp.exe @@ -311,7 +1212,7 @@ checking value of boost::is_empty::value...failed Pass ** Microsoft Visual C++ with STLport -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/object_type_traits_test.cpp /link /libpath:e:/stlport/lib user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MT /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/object_type_traits_test.cpp /link /libpath:e:/stlport/lib user32.lib object_type_traits_test.cpp ./boosttmp.exe checking value of boost::is_POD::value...failed @@ -358,7 +1259,126 @@ Pass *** libs/type_traits/transform_traits_test.cpp *** ** GCC 2.95.2 -g++ -o boosttmp.exe -ftemplate-depth-30 -I../.. ../../libs/type_traits/transform_traits_test.cpp +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -I../.. ../../libs/type_traits/transform_traits_test.cpp +./boosttmp.exe +checking type of boost::remove_reference::type...failed + expected type was int + typeid(int) was: i + typeid(boost::remove_reference::type) was: i + In template class t12type_checker2ZiZCRi +1799 tests completed, 1 failures found, 1 failures expected from this compiler. +Pass + +** GCC 2.95.2 + SGI STL 3.3 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -Id:/stlimp/sgi330 -I../.. ../../libs/type_traits/transform_traits_test.cpp +./boosttmp.exe +checking type of boost::remove_reference::type...failed + expected type was int + typeid(int) was: i + typeid(boost::remove_reference::type) was: i + In template class t12type_checker2ZiZCRi +1799 tests completed, 1 failures found, 1 failures expected from this compiler. +Pass + +** GCC 2.95.2 + STLPort 4 +g++ -o boosttmp.exe -pedantic -Wall -ftemplate-depth-30 -D__STL_DEBUG -Ie:/stlport/stlport -I../.. ../../libs/type_traits/transform_traits_test.cpp -Le:/stlport/lib -lstlport_cygwin_stldebug +In file included from e:/stlport/stlport/stl/_iterator_base.h:38, + from e:/stlport/stlport/stl/_iterator.h:34, + from e:/stlport/stlport/iterator:35, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/transform_traits.hpp:17, + from ../../libs/type_traits/transform_traits_test.cpp:7: +e:/stlport/stlport/stl/type_traits.h:198: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:206: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:319: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:323: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_string_hash.h:23, + from e:/stlport/stlport/stl/_string.h:1534, + from e:/stlport/stlport/stl/_locale.c:23, + from e:/stlport/stlport/stl/_locale.h:217, + from e:/stlport/stlport/stl/_ios_base.h:25, + from e:/stlport/stlport/stl/_streambuf.h:21, + from e:/stlport/stlport/streambuf:31, + from e:/stlport/stlport/stl/_stream_iterator.h:47, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/transform_traits.hpp:17, + from ../../libs/type_traits/transform_traits_test.cpp:7: +e:/stlport/stlport/stl/_hash_fun.h:93: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_hash_fun.h:96: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/limits:39, + from e:/stlport/stlport/stl/_ostream.h:24, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/transform_traits.hpp:17, + from ../../libs/type_traits/transform_traits_test.cpp:7: +e:/stlport/stlport/stl/_limits.h:261: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:266: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ forbids long long integer constants +In file included from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/transform_traits.hpp:17, + from ../../libs/type_traits/transform_traits_test.cpp:7: +e:/stlport/stlport/stl/_ostream.h:94: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_ostream.h:95: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/transform_traits.hpp:17, + from ../../libs/type_traits/transform_traits_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.h:233: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:238: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:309: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:311: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:363: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:368: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:406: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:408: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:459: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:460: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_numeric_facets.h:529, + from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/transform_traits.hpp:17, + from ../../libs/type_traits/transform_traits_test.cpp:7: +e:/stlport/stlport/stl/_numeric_facets.c:127: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:135: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:187: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:194: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from ../../boost/config.hpp:193, + from ../../boost/type_traits/ice.hpp:16, + from ../../boost/type_traits/transform_traits.hpp:17, + from ../../libs/type_traits/transform_traits_test.cpp:7: +e:/stlport/stlport/stl/_istream.h:90: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_istream.h:91: warning: ANSI C++ does not support `long long' ./boosttmp.exe checking type of boost::remove_reference::type...failed expected type was int @@ -2002,86 +3022,6 @@ checking type of ::boost::add_pointer::type...failed typeid(enum1 volatile*) was: volatile enum1 * typeid(::boost::add_pointer::type) was: enum1 * In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was bool const* - typeid(bool const*) was: const bool * - typeid(::boost::add_pointer::type) was: bool * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was char const* - typeid(char const*) was: const char * - typeid(::boost::add_pointer::type) was: char * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was wchar_t const* - typeid(wchar_t const*) was: const wchar_t * - typeid(::boost::add_pointer::type) was: wchar_t * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was signed char const* - typeid(signed char const*) was: const signed char * - typeid(::boost::add_pointer::type) was: signed char * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was unsigned char const* - typeid(unsigned char const*) was: const unsigned char * - typeid(::boost::add_pointer::type) was: unsigned char * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was short const* - typeid(short const*) was: const short * - typeid(::boost::add_pointer::type) was: short * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was unsigned short const* - typeid(unsigned short const*) was: const unsigned short * - typeid(::boost::add_pointer::type) was: unsigned short * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was int const* - typeid(int const*) was: const int * - typeid(::boost::add_pointer::type) was: int * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was unsigned int const* - typeid(unsigned int const*) was: const unsigned int * - typeid(::boost::add_pointer::type) was: unsigned int * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was long const* - typeid(long const*) was: const long * - typeid(::boost::add_pointer::type) was: long * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was unsigned long const* - typeid(unsigned long const*) was: const unsigned long * - typeid(::boost::add_pointer::type) was: unsigned long * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was float const* - typeid(float const*) was: const float * - typeid(::boost::add_pointer::type) was: float * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was long double const* - typeid(long double const*) was: const long double * - typeid(::boost::add_pointer::type) was: long double * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was double const* - typeid(double const*) was: const double * - typeid(::boost::add_pointer::type) was: double * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was UDT const* - typeid(UDT const*) was: const UDT * - typeid(::boost::add_pointer::type) was: UDT * - In template class type_checker -checking type of ::boost::add_pointer::type...failed - expected type was enum1 const* - typeid(enum1 const*) was: const enum1 * - typeid(::boost::add_pointer::type) was: enum1 * - In template class type_checker checking type of ::boost::add_pointer::type...failed expected type was bool *volatile* typeid(bool *volatile*) was: bool * volatile * @@ -2162,6 +3102,86 @@ checking type of ::boost::add_pointer::type...failed typeid(enum1 *volatile*) was: enum1 * volatile * typeid(::boost::add_pointer::type) was: enum1 * * In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was bool const* + typeid(bool const*) was: const bool * + typeid(::boost::add_pointer::type) was: bool * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was char const* + typeid(char const*) was: const char * + typeid(::boost::add_pointer::type) was: char * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was wchar_t const* + typeid(wchar_t const*) was: const wchar_t * + typeid(::boost::add_pointer::type) was: wchar_t * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was signed char const* + typeid(signed char const*) was: const signed char * + typeid(::boost::add_pointer::type) was: signed char * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was unsigned char const* + typeid(unsigned char const*) was: const unsigned char * + typeid(::boost::add_pointer::type) was: unsigned char * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was short const* + typeid(short const*) was: const short * + typeid(::boost::add_pointer::type) was: short * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was unsigned short const* + typeid(unsigned short const*) was: const unsigned short * + typeid(::boost::add_pointer::type) was: unsigned short * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was int const* + typeid(int const*) was: const int * + typeid(::boost::add_pointer::type) was: int * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was unsigned int const* + typeid(unsigned int const*) was: const unsigned int * + typeid(::boost::add_pointer::type) was: unsigned int * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was long const* + typeid(long const*) was: const long * + typeid(::boost::add_pointer::type) was: long * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was unsigned long const* + typeid(unsigned long const*) was: const unsigned long * + typeid(::boost::add_pointer::type) was: unsigned long * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was float const* + typeid(float const*) was: const float * + typeid(::boost::add_pointer::type) was: float * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was long double const* + typeid(long double const*) was: const long double * + typeid(::boost::add_pointer::type) was: long double * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was double const* + typeid(double const*) was: const double * + typeid(::boost::add_pointer::type) was: double * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was UDT const* + typeid(UDT const*) was: const UDT * + typeid(::boost::add_pointer::type) was: UDT * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was enum1 const* + typeid(enum1 const*) was: const enum1 * + typeid(::boost::add_pointer::type) was: enum1 * + In template class type_checker checking type of ::boost::add_pointer::type...failed expected type was bool const * typeid(bool const *) was: const bool * @@ -2485,200 +3505,1304 @@ checking type of ::boost::add_pointer::type...failed 1799 tests completed, 422 failures found, 422 failures expected from this compiler. Pass +** Borland C++ 5.4 +e:/cpp/cbuilder4/bin/bcc32 -eboosttmp.exe -I../.. -j10 -q ../../libs/type_traits/transform_traits_test.cpp +../../libs/type_traits/transform_traits_test.cpp: +./boosttmp.exe +checking type of ::boost::remove_const::type...failed + expected type was int volatile + typeid(int volatile) was: int + typeid(::boost::remove_const::type) was: int + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT volatile + typeid(UDT volatile) was: UDT + typeid(::boost::remove_const::type) was: UDT + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 volatile + typeid(enum1 volatile) was: enum1 + typeid(::boost::remove_const::type) was: enum1 + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was int volatile + typeid(int volatile) was: int + typeid(::boost::remove_const::type) was: int + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT volatile + typeid(UDT volatile) was: UDT + typeid(::boost::remove_const::type) was: UDT + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 volatile + typeid(enum1 volatile) was: enum1 + typeid(::boost::remove_const::type) was: enum1 + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was int *volatile + typeid(int *volatile) was: int * + typeid(::boost::remove_const::type) was: int * + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT *volatile + typeid(UDT *volatile) was: UDT * + typeid(::boost::remove_const::type) was: UDT * + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 *volatile + typeid(enum1 *volatile) was: enum1 * + typeid(::boost::remove_const::type) was: enum1 * + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was int *volatile + typeid(int *volatile) was: int * + typeid(::boost::remove_const::type) was: int * + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT *volatile + typeid(UDT *volatile) was: UDT * + typeid(::boost::remove_const::type) was: UDT * + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 *volatile + typeid(enum1 *volatile) was: enum1 * + typeid(::boost::remove_const::type) was: enum1 * + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was int volatile[2] + typeid(int volatile[2]) was: int[2] + typeid(::boost::remove_const::type) was: int[2] + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT volatile[2] + typeid(UDT volatile[2]) was: UDT[2] + typeid(::boost::remove_const::type) was: UDT[2] + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 volatile[2] + typeid(enum1 volatile[2]) was: enum1[2] + typeid(::boost::remove_const::type) was: enum1[2] + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was int volatile[2] + typeid(int volatile[2]) was: int[2] + typeid(::boost::remove_const::type) was: int[2] + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT volatile[2] + typeid(UDT volatile[2]) was: UDT[2] + typeid(::boost::remove_const::type) was: UDT[2] + In template class type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 volatile[2] + typeid(enum1 volatile[2]) was: enum1[2] + typeid(::boost::remove_const::type) was: enum1[2] + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was int const + typeid(int const) was: int + typeid(::boost::remove_volatile::type) was: int + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT const + typeid(UDT const) was: UDT + typeid(::boost::remove_volatile::type) was: UDT + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 const + typeid(enum1 const) was: enum1 + typeid(::boost::remove_volatile::type) was: enum1 + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was int const + typeid(int const) was: int + typeid(::boost::remove_volatile::type) was: int + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT const + typeid(UDT const) was: UDT + typeid(::boost::remove_volatile::type) was: UDT + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 const + typeid(enum1 const) was: enum1 + typeid(::boost::remove_volatile::type) was: enum1 + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was int *const + typeid(int *const) was: int * + typeid(::boost::remove_volatile::type) was: int * + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT *const + typeid(UDT *const) was: UDT * + typeid(::boost::remove_volatile::type) was: UDT * + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 *const + typeid(enum1 *const) was: enum1 * + typeid(::boost::remove_volatile::type) was: enum1 * + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was int *const + typeid(int *const) was: int * + typeid(::boost::remove_volatile::type) was: int * + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT *const + typeid(UDT *const) was: UDT * + typeid(::boost::remove_volatile::type) was: UDT * + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 *const + typeid(enum1 *const) was: enum1 * + typeid(::boost::remove_volatile::type) was: enum1 * + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was int const[2] + typeid(int const[2]) was: int[2] + typeid(::boost::remove_volatile::type) was: int[2] + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT const[2] + typeid(UDT const[2]) was: UDT[2] + typeid(::boost::remove_volatile::type) was: UDT[2] + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 const[2] + typeid(enum1 const[2]) was: enum1[2] + typeid(::boost::remove_volatile::type) was: enum1[2] + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was int const[2] + typeid(int const[2]) was: int[2] + typeid(::boost::remove_volatile::type) was: int[2] + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT const[2] + typeid(UDT const[2]) was: UDT[2] + typeid(::boost::remove_volatile::type) was: UDT[2] + In template class type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 const[2] + typeid(enum1 const[2]) was: enum1[2] + typeid(::boost::remove_volatile::type) was: enum1[2] + In template class type_checker +checking type of ::boost::add_reference::type...failed + expected type was int const (&)[2][3] + typeid(int const (&)[2][3]) was: int ( *)[3] + typeid(::boost::add_reference::type) was: int ( *)[3] + In template class type_checker +checking type of ::boost::add_reference::type...failed + expected type was UDT const (&)[2][3] + typeid(UDT const (&)[2][3]) was: UDT ( *)[3] + typeid(::boost::add_reference::type) was: UDT ( *)[3] + In template class type_checker +checking type of ::boost::add_reference::type...failed + expected type was enum1 const (&)[2][3] + typeid(enum1 const (&)[2][3]) was: enum1 ( *)[3] + typeid(::boost::add_reference::type) was: enum1 ( *)[3] + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was int const* + typeid(int const*) was: const int * + typeid(::boost::add_pointer::type) was: int * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was UDT const* + typeid(UDT const*) was: const UDT * + typeid(::boost::add_pointer::type) was: UDT * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was enum1 const* + typeid(enum1 const*) was: const enum1 * + typeid(::boost::add_pointer::type) was: enum1 * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was int volatile* + typeid(int volatile*) was: volatile int * + typeid(::boost::add_pointer::type) was: int * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was UDT volatile* + typeid(UDT volatile*) was: volatile UDT * + typeid(::boost::add_pointer::type) was: UDT * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was enum1 volatile* + typeid(enum1 volatile*) was: volatile enum1 * + typeid(::boost::add_pointer::type) was: enum1 * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was int *volatile* + typeid(int *volatile*) was: int * volatile * + typeid(::boost::add_pointer::type) was: int * * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was UDT *volatile* + typeid(UDT *volatile*) was: UDT * volatile * + typeid(::boost::add_pointer::type) was: UDT * * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was enum1 *volatile* + typeid(enum1 *volatile*) was: enum1 * volatile * + typeid(::boost::add_pointer::type) was: enum1 * * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was int const* + typeid(int const*) was: const int * + typeid(::boost::add_pointer::type) was: int * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was UDT const* + typeid(UDT const*) was: const UDT * + typeid(::boost::add_pointer::type) was: UDT * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was enum1 const* + typeid(enum1 const*) was: const enum1 * + typeid(::boost::add_pointer::type) was: enum1 * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was int const * + typeid(int const *) was: const int * + typeid(::boost::add_pointer::type) was: int * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was UDT const * + typeid(UDT const *) was: const UDT * + typeid(::boost::add_pointer::type) was: UDT * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was enum1 const * + typeid(enum1 const *) was: const enum1 * + typeid(::boost::add_pointer::type) was: enum1 * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was int const* + typeid(int const*) was: const int * + typeid(::boost::add_pointer::type) was: int * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was UDT const* + typeid(UDT const*) was: const UDT * + typeid(::boost::add_pointer::type) was: UDT * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was enum1 const* + typeid(enum1 const*) was: const enum1 * + typeid(::boost::add_pointer::type) was: enum1 * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was int const (*)[3] + typeid(int const (*)[3]) was: int ( *) const[3] + typeid(::boost::add_pointer::type) was: int ( *)[3] + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was UDT const (*)[3] + typeid(UDT const (*)[3]) was: UDT ( *) const[3] + typeid(::boost::add_pointer::type) was: UDT ( *)[3] + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was enum1 const (*)[3] + typeid(enum1 const (*)[3]) was: enum1 ( *) const[3] + typeid(::boost::add_pointer::type) was: enum1 ( *)[3] + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was int * + typeid(int *) was: int * + typeid(::boost::add_pointer::type) was: int * * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was UDT * + typeid(UDT *) was: UDT * + typeid(::boost::add_pointer::type) was: UDT * * + In template class type_checker +checking type of ::boost::add_pointer::type...failed + expected type was enum1 * + typeid(enum1 *) was: enum1 * + typeid(::boost::add_pointer::type) was: enum1 * * + In template class type_checker +343 tests completed, 63 failures found, 97 failures expected from this compiler. +Fail + ** Microsoft Visual C++ -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/transform_traits_test.cpp /link user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /Zi /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/transform_traits_test.cpp /link user32.lib transform_traits_test.cpp -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled +LINK : LNK6004: boosttmp.exe not found or not built by the last incremental link; performing full link +./boosttmp.exe +checking type of ::boost::remove_const::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_const::type) was: struct UDT + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_const::type) was: enum enum1 + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT volatile + typeid(UDT volatile) was: struct UDT + typeid(::boost::remove_const::type) was: struct UDT + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 volatile + typeid(enum1 volatile) was: enum enum1 + typeid(::boost::remove_const::type) was: enum enum1 + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT * + typeid(UDT *) was: struct UDT * + typeid(::boost::remove_const::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 * + typeid(enum1 *) was: enum enum1 * + typeid(::boost::remove_const::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT *volatile + typeid(UDT *volatile) was: struct UDT * + typeid(::boost::remove_const::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 *volatile + typeid(enum1 *volatile) was: enum enum1 * + typeid(::boost::remove_const::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was int [2] + typeid(int [2]) was: int [2] + typeid(::boost::remove_const::type) was: int const [2] + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT [2] + typeid(UDT [2]) was: struct UDT [2] + typeid(::boost::remove_const::type) was: struct UDT const [2] + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 [2] + typeid(enum1 [2]) was: enum enum1 [2] + typeid(::boost::remove_const::type) was: enum enum1 const [2] + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was int volatile[2] + typeid(int volatile[2]) was: int volatile [2] + typeid(::boost::remove_const::type) was: int const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT volatile[2] + typeid(UDT volatile[2]) was: struct UDT volatile [2] + typeid(::boost::remove_const::type) was: struct UDT const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 volatile[2] + typeid(enum1 volatile[2]) was: enum enum1 volatile [2] + typeid(::boost::remove_const::type) was: enum enum1 const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT const* + typeid(UDT const*) was: struct UDT const * + typeid(::boost::remove_const::type) was: struct UDT const * + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 const* + typeid(enum1 const*) was: enum enum1 const * + typeid(::boost::remove_const::type) was: enum enum1 const * + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_volatile::type) was: struct UDT + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_volatile::type) was: enum enum1 + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT const + typeid(UDT const) was: struct UDT + typeid(::boost::remove_volatile::type) was: struct UDT + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 const + typeid(enum1 const) was: enum enum1 + typeid(::boost::remove_volatile::type) was: enum enum1 + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT * + typeid(UDT *) was: struct UDT * + typeid(::boost::remove_volatile::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 * + typeid(enum1 *) was: enum enum1 * + typeid(::boost::remove_volatile::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT *const + typeid(UDT *const) was: struct UDT * + typeid(::boost::remove_volatile::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 *const + typeid(enum1 *const) was: enum enum1 * + typeid(::boost::remove_volatile::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was int [2] + typeid(int [2]) was: int [2] + typeid(::boost::remove_volatile::type) was: int volatile [2] + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT [2] + typeid(UDT [2]) was: struct UDT [2] + typeid(::boost::remove_volatile::type) was: struct UDT volatile [2] + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 [2] + typeid(enum1 [2]) was: enum enum1 [2] + typeid(::boost::remove_volatile::type) was: enum enum1 volatile [2] + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was int const[2] + typeid(int const[2]) was: int const [2] + typeid(::boost::remove_volatile::type) was: int const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT const[2] + typeid(UDT const[2]) was: struct UDT const [2] + typeid(::boost::remove_volatile::type) was: struct UDT const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 const[2] + typeid(enum1 const[2]) was: enum enum1 const [2] + typeid(::boost::remove_volatile::type) was: enum enum1 const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT const* + typeid(UDT const*) was: struct UDT const * + typeid(::boost::remove_volatile::type) was: struct UDT const * + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 const* + typeid(enum1 const*) was: enum enum1 const * + typeid(::boost::remove_volatile::type) was: enum enum1 const * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_cv::type) was: struct UDT + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_cv::type) was: enum enum1 + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_cv::type) was: struct UDT + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_cv::type) was: enum enum1 + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_cv::type) was: struct UDT + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_cv::type) was: enum enum1 + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT * + typeid(UDT *) was: struct UDT * + typeid(::boost::remove_cv::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 * + typeid(enum1 *) was: enum enum1 * + typeid(::boost::remove_cv::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT * + typeid(UDT *) was: struct UDT * + typeid(::boost::remove_cv::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 * + typeid(enum1 *) was: enum enum1 * + typeid(::boost::remove_cv::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT * + typeid(UDT *) was: struct UDT * + typeid(::boost::remove_cv::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 * + typeid(enum1 *) was: enum enum1 * + typeid(::boost::remove_cv::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was int [2] + typeid(int [2]) was: int [2] + typeid(::boost::remove_cv::type) was: int const [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT [2] + typeid(UDT [2]) was: struct UDT [2] + typeid(::boost::remove_cv::type) was: struct UDT const [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 [2] + typeid(enum1 [2]) was: enum enum1 [2] + typeid(::boost::remove_cv::type) was: enum enum1 const [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was int [2] + typeid(int [2]) was: int [2] + typeid(::boost::remove_cv::type) was: int volatile [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT [2] + typeid(UDT [2]) was: struct UDT [2] + typeid(::boost::remove_cv::type) was: struct UDT volatile [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 [2] + typeid(enum1 [2]) was: enum enum1 [2] + typeid(::boost::remove_cv::type) was: enum enum1 volatile [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was int [2] + typeid(int [2]) was: int [2] + typeid(::boost::remove_cv::type) was: int const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT [2] + typeid(UDT [2]) was: struct UDT [2] + typeid(::boost::remove_cv::type) was: struct UDT const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 [2] + typeid(enum1 [2]) was: enum enum1 [2] + typeid(::boost::remove_cv::type) was: enum enum1 const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT const* + typeid(UDT const*) was: struct UDT const * + typeid(::boost::remove_cv::type) was: struct UDT const * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 const* + typeid(enum1 const*) was: enum enum1 const * + typeid(::boost::remove_cv::type) was: enum enum1 const * + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_reference::type) was: struct UDT & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_reference::type) was: enum enum1 & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was UDT const + typeid(UDT const) was: struct UDT + typeid(::boost::remove_reference::type) was: struct UDT const & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was enum1 const + typeid(enum1 const) was: enum enum1 + typeid(::boost::remove_reference::type) was: enum enum1 const & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_reference::type) was: struct UDT & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_reference::type) was: enum enum1 & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was UDT const + typeid(UDT const) was: struct UDT + typeid(::boost::remove_reference::type) was: struct UDT const & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was enum1 const + typeid(enum1 const) was: enum enum1 + typeid(::boost::remove_reference::type) was: enum enum1 const & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was int [2] + typeid(int [2]) was: int [2] + typeid(::boost::remove_reference::type) was: int (&)[2] + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was UDT [2] + typeid(UDT [2]) was: struct UDT [2] + typeid(::boost::remove_reference::type) was: struct UDT (&)[2] + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was enum1 [2] + typeid(enum1 [2]) was: enum enum1 [2] + typeid(::boost::remove_reference::type) was: enum enum1 (&)[2] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was int + typeid(int) was: int + typeid(::boost::remove_bounds::type) was: int [2] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_bounds::type) was: struct UDT [2] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_bounds::type) was: enum enum1 [2] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was int const + typeid(int const) was: int + typeid(::boost::remove_bounds::type) was: int const [2] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was UDT const + typeid(UDT const) was: struct UDT + typeid(::boost::remove_bounds::type) was: struct UDT const [2] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was enum1 const + typeid(enum1 const) was: enum enum1 + typeid(::boost::remove_bounds::type) was: enum enum1 const [2] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was int const[3] + typeid(int const[3]) was: int const [3] + typeid(::boost::remove_bounds::type) was: int const [2][3] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was UDT const[3] + typeid(UDT const[3]) was: struct UDT const [3] + typeid(::boost::remove_bounds::type) was: struct UDT const [2][3] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was enum1 const[3] + typeid(enum1 const[3]) was: enum enum1 const [3] + typeid(::boost::remove_bounds::type) was: enum enum1 const [2][3] + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_pointer::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_pointer::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was int + typeid(int) was: int + typeid(::boost::remove_pointer::type) was: int * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_pointer::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_pointer::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was UDT const + typeid(UDT const) was: struct UDT + typeid(::boost::remove_pointer::type) was: struct UDT const * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was enum1 const + typeid(enum1 const) was: enum enum1 + typeid(::boost::remove_pointer::type) was: enum enum1 const * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was UDT volatile + typeid(UDT volatile) was: struct UDT + typeid(::boost::remove_pointer::type) was: struct UDT volatile * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was enum1 volatile + typeid(enum1 volatile) was: enum enum1 + typeid(::boost::remove_pointer::type) was: enum enum1 volatile * + In template class struct type_checker +325 tests completed, 84 failures found, 0 failures expected from this compiler. Fail ** Microsoft Visual C++ with STLport -cl /Feboosttmp.exe /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/transform_traits_test.cpp /link /libpath:e:/stlport/lib user32.lib +cl /Feboosttmp.exe /nologo /Zm800 /MT /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport//stlport" /I "../.." /D "WIN32" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/transform_traits_test.cpp /link /libpath:e:/stlport/lib user32.lib transform_traits_test.cpp -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(319) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(320) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled -../..\boost/type_traits/transform_traits.hpp(167) : error C2528: '' : pointer to reference is illegal - ../../libs/type_traits/transform_traits_test.cpp(327) : see reference to class template instantiation 'boost::add_pointer' being compiled +./boosttmp.exe +checking type of ::boost::remove_const::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_const::type) was: struct UDT + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_const::type) was: enum enum1 + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT volatile + typeid(UDT volatile) was: struct UDT + typeid(::boost::remove_const::type) was: struct UDT + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 volatile + typeid(enum1 volatile) was: enum enum1 + typeid(::boost::remove_const::type) was: enum enum1 + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT * + typeid(UDT *) was: struct UDT * + typeid(::boost::remove_const::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 * + typeid(enum1 *) was: enum enum1 * + typeid(::boost::remove_const::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT *volatile + typeid(UDT *volatile) was: struct UDT * + typeid(::boost::remove_const::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 *volatile + typeid(enum1 *volatile) was: enum enum1 * + typeid(::boost::remove_const::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was int [2] + typeid(int [2]) was: int [2] + typeid(::boost::remove_const::type) was: int const [2] + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT [2] + typeid(UDT [2]) was: struct UDT [2] + typeid(::boost::remove_const::type) was: struct UDT const [2] + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 [2] + typeid(enum1 [2]) was: enum enum1 [2] + typeid(::boost::remove_const::type) was: enum enum1 const [2] + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was int volatile[2] + typeid(int volatile[2]) was: int volatile [2] + typeid(::boost::remove_const::type) was: int const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT volatile[2] + typeid(UDT volatile[2]) was: struct UDT volatile [2] + typeid(::boost::remove_const::type) was: struct UDT const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 volatile[2] + typeid(enum1 volatile[2]) was: enum enum1 volatile [2] + typeid(::boost::remove_const::type) was: enum enum1 const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was UDT const* + typeid(UDT const*) was: struct UDT const * + typeid(::boost::remove_const::type) was: struct UDT const * + In template class struct type_checker +checking type of ::boost::remove_const::type...failed + expected type was enum1 const* + typeid(enum1 const*) was: enum enum1 const * + typeid(::boost::remove_const::type) was: enum enum1 const * + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_volatile::type) was: struct UDT + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_volatile::type) was: enum enum1 + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT const + typeid(UDT const) was: struct UDT + typeid(::boost::remove_volatile::type) was: struct UDT + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 const + typeid(enum1 const) was: enum enum1 + typeid(::boost::remove_volatile::type) was: enum enum1 + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT * + typeid(UDT *) was: struct UDT * + typeid(::boost::remove_volatile::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 * + typeid(enum1 *) was: enum enum1 * + typeid(::boost::remove_volatile::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT *const + typeid(UDT *const) was: struct UDT * + typeid(::boost::remove_volatile::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 *const + typeid(enum1 *const) was: enum enum1 * + typeid(::boost::remove_volatile::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was int [2] + typeid(int [2]) was: int [2] + typeid(::boost::remove_volatile::type) was: int volatile [2] + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT [2] + typeid(UDT [2]) was: struct UDT [2] + typeid(::boost::remove_volatile::type) was: struct UDT volatile [2] + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 [2] + typeid(enum1 [2]) was: enum enum1 [2] + typeid(::boost::remove_volatile::type) was: enum enum1 volatile [2] + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was int const[2] + typeid(int const[2]) was: int const [2] + typeid(::boost::remove_volatile::type) was: int const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT const[2] + typeid(UDT const[2]) was: struct UDT const [2] + typeid(::boost::remove_volatile::type) was: struct UDT const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 const[2] + typeid(enum1 const[2]) was: enum enum1 const [2] + typeid(::boost::remove_volatile::type) was: enum enum1 const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was UDT const* + typeid(UDT const*) was: struct UDT const * + typeid(::boost::remove_volatile::type) was: struct UDT const * + In template class struct type_checker +checking type of ::boost::remove_volatile::type...failed + expected type was enum1 const* + typeid(enum1 const*) was: enum enum1 const * + typeid(::boost::remove_volatile::type) was: enum enum1 const * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_cv::type) was: struct UDT + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_cv::type) was: enum enum1 + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_cv::type) was: struct UDT + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_cv::type) was: enum enum1 + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_cv::type) was: struct UDT + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_cv::type) was: enum enum1 + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT * + typeid(UDT *) was: struct UDT * + typeid(::boost::remove_cv::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 * + typeid(enum1 *) was: enum enum1 * + typeid(::boost::remove_cv::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT * + typeid(UDT *) was: struct UDT * + typeid(::boost::remove_cv::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 * + typeid(enum1 *) was: enum enum1 * + typeid(::boost::remove_cv::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT * + typeid(UDT *) was: struct UDT * + typeid(::boost::remove_cv::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 * + typeid(enum1 *) was: enum enum1 * + typeid(::boost::remove_cv::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was int [2] + typeid(int [2]) was: int [2] + typeid(::boost::remove_cv::type) was: int const [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT [2] + typeid(UDT [2]) was: struct UDT [2] + typeid(::boost::remove_cv::type) was: struct UDT const [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 [2] + typeid(enum1 [2]) was: enum enum1 [2] + typeid(::boost::remove_cv::type) was: enum enum1 const [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was int [2] + typeid(int [2]) was: int [2] + typeid(::boost::remove_cv::type) was: int volatile [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT [2] + typeid(UDT [2]) was: struct UDT [2] + typeid(::boost::remove_cv::type) was: struct UDT volatile [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 [2] + typeid(enum1 [2]) was: enum enum1 [2] + typeid(::boost::remove_cv::type) was: enum enum1 volatile [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was int [2] + typeid(int [2]) was: int [2] + typeid(::boost::remove_cv::type) was: int const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT [2] + typeid(UDT [2]) was: struct UDT [2] + typeid(::boost::remove_cv::type) was: struct UDT const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 [2] + typeid(enum1 [2]) was: enum enum1 [2] + typeid(::boost::remove_cv::type) was: enum enum1 const volatile [2] + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was UDT const* + typeid(UDT const*) was: struct UDT const * + typeid(::boost::remove_cv::type) was: struct UDT const * + In template class struct type_checker +checking type of ::boost::remove_cv::type...failed + expected type was enum1 const* + typeid(enum1 const*) was: enum enum1 const * + typeid(::boost::remove_cv::type) was: enum enum1 const * + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_reference::type) was: struct UDT & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_reference::type) was: enum enum1 & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was UDT const + typeid(UDT const) was: struct UDT + typeid(::boost::remove_reference::type) was: struct UDT const & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was enum1 const + typeid(enum1 const) was: enum enum1 + typeid(::boost::remove_reference::type) was: enum enum1 const & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_reference::type) was: struct UDT & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_reference::type) was: enum enum1 & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was UDT const + typeid(UDT const) was: struct UDT + typeid(::boost::remove_reference::type) was: struct UDT const & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was enum1 const + typeid(enum1 const) was: enum enum1 + typeid(::boost::remove_reference::type) was: enum enum1 const & + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was int [2] + typeid(int [2]) was: int [2] + typeid(::boost::remove_reference::type) was: int (&)[2] + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was UDT [2] + typeid(UDT [2]) was: struct UDT [2] + typeid(::boost::remove_reference::type) was: struct UDT (&)[2] + In template class struct type_checker +checking type of ::boost::remove_reference::type...failed + expected type was enum1 [2] + typeid(enum1 [2]) was: enum enum1 [2] + typeid(::boost::remove_reference::type) was: enum enum1 (&)[2] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was int + typeid(int) was: int + typeid(::boost::remove_bounds::type) was: int [2] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_bounds::type) was: struct UDT [2] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_bounds::type) was: enum enum1 [2] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was int const + typeid(int const) was: int + typeid(::boost::remove_bounds::type) was: int const [2] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was UDT const + typeid(UDT const) was: struct UDT + typeid(::boost::remove_bounds::type) was: struct UDT const [2] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was enum1 const + typeid(enum1 const) was: enum enum1 + typeid(::boost::remove_bounds::type) was: enum enum1 const [2] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was int const[3] + typeid(int const[3]) was: int const [3] + typeid(::boost::remove_bounds::type) was: int const [2][3] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was UDT const[3] + typeid(UDT const[3]) was: struct UDT const [3] + typeid(::boost::remove_bounds::type) was: struct UDT const [2][3] + In template class struct type_checker +checking type of ::boost::remove_bounds::type...failed + expected type was enum1 const[3] + typeid(enum1 const[3]) was: enum enum1 const [3] + typeid(::boost::remove_bounds::type) was: enum enum1 const [2][3] + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_pointer::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_pointer::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was int + typeid(int) was: int + typeid(::boost::remove_pointer::type) was: int * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was UDT + typeid(UDT) was: struct UDT + typeid(::boost::remove_pointer::type) was: struct UDT * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was enum1 + typeid(enum1) was: enum enum1 + typeid(::boost::remove_pointer::type) was: enum enum1 * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was UDT const + typeid(UDT const) was: struct UDT + typeid(::boost::remove_pointer::type) was: struct UDT const * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was enum1 const + typeid(enum1 const) was: enum enum1 + typeid(::boost::remove_pointer::type) was: enum enum1 const * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was UDT volatile + typeid(UDT volatile) was: struct UDT + typeid(::boost::remove_pointer::type) was: struct UDT volatile * + In template class struct type_checker +checking type of ::boost::remove_pointer::type...failed + expected type was enum1 volatile + typeid(enum1 volatile) was: enum enum1 + typeid(::boost::remove_pointer::type) was: enum enum1 volatile * + In template class struct type_checker +325 tests completed, 84 failures found, 0 failures expected from this compiler. Fail *** libs/type_traits/trivial_destructor_example.cpp *** ** GCC 2.95.2 -g++ -c -ftemplate-depth-30 -I../.. ../../libs/type_traits/trivial_destructor_example.cpp +g++ -c -pedantic -Wall -ftemplate-depth-30 -I../.. ../../libs/type_traits/trivial_destructor_example.cpp +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../boost/type_traits.hpp:15, + from ../../libs/type_traits/trivial_destructor_example.cpp:26: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' +Pass + +** GCC 2.95.2 + SGI STL 3.3 +g++ -c -pedantic -Wall -ftemplate-depth-30 -Id:/stlimp/sgi330 -I../.. ../../libs/type_traits/trivial_destructor_example.cpp +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../boost/type_traits.hpp:15, + from ../../libs/type_traits/trivial_destructor_example.cpp:26: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' +Pass + +** GCC 2.95.2 + STLPort 4 +g++ -c -pedantic -Wall -ftemplate-depth-30 -D__STL_DEBUG -Ie:/stlport/stlport -I../.. ../../libs/type_traits/trivial_destructor_example.cpp +In file included from e:/stlport/stlport/stl/_iosfwd.h:24, + from e:/stlport/stlport/iosfwd:33, + from e:/stlport/stlport/iostream:33, + from ../../libs/type_traits/trivial_destructor_example.cpp:23: +e:/stlport/stlport/stl/type_traits.h:198: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:206: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:319: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:323: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_string_hash.h:23, + from e:/stlport/stlport/stl/_string.h:1534, + from e:/stlport/stlport/stl/_locale.c:23, + from e:/stlport/stlport/stl/_locale.h:217, + from e:/stlport/stlport/stl/_ios_base.h:25, + from e:/stlport/stlport/stl/_streambuf.h:21, + from e:/stlport/stlport/streambuf:31, + from e:/stlport/stlport/stl/_stream_iterator.h:47, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/trivial_destructor_example.cpp:23: +e:/stlport/stlport/stl/_hash_fun.h:93: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_hash_fun.h:96: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/limits:39, + from e:/stlport/stlport/stl/_ostream.h:24, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/trivial_destructor_example.cpp:23: +e:/stlport/stlport/stl/_limits.h:261: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:266: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ forbids long long integer constants +In file included from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/trivial_destructor_example.cpp:23: +e:/stlport/stlport/stl/_ostream.h:94: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_ostream.h:95: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/trivial_destructor_example.cpp:23: +e:/stlport/stlport/stl/_numeric_facets.h:233: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:238: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:309: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:311: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:363: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:368: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:406: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:408: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:459: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:460: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_numeric_facets.h:529, + from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/trivial_destructor_example.cpp:23: +e:/stlport/stlport/stl/_numeric_facets.c:127: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:135: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:187: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:194: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/trivial_destructor_example.cpp:23: +e:/stlport/stlport/stl/_istream.h:90: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_istream.h:91: warning: ANSI C++ does not support `long long' +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../boost/type_traits.hpp:15, + from ../../libs/type_traits/trivial_destructor_example.cpp:26: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' Pass ** Borland C++ 5.5.1 @@ -2690,20 +4814,146 @@ Warning W8027 ../..\boost/smart_ptr.hpp 265: Functions containing try are not ex Warning W8027 ../..\boost/smart_ptr.hpp 287: Functions containing try are not expanded inline Pass +** Borland C++ 5.4 +e:/cpp/cbuilder4/bin/bcc32 -c -I../.. -j10 -q ../../libs/type_traits/trivial_destructor_example.cpp +../../libs/type_traits/trivial_destructor_example.cpp: +Warning W8027 ../..\boost/smart_ptr.hpp 124: Functions containing try are not expanded inline +Warning W8027 ../..\boost/smart_ptr.hpp 195: Functions containing try are not expanded inline +Warning W8027 ../..\boost/smart_ptr.hpp 265: Functions containing try are not expanded inline +Warning W8027 ../..\boost/smart_ptr.hpp 287: Functions containing try are not expanded inline +Pass + ** Microsoft Visual C++ -cl /c /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/trivial_destructor_example.cpp +cl /c /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /Zi /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/trivial_destructor_example.cpp trivial_destructor_example.cpp Pass ** Microsoft Visual C++ with STLport -cl /c /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport/stlport" /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/trivial_destructor_example.cpp +cl /c /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport/stlport" /D__STL_DEBUG /I "../.." /D "WIN32" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/trivial_destructor_example.cpp trivial_destructor_example.cpp Pass *** libs/type_traits/copy_example.cpp *** ** GCC 2.95.2 -g++ -c -ftemplate-depth-30 -I../.. ../../libs/type_traits/copy_example.cpp +g++ -c -pedantic -Wall -ftemplate-depth-30 -I../.. ../../libs/type_traits/copy_example.cpp +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../boost/type_traits.hpp:15, + from ../../libs/type_traits/copy_example.cpp:29: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' +Pass + +** GCC 2.95.2 + SGI STL 3.3 +g++ -c -pedantic -Wall -ftemplate-depth-30 -Id:/stlimp/sgi330 -I../.. ../../libs/type_traits/copy_example.cpp +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../boost/type_traits.hpp:15, + from ../../libs/type_traits/copy_example.cpp:29: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' +Pass + +** GCC 2.95.2 + STLPort 4 +g++ -c -pedantic -Wall -ftemplate-depth-30 -D__STL_DEBUG -Ie:/stlport/stlport -I../.. ../../libs/type_traits/copy_example.cpp +In file included from e:/stlport/stlport/stl/_iosfwd.h:24, + from e:/stlport/stlport/iosfwd:33, + from e:/stlport/stlport/iostream:33, + from ../../libs/type_traits/copy_example.cpp:22: +e:/stlport/stlport/stl/type_traits.h:198: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:206: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:319: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:323: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_string_hash.h:23, + from e:/stlport/stlport/stl/_string.h:1534, + from e:/stlport/stlport/stl/_locale.c:23, + from e:/stlport/stlport/stl/_locale.h:217, + from e:/stlport/stlport/stl/_ios_base.h:25, + from e:/stlport/stlport/stl/_streambuf.h:21, + from e:/stlport/stlport/streambuf:31, + from e:/stlport/stlport/stl/_stream_iterator.h:47, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/copy_example.cpp:22: +e:/stlport/stlport/stl/_hash_fun.h:93: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_hash_fun.h:96: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/limits:39, + from e:/stlport/stlport/stl/_ostream.h:24, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/copy_example.cpp:22: +e:/stlport/stlport/stl/_limits.h:261: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:266: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ forbids long long integer constants +In file included from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/copy_example.cpp:22: +e:/stlport/stlport/stl/_ostream.h:94: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_ostream.h:95: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/copy_example.cpp:22: +e:/stlport/stlport/stl/_numeric_facets.h:233: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:238: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:309: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:311: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:363: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:368: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:406: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:408: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:459: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:460: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_numeric_facets.h:529, + from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/copy_example.cpp:22: +e:/stlport/stlport/stl/_numeric_facets.c:127: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:135: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:187: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:194: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/copy_example.cpp:22: +e:/stlport/stlport/stl/_istream.h:90: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_istream.h:91: warning: ANSI C++ does not support `long long' +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../boost/type_traits.hpp:15, + from ../../libs/type_traits/copy_example.cpp:29: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' Pass ** Borland C++ 5.5.1 @@ -2715,20 +4965,146 @@ Warning W8027 ../..\boost/smart_ptr.hpp 265: Functions containing try are not ex Warning W8027 ../..\boost/smart_ptr.hpp 287: Functions containing try are not expanded inline Pass +** Borland C++ 5.4 +e:/cpp/cbuilder4/bin/bcc32 -c -I../.. -j10 -q ../../libs/type_traits/copy_example.cpp +../../libs/type_traits/copy_example.cpp: +Warning W8027 ../..\boost/smart_ptr.hpp 124: Functions containing try are not expanded inline +Warning W8027 ../..\boost/smart_ptr.hpp 195: Functions containing try are not expanded inline +Warning W8027 ../..\boost/smart_ptr.hpp 265: Functions containing try are not expanded inline +Warning W8027 ../..\boost/smart_ptr.hpp 287: Functions containing try are not expanded inline +Pass + ** Microsoft Visual C++ -cl /c /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/copy_example.cpp +cl /c /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /Zi /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/copy_example.cpp copy_example.cpp Pass ** Microsoft Visual C++ with STLport -cl /c /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport/stlport" /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/copy_example.cpp +cl /c /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport/stlport" /D__STL_DEBUG /I "../.." /D "WIN32" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/copy_example.cpp copy_example.cpp Pass *** libs/type_traits/fill_example.cpp *** ** GCC 2.95.2 -g++ -c -ftemplate-depth-30 -I../.. ../../libs/type_traits/fill_example.cpp +g++ -c -pedantic -Wall -ftemplate-depth-30 -I../.. ../../libs/type_traits/fill_example.cpp +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../boost/type_traits.hpp:15, + from ../../libs/type_traits/fill_example.cpp:29: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' +Pass + +** GCC 2.95.2 + SGI STL 3.3 +g++ -c -pedantic -Wall -ftemplate-depth-30 -Id:/stlimp/sgi330 -I../.. ../../libs/type_traits/fill_example.cpp +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../boost/type_traits.hpp:15, + from ../../libs/type_traits/fill_example.cpp:29: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' +Pass + +** GCC 2.95.2 + STLPort 4 +g++ -c -pedantic -Wall -ftemplate-depth-30 -D__STL_DEBUG -Ie:/stlport/stlport -I../.. ../../libs/type_traits/fill_example.cpp +In file included from e:/stlport/stlport/stl/_iosfwd.h:24, + from e:/stlport/stlport/iosfwd:33, + from e:/stlport/stlport/iostream:33, + from ../../libs/type_traits/fill_example.cpp:22: +e:/stlport/stlport/stl/type_traits.h:198: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:206: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:319: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:323: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_string_hash.h:23, + from e:/stlport/stlport/stl/_string.h:1534, + from e:/stlport/stlport/stl/_locale.c:23, + from e:/stlport/stlport/stl/_locale.h:217, + from e:/stlport/stlport/stl/_ios_base.h:25, + from e:/stlport/stlport/stl/_streambuf.h:21, + from e:/stlport/stlport/streambuf:31, + from e:/stlport/stlport/stl/_stream_iterator.h:47, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/fill_example.cpp:22: +e:/stlport/stlport/stl/_hash_fun.h:93: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_hash_fun.h:96: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/limits:39, + from e:/stlport/stlport/stl/_ostream.h:24, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/fill_example.cpp:22: +e:/stlport/stlport/stl/_limits.h:261: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:266: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ forbids long long integer constants +In file included from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/fill_example.cpp:22: +e:/stlport/stlport/stl/_ostream.h:94: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_ostream.h:95: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/fill_example.cpp:22: +e:/stlport/stlport/stl/_numeric_facets.h:233: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:238: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:309: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:311: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:363: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:368: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:406: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:408: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:459: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:460: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_numeric_facets.h:529, + from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/fill_example.cpp:22: +e:/stlport/stlport/stl/_numeric_facets.c:127: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:135: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:187: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:194: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/fill_example.cpp:22: +e:/stlport/stlport/stl/_istream.h:90: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_istream.h:91: warning: ANSI C++ does not support `long long' +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../boost/type_traits.hpp:15, + from ../../libs/type_traits/fill_example.cpp:29: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' Pass ** Borland C++ 5.5.1 @@ -2740,20 +5116,155 @@ Warning W8027 ../..\boost/smart_ptr.hpp 265: Functions containing try are not ex Warning W8027 ../..\boost/smart_ptr.hpp 287: Functions containing try are not expanded inline Pass +** Borland C++ 5.4 +e:/cpp/cbuilder4/bin/bcc32 -c -I../.. -j10 -q ../../libs/type_traits/fill_example.cpp +../../libs/type_traits/fill_example.cpp: +Warning W8027 ../..\boost/smart_ptr.hpp 124: Functions containing try are not expanded inline +Warning W8027 ../..\boost/smart_ptr.hpp 195: Functions containing try are not expanded inline +Warning W8027 ../..\boost/smart_ptr.hpp 265: Functions containing try are not expanded inline +Warning W8027 ../..\boost/smart_ptr.hpp 287: Functions containing try are not expanded inline +Pass + ** Microsoft Visual C++ -cl /c /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/fill_example.cpp +cl /c /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /Zi /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/fill_example.cpp fill_example.cpp Pass ** Microsoft Visual C++ with STLport -cl /c /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport/stlport" /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/fill_example.cpp +cl /c /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport/stlport" /D__STL_DEBUG /I "../.." /D "WIN32" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/fill_example.cpp fill_example.cpp Pass *** libs/type_traits/iter_swap_example.cpp *** ** GCC 2.95.2 -g++ -c -ftemplate-depth-30 -I../.. ../../libs/type_traits/iter_swap_example.cpp +g++ -c -pedantic -Wall -ftemplate-depth-30 -I../.. ../../libs/type_traits/iter_swap_example.cpp +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../boost/type_traits.hpp:15, + from ../../libs/type_traits/iter_swap_example.cpp:31: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' +Pass + +** GCC 2.95.2 + SGI STL 3.3 +g++ -c -pedantic -Wall -ftemplate-depth-30 -Id:/stlimp/sgi330 -I../.. ../../libs/type_traits/iter_swap_example.cpp +In file included from /cygnus/cygwin-b20/H-i586-cygwin32/bin/../lib/gcc-lib/i586-cygwin32/2.95.2/../../../../i586-cygwin32/include/wchar.h:14, + from d:/stlimp/sgi330/char_traits.h:18, + from d:/stlimp/sgi330/stl_string_fwd.h:20, + from d:/stlimp/sgi330/stdexcept:22, + from d:/stlimp/sgi330/stl_range_errors.h:48, + from d:/stlimp/sgi330/vector:30, + from ../../libs/type_traits/iter_swap_example.cpp:28: +/cygnus/cygwin-b20/H-i586-cygwin32/bin/../lib/gcc-lib/i586-cygwin32/2.95.2/../../../../i586-cygwin32/include/sys/cdefs.h:10: warning: `__P' redefined +/cygnus/cygwin-b20/H-i586-cygwin32/bin/../lib/gcc-lib/i586-cygwin32/2.95.2/../../../../../include/g++-3/libio.h:62: warning: this is the location of the previous definition +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../boost/type_traits.hpp:15, + from ../../libs/type_traits/iter_swap_example.cpp:31: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' +Pass + +** GCC 2.95.2 + STLPort 4 +g++ -c -pedantic -Wall -ftemplate-depth-30 -D__STL_DEBUG -Ie:/stlport/stlport -I../.. ../../libs/type_traits/iter_swap_example.cpp +In file included from e:/stlport/stlport/stl/_iosfwd.h:24, + from e:/stlport/stlport/iosfwd:33, + from e:/stlport/stlport/iostream:33, + from ../../libs/type_traits/iter_swap_example.cpp:24: +e:/stlport/stlport/stl/type_traits.h:198: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:206: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:319: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/type_traits.h:323: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_string_hash.h:23, + from e:/stlport/stlport/stl/_string.h:1534, + from e:/stlport/stlport/stl/_locale.c:23, + from e:/stlport/stlport/stl/_locale.h:217, + from e:/stlport/stlport/stl/_ios_base.h:25, + from e:/stlport/stlport/stl/_streambuf.h:21, + from e:/stlport/stlport/streambuf:31, + from e:/stlport/stlport/stl/_stream_iterator.h:47, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/iter_swap_example.cpp:24: +e:/stlport/stlport/stl/_hash_fun.h:93: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_hash_fun.h:96: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/limits:39, + from e:/stlport/stlport/stl/_ostream.h:24, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/iter_swap_example.cpp:24: +e:/stlport/stlport/stl/_limits.h:261: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:262: warning: ANSI C++ forbids long long integer constants +e:/stlport/stlport/stl/_limits.h:266: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_limits.h:267: warning: ANSI C++ forbids long long integer constants +In file included from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/iter_swap_example.cpp:24: +e:/stlport/stlport/stl/_ostream.h:94: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_ostream.h:95: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/iter_swap_example.cpp:24: +e:/stlport/stlport/stl/_numeric_facets.h:233: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:238: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:309: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:311: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:363: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:368: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:406: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:408: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:459: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.h:460: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_numeric_facets.h:529, + from e:/stlport/stlport/stl/_ostream.c:21, + from e:/stlport/stlport/stl/_ostream.h:316, + from e:/stlport/stlport/ostream:32, + from e:/stlport/stlport/stl/_istream.h:23, + from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/iter_swap_example.cpp:24: +e:/stlport/stlport/stl/_numeric_facets.c:127: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:135: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:187: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_numeric_facets.c:194: warning: ANSI C++ does not support `long long' +In file included from e:/stlport/stlport/stl/_stream_iterator.h:218, + from e:/stlport/stlport/iterator:39, + from e:/stlport/stlport/istream:35, + from e:/stlport/stlport/iostream:34, + from ../../libs/type_traits/iter_swap_example.cpp:24: +e:/stlport/stlport/stl/_istream.h:90: warning: ANSI C++ does not support `long long' +e:/stlport/stlport/stl/_istream.h:91: warning: ANSI C++ does not support `long long' +In file included from ../../boost/type_traits/conversion_traits.hpp:25, + from ../../boost/type_traits.hpp:15, + from ../../libs/type_traits/iter_swap_example.cpp:31: +../../boost/type_traits/arithmetic_traits.hpp:59: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:61: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:120: warning: ANSI C++ does not support `long long' +../../boost/type_traits/arithmetic_traits.hpp:122: warning: ANSI C++ does not support `long long' Pass ** Borland C++ 5.5.1 @@ -2761,8 +5272,13 @@ bcc32 -c -I../.. -j10 -q ../../libs/type_traits/iter_swap_example.cpp ../../libs/type_traits/iter_swap_example.cpp: Pass +** Borland C++ 5.4 +e:/cpp/cbuilder4/bin/bcc32 -c -I../.. -j10 -q ../../libs/type_traits/iter_swap_example.cpp +../../libs/type_traits/iter_swap_example.cpp: +Pass + ** Microsoft Visual C++ -cl /c /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/iter_swap_example.cpp +cl /c /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /Zi /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/iter_swap_example.cpp iter_swap_example.cpp ../../libs/type_traits/iter_swap_example.cpp(108) : warning C4508: 'main' : function should return a value; 'void' return type assumed e:\CPP\VC98\INCLUDE\utility(81) : error C2039: 'iterator_category' : is not a member of '`global namespace'' @@ -2866,53 +5382,26 @@ e:\CPP\VC98\INCLUDE\utility(83) : error C2868: 'distance_type' : illegal syntax Fail ** Microsoft Visual C++ with STLport -cl /c /nologo /Zm400 /MDd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport/stlport" /I "../.." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/iter_swap_example.cpp +cl /c /nologo /Zm800 /MTd /W3 /GR /GX /Zi /Od /GZ /I "e:/stlport/stlport" /D__STL_DEBUG /I "../.." /D "WIN32" /D "_MBCS" /D "_CONSOLE" ../../libs/type_traits/iter_swap_example.cpp iter_swap_example.cpp ../../libs/type_traits/iter_swap_example.cpp(108) : warning C4508: 'main' : function should return a value; 'void' return type assumed -e:/stlport/stlport\stl/_iterator_base.h(103) : error C2039: 'iterator_category' : is not a member of '`global namespace'' - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled +e:/stlport/stlport\stl/_iterator_base.h(103) : error C2039: 'iterator_category' : is not a member of '_DBG_iter >,struct _STLD::_Vector_nonconst_traits >' + ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STLD::iterator_traits >,struct _STLD::_Vector_nonconst_traits > >' being compiled + ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(struct _STLD::_DBG_iter >,struct _STLD::_Vector_nonconst_traits >,struct _STLD::_DBG_iter >,struct _STLD::_Vector_nonconst_traits >)' being compiled e:/stlport/stlport\stl/_iterator_base.h(103) : error C2146: syntax error : missing ';' before identifier 'iterator_category' - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled + ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STLD::iterator_traits >,struct _STLD::_Vector_nonconst_traits > >' being compiled + ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(struct _STLD::_DBG_iter >,struct _STLD::_Vector_nonconst_traits >,struct _STLD::_DBG_iter >,struct _STLD::_Vector_nonconst_traits >)' being compiled e:/stlport/stlport\stl/_iterator_base.h(103) : error C2868: 'iterator_category' : illegal syntax for using-declaration; expected qualified-name - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled -e:/stlport/stlport\stl/_iterator_base.h(104) : error C2039: 'value_type' : is not a member of '`global namespace'' - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled -e:/stlport/stlport\stl/_iterator_base.h(104) : error C2146: syntax error : missing ';' before identifier 'value_type' - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled -e:/stlport/stlport\stl/_iterator_base.h(104) : error C2868: 'value_type' : illegal syntax for using-declaration; expected qualified-name - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled -e:/stlport/stlport\stl/_iterator_base.h(105) : error C2039: 'difference_type' : is not a member of '`global namespace'' - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled -e:/stlport/stlport\stl/_iterator_base.h(105) : error C2146: syntax error : missing ';' before identifier 'difference_type' - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled -e:/stlport/stlport\stl/_iterator_base.h(105) : error C2868: 'difference_type' : illegal syntax for using-declaration; expected qualified-name - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled -e:/stlport/stlport\stl/_iterator_base.h(106) : error C2039: 'pointer' : is not a member of '`global namespace'' - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled -e:/stlport/stlport\stl/_iterator_base.h(106) : error C2146: syntax error : missing ';' before identifier 'pointer' - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled -e:/stlport/stlport\stl/_iterator_base.h(106) : error C2868: 'pointer' : illegal syntax for using-declaration; expected qualified-name - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled -e:/stlport/stlport\stl/_iterator_base.h(107) : error C2039: 'reference' : is not a member of '`global namespace'' - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled -e:/stlport/stlport\stl/_iterator_base.h(107) : error C2146: syntax error : missing ';' before identifier 'reference' - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled -e:/stlport/stlport\stl/_iterator_base.h(107) : error C2868: 'reference' : illegal syntax for using-declaration; expected qualified-name - ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STL::iterator_traits' being compiled - ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(int *,int *)' being compiled + ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STLD::iterator_traits >,struct _STLD::_Vector_nonconst_traits > >' being compiled + ../../libs/type_traits/iter_swap_example.cpp(103) : see reference to function template instantiation 'void __cdecl opt::iter_swap(struct _STLD::_DBG_iter >,struct _STLD::_Vector_nonconst_traits >,struct _STLD::_DBG_iter >,struct _STLD::_Vector_nonconst_traits >)' being compiled +e:/stlport/stlport\stl/_iterator_base.h(103) : error C2039: 'iterator_category' : is not a member of '_DBG_iter >,struct _STLD::_Vector_nonconst_traits > >' + ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STLD::iterator_traits >,struct _STLD::_Vector_nonconst_traits > > >' being compiled + ../../libs/type_traits/iter_swap_example.cpp(104) : see reference to function template instantiation 'void __cdecl opt::iter_swap(struct _STLD::_DBG_iter >,struct _STLD::_Vector_nonconst_traits > >,struct _STLD::_DBG_iter >,struct _STLD::_Vector_nonconst_traits > >)' being compiled +e:/stlport/stlport\stl/_iterator_base.h(103) : error C2146: syntax error : missing ';' before identifier 'iterator_category' + ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STLD::iterator_traits >,struct _STLD::_Vector_nonconst_traits > > >' being compiled + ../../libs/type_traits/iter_swap_example.cpp(104) : see reference to function template instantiation 'void __cdecl opt::iter_swap(struct _STLD::_DBG_iter >,struct _STLD::_Vector_nonconst_traits > >,struct _STLD::_DBG_iter >,struct _STLD::_Vector_nonconst_traits > >)' being compiled +e:/stlport/stlport\stl/_iterator_base.h(103) : error C2868: 'iterator_category' : illegal syntax for using-declaration; expected qualified-name + ../../libs/type_traits/iter_swap_example.cpp(79) : see reference to class template instantiation '_STLD::iterator_traits >,struct _STLD::_Vector_nonconst_traits > > >' being compiled + ../../libs/type_traits/iter_swap_example.cpp(104) : see reference to function template instantiation 'void __cdecl opt::iter_swap(struct _STLD::_DBG_iter >,struct _STLD::_Vector_nonconst_traits > >,struct _STLD::_DBG_iter >,struct _STLD::_Vector_nonconst_traits > >)' being compiled Fail diff --git a/development/transform_traits_test.cpp b/development/transform_traits_test.cpp index b3f4468..75f609c 100644 --- a/development/transform_traits_test.cpp +++ b/development/transform_traits_test.cpp @@ -11,7 +11,6 @@ #ifdef __BORLANDC__ #pragma hrdstop #endif -#include "boost/type_traits/type_traits_test.hpp" // // some of these tests, particularly those involving @@ -20,6 +19,11 @@ // template test code. To prevent "Internal Compiler Error" // type messages, we have to split these up into lots of // separate functions: +#if defined(BOOST_MSVC) || (defined(__BORLANDC__) && (__BORLANDC__ < 0x550)) +#define SHORT_TRANSFORM_TEST +#endif +#include "boost/type_traits/type_traits_test.hpp" + #define BOOST_DECL_TRANSFORM_TEST(name, type, from, to)\ void name(){ transform_check(type, from, to) } #define BOOST_DECL_TRANSFORM_TEST3(name, type, from)\ @@ -316,15 +320,17 @@ BOOST_DECL_TRANSFORM_TEST(add_pointer_test_1, ::boost::add_pointer, const, const BOOST_DECL_TRANSFORM_TEST(add_pointer_test_2, ::boost::add_pointer, volatile, volatile*) BOOST_DECL_TRANSFORM_TEST(add_pointer_test_3, ::boost::add_pointer, *, **) //BOOST_DECL_TRANSFORM_TEST2(add_pointer_test_4, ::boost::add_pointer) -BOOST_DECL_TRANSFORM_TEST(add_pointer_test_5, ::boost::add_pointer, const &, const*) -BOOST_DECL_TRANSFORM_TEST(add_pointer_test_6, ::boost::add_pointer, &, *) BOOST_DECL_TRANSFORM_TEST(add_pointer_test_7, ::boost::add_pointer, *volatile, *volatile*) -BOOST_DECL_TRANSFORM_TEST(add_pointer_test_8, ::boost::add_pointer, const [2], const *) -BOOST_DECL_TRANSFORM_TEST(add_pointer_test_9, ::boost::add_pointer, const &, const*) BOOST_DECL_TRANSFORM_TEST(add_pointer_test_10, ::boost::add_pointer, const*, const**) BOOST_DECL_TRANSFORM_TEST(add_pointer_test_11, ::boost::add_pointer, volatile*, volatile**) +#ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION +BOOST_DECL_TRANSFORM_TEST(add_pointer_test_5, ::boost::add_pointer, const &, const*) +BOOST_DECL_TRANSFORM_TEST(add_pointer_test_6, ::boost::add_pointer, &, *) +BOOST_DECL_TRANSFORM_TEST(add_pointer_test_8, ::boost::add_pointer, const [2], const *) +BOOST_DECL_TRANSFORM_TEST(add_pointer_test_9, ::boost::add_pointer, const &, const*) BOOST_DECL_TRANSFORM_TEST(add_pointer_test_12, ::boost::add_pointer, const[2][3], const (*)[3]) BOOST_DECL_TRANSFORM_TEST(add_pointer_test_13, ::boost::add_pointer, (&)[2], *) +#endif void check_add_pointer() { @@ -332,15 +338,17 @@ void check_add_pointer() add_pointer_test_2(); add_pointer_test_3(); //add_pointer_test_4(); - add_pointer_test_5(); - add_pointer_test_6(); add_pointer_test_7(); - add_pointer_test_8(); - add_pointer_test_9(); add_pointer_test_10(); add_pointer_test_11(); +#ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION + add_pointer_test_5(); + add_pointer_test_6(); + add_pointer_test_8(); + add_pointer_test_9(); add_pointer_test_12(); add_pointer_test_13(); +#endif } @@ -384,3 +392,4 @@ unsigned int expected_failures = 0; + diff --git a/development/trivial_destructor_example.cpp b/development/trivial_destructor_example.cpp index 5bdcea4..ff7d256 100644 --- a/development/trivial_destructor_example.cpp +++ b/development/trivial_destructor_example.cpp @@ -34,7 +34,7 @@ namespace opt{ // // algorithm destroy_array: // The reverse of std::unitialized_copy, takes a block of -// unitialized memory and calls destructors on all objects therein. +// initialized memory and calls destructors on all objects therein. // namespace detail{ @@ -163,3 +163,4 @@ int main() +