Commit 0531b72c authored by Søren Fuglede Jørgensen's avatar Søren Fuglede Jørgensen Committed by GitHub

Add operator= to shared_ptr for assignments to base classes (GH-4185)

parent d53646f1
......@@ -59,6 +59,7 @@ cdef extern from "<memory>" namespace "std" nogil:
shared_ptr(shared_ptr[T]&, T*)
shared_ptr(unique_ptr[T]&)
#shared_ptr(weak_ptr[T]&) # Not Supported
shared_ptr[T]& operator=[Y](const shared_ptr[Y]& ptr)
# Modifiers
void reset()
......
......@@ -81,6 +81,15 @@ cdef cppclass C(B):
cdef shared_ptr[A] holding_subclass = shared_ptr[A](new C())
def test_assignment_to_base_class():
"""
>>> test_assignment_to_base_class()
"""
cdef shared_ptr[C] derived = shared_ptr[C](new C())
cdef shared_ptr[A] base = derived
def test_dynamic_pointer_cast():
"""
>>> test_dynamic_pointer_cast()
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment