Skip to content

Commit ead8d0a

Browse files
committed
Python: Simplify object and BOOST_PYTHON_FORWARD_OBJECT_CONSTRUCTORS macro.
The macro no longer needs an implementation for old MSVC. [SVN r85881]
1 parent 7a4b240 commit ead8d0a

File tree

1 file changed

+1
-18
lines changed

1 file changed

+1
-18
lines changed

include/boost/python/object_core.hpp

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -348,31 +348,14 @@ namespace api
348348
// Macros for forwarding constructors in classes derived from
349349
// object. Derived classes will usually want these as an
350350
// implementation detail
351-
# define BOOST_PYTHON_FORWARD_OBJECT_CONSTRUCTORS_(derived, base) \
351+
# define BOOST_PYTHON_FORWARD_OBJECT_CONSTRUCTORS(derived, base) \
352352
inline explicit derived(::boost::python::detail::borrowed_reference p) \
353353
: base(p) {} \
354354
inline explicit derived(::boost::python::detail::new_reference p) \
355355
: base(p) {} \
356356
inline explicit derived(::boost::python::detail::new_non_null_reference p) \
357357
: base(p) {}
358358

359-
# if !defined(BOOST_MSVC) || BOOST_MSVC >= 1300
360-
# define BOOST_PYTHON_FORWARD_OBJECT_CONSTRUCTORS BOOST_PYTHON_FORWARD_OBJECT_CONSTRUCTORS_
361-
# else
362-
// MSVC6 has a bug which causes an explicit template constructor to
363-
// be preferred over an appropriate implicit conversion operator
364-
// declared on the argument type. Normally, that would cause a
365-
// runtime failure when using extract<T> to extract a type with a
366-
// templated constructor. This additional constructor will turn that
367-
// runtime failure into an ambiguity error at compile-time due to
368-
// the lack of partial ordering, or at least a link-time error if no
369-
// generalized template constructor is declared.
370-
# define BOOST_PYTHON_FORWARD_OBJECT_CONSTRUCTORS(derived, base) \
371-
BOOST_PYTHON_FORWARD_OBJECT_CONSTRUCTORS_(derived, base) \
372-
template <class T> \
373-
explicit derived(extract<T> const&);
374-
# endif
375-
376359
//
377360
// object_initializer -- get the handle to construct the object with,
378361
// based on whether T is a proxy or derived from object

0 commit comments

Comments
 (0)