rttr icon indicating copy to clipboard operation
rttr copied to clipboard

rttr 0.9.6 unittests not working with clang/libc++

Open marcespie opened this issue 5 years ago • 0 comments

Specifically, the way test classes are built does not work with the way libc++ creates shared ptrs.

/usr/include/c++/v1/memory:3710:5: error: destructor called on non-final 'ClassSingle6A' that has virtual functions but non-virtual destructor [-Werror,-Wdelete-non-abstract-non-virtual-dtor] _data.second().~_Tp(); ^ /usr/include/c++/v1/memory:3666:5: note: in instantiation of member function 'std::__1::__shared_ptr_emplace<ClassSingle6A, std::__1::allocator<ClassSingle6A> >::__on_zero_shared' requested here __shared_ptr_emplace(_Alloc __a) ^ /usr/include/c++/v1/memory:4331:26: note: in instantiation of member function 'std::__1::__shared_ptr_emplace<ClassSingle6A, std::__1::allocator<ClassSingle6A> >::__shared_ptr_emplace' requested here ::new(__hold2.get()) _CntrlBlk(__a2, _VSTD::forward<_Args>(__args)...); ^ /usr/include/c++/v1/memory:4710:29: note: in instantiation of function template specialization 'std::__1::shared_ptr<ClassSingle6A>::make_shared<>' requested here return shared_ptr<_Tp>::make_shared(_VSTD::forward<_Args>(__args)...); ^ /build/pobj/rttr-0.9.6/rttr-0.9.6/src/unit_tests/type/test_type.cpp:473:53: note: in instantiation of function template specialization 'std::__1::make_shared<ClassSingle6A>' requested here std::shared_ptr<ClassSingle6A> sharedPtr = std::make_shared<ClassSingle6A>();

marcespie avatar May 17 '20 12:05 marcespie