diff -ru boost_1_34_0/libs/concept_check/stl_concept_covering.cpp boost_1_34_0_ibm/libs/concept_check/stl_concept_covering.cpp --- boost_1_34_0/libs/concept_check/stl_concept_covering.cpp 2005-07-28 14:22:23.000000000 -0400 +++ boost_1_34_0_ibm/libs/concept_check/stl_concept_covering.cpp 2007-03-20 17:57:00.000000000 -0400 @@ -591,7 +591,7 @@ std::nth_element(ri, ri, ri, comp); } { -#if defined(__GNUC__) +#if defined(__GNUC__) || defined(__IBMCPP__) typedef less_than_op_first_archetype<> FT; typedef less_than_op_second_archetype<> T; #elif defined(__KCC) @@ -615,7 +615,7 @@ fi = std::lower_bound(fi, fi, value, comp); } { -#if defined(__GNUC__) +#if defined(__GNUC__) || defined(__IBMCPP__) // Note, order of T,FT is flipped from lower_bound typedef less_than_op_second_archetype<> FT; typedef less_than_op_first_archetype<> T; @@ -639,7 +639,7 @@ fi = std::upper_bound(fi, fi, value, comp); } { -#if defined(__GNUC__) +#if defined(__GNUC__) || defined(__IBMCPP__) typedef less_than_op_first_archetype< less_than_op_second_archetype< null_archetype<>, optag2>, optag1> FT; typedef less_than_op_second_archetype< @@ -669,7 +669,7 @@ ignore_unused_variable_warning(p); } { -#if defined(__GNUC__) +#if defined(__GNUC__) || defined(__IBMCPP__) typedef less_than_op_first_archetype< less_than_op_second_archetype, optag2>, optag1> FT; typedef less_than_op_second_archetype< @@ -686,7 +686,7 @@ { typedef null_archetype Arg1; typedef null_archetype Arg2; -#if defined(__GNUC__) || defined(__KCC) +#if defined(__GNUC__) || defined(__KCC) || defined(__IBMCPP__) typedef convertible_to_archetype > FT; typedef convertible_to_archetype Tout; -#if defined(__GNUC__) || defined(__KCC) +#if defined(__GNUC__) || defined(__KCC) || defined(__IBMCPP__) typedef less_than_op_first_archetype< less_than_op_second_archetype< convertible_to_archetype, optag2>, optag1 > Tin1;