014d7ac654
Only allow implicit conversions when the types involved are compatible. That means, only allow construction and copy assignment when the type X* is convertible to type T*. This is done using SFINAE and the std::is_convertible type trait, which makes the previous QSHAREDPOINTER_VERIFY_AUTO_CAST obsolete. This patch fixes compilation when a function is overloaded with Q{Shared,Weak}Pointer of different, incompatible types. Previously, this resulted in a compilation error due to an ambiguous overload. Change-Id: I069d22f3582e69842f14284d4f27827326597ca2 Fixes: QTBUG-75222 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> |
||
---|---|---|
.. | ||
.gitignore | ||
externaltests.cpp | ||
externaltests.h | ||
externaltests.pri | ||
forwarddeclared.cpp | ||
forwarddeclared.h | ||
nontracked.cpp | ||
nontracked.h | ||
qsharedpointer.pro | ||
tst_qsharedpointer.cpp | ||
wrapper.cpp | ||
wrapper.h |