diff options
Diffstat (limited to 'boost/python/object/class_metadata.hpp')
-rw-r--r-- | boost/python/object/class_metadata.hpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/boost/python/object/class_metadata.hpp b/boost/python/object/class_metadata.hpp index c71cf67c4e..5009c176e8 100644 --- a/boost/python/object/class_metadata.hpp +++ b/boost/python/object/class_metadata.hpp @@ -164,7 +164,7 @@ struct class_metadata >::type held_type; // Determine if the object will be held by value - typedef is_convertible<held_type*,T*> use_value_holder; + typedef mpl::bool_<is_convertible<held_type*,T*>::value> use_value_holder; // Compute the "wrapped type", that is, if held_type is a smart // pointer, we're talking about the pointee. @@ -175,10 +175,12 @@ struct class_metadata >::type wrapped; // Determine whether to use a "back-reference holder" - typedef mpl::or_< - has_back_reference<T> - , is_same<held_type_arg,T> - , is_base_and_derived<T,wrapped> + typedef mpl::bool_< + mpl::or_< + has_back_reference<T> + , is_same<held_type_arg,T> + , is_base_and_derived<T,wrapped> + >::value > use_back_reference; // Select the holder. |