diff --git a/tests/alignment_test.cpp b/tests/alignment_test.cpp index b7c2a6f..e91855b 100644 --- a/tests/alignment_test.cpp +++ b/tests/alignment_test.cpp @@ -40,5 +40,10 @@ int main(int argc, char* argv[]) // // define the number of failures expected for given compilers: +#ifdef __MWERKS__ +unsigned int expected_failures = 5; +#else unsigned int expected_failures = 0; +#endif + diff --git a/tests/composite_traits_test.cpp b/tests/composite_traits_test.cpp index e6e564a..0ceed2f 100644 --- a/tests/composite_traits_test.cpp +++ b/tests/composite_traits_test.cpp @@ -109,8 +109,11 @@ unsigned int expected_failures = 2; unsigned int expected_failures = 1; // can't handle cv-qualified references #elif defined(BOOST_MSVC) unsigned int expected_failures = 1; +#elif defined(__MWERKS__) +unsigned int expected_failures = 1; // is_enum doesn't work #else unsigned int expected_failures = 0; #endif + diff --git a/tests/object_type_traits_test.cpp b/tests/object_type_traits_test.cpp index edb9edf..18200f4 100644 --- a/tests/object_type_traits_test.cpp +++ b/tests/object_type_traits_test.cpp @@ -166,7 +166,12 @@ int main(int argc, char* argv[]) // because we can't tell the difference between // unions and classes: value_fail(true, boost::is_empty::value) +#if defined(__MWERKS__) + // apparent compiler bug causes this to fail to compile: + value_fail(false, boost::is_empty::value) +#else soft_value_test(false, boost::is_empty::value) +#endif soft_value_test(true, boost::is_empty::value) soft_value_test(false, boost::is_empty::value) @@ -189,3 +194,4 @@ unsigned int expected_failures = 4; #endif +