QESDP: deprecate QT_ENABLE_QEXPLICITLYSHAREDDATAPOINTER_STATICCAST
We've had this workaround since Qt 5.4. It's due time we get rid of it. This commit deprecates it, in preparation for removal. [ChangeLog][QtCore][QExplicitlySharedDataPointer] Support for QT_ENABLE_QEXPLICITLYSHAREDDATAPOINTER_STATICCAST has been deprecated, and will get removed in a future version of Qt. Change-Id: I3000ea606b37714542916e105ebd50871dc42935 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit 0ed039fd134fb8025236847295681f13f1775847) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
a53473052b
commit
70dcbb4f17
@ -589,6 +589,10 @@ QT_BEGIN_NAMESPACE
|
|||||||
\c{QT_ENABLE_QEXPLICITLYSHAREDDATAPOINTER_STATICCAST} macro, and
|
\c{QT_ENABLE_QEXPLICITLYSHAREDDATAPOINTER_STATICCAST} macro, and
|
||||||
therefore to allow old code (that relied on this feature) to
|
therefore to allow old code (that relied on this feature) to
|
||||||
compile without modifications.
|
compile without modifications.
|
||||||
|
|
||||||
|
\note Usage of the
|
||||||
|
\c{QT_ENABLE_QEXPLICITLYSHAREDDATAPOINTER_STATICCAST} macro is
|
||||||
|
deprecated. The macro will be removed in a future version of Qt.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*! \fn template <class T> QExplicitlySharedDataPointer<T>& QExplicitlySharedDataPointer<T>::operator=(const QExplicitlySharedDataPointer<T>& o)
|
/*! \fn template <class T> QExplicitlySharedDataPointer<T>& QExplicitlySharedDataPointer<T>::operator=(const QExplicitlySharedDataPointer<T>& o)
|
||||||
|
@ -162,7 +162,7 @@ public:
|
|||||||
Q_NODISCARD_CTOR
|
Q_NODISCARD_CTOR
|
||||||
QExplicitlySharedDataPointer(const QExplicitlySharedDataPointer<X> &o) noexcept
|
QExplicitlySharedDataPointer(const QExplicitlySharedDataPointer<X> &o) noexcept
|
||||||
#ifdef QT_ENABLE_QEXPLICITLYSHAREDDATAPOINTER_STATICCAST
|
#ifdef QT_ENABLE_QEXPLICITLYSHAREDDATAPOINTER_STATICCAST
|
||||||
: d(static_cast<T *>(o.data()))
|
: d(warnIfQExplicitlySharedDataPointerStaticCastMacroDefined(), static_cast<T *>(o.data()))
|
||||||
#else
|
#else
|
||||||
: d(o.data())
|
: d(o.data())
|
||||||
#endif
|
#endif
|
||||||
@ -213,6 +213,11 @@ protected:
|
|||||||
private:
|
private:
|
||||||
void detach_helper();
|
void detach_helper();
|
||||||
|
|
||||||
|
#ifdef QT_ENABLE_QEXPLICITLYSHAREDDATAPOINTER_STATICCAST
|
||||||
|
[[deprecated("Usage of QT_ENABLE_QEXPLICITLYSHAREDDATAPOINTER_STATICCAST is deprecated.")]]
|
||||||
|
constexpr void warnIfQExplicitlySharedDataPointerStaticCastMacroDefined() {}
|
||||||
|
#endif
|
||||||
|
|
||||||
T *d;
|
T *d;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user