Mark ref-qualified members as always inline
MSVC and ICC on Windows always make calls to the dllexport'ed out-of- line copy of an inline function when compiling in debug mode. This creates an incompatibility when a compiler that understands ref- qualified member functions (such as ICC) is used to compile code using a DLL that was compiled with a compiler that doesn't understand (such as MSVC 2013). Task-number: QTBUG-48349 Change-Id: I42e7ef1a481840699a8dffff14053b7998a2a6bb Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
This commit is contained in:
parent
c644fab0ed
commit
94fb503769
@ -255,21 +255,21 @@ public:
|
||||
# define Q_REQUIRED_RESULT
|
||||
# define Q_REQUIRED_RESULT_pushed
|
||||
# endif
|
||||
QByteArray toLower() const & Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QByteArray toLower() const & Q_REQUIRED_RESULT
|
||||
{ return toLower_helper(*this); }
|
||||
QByteArray toLower() && Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QByteArray toLower() && Q_REQUIRED_RESULT
|
||||
{ return toLower_helper(*this); }
|
||||
QByteArray toUpper() const & Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QByteArray toUpper() const & Q_REQUIRED_RESULT
|
||||
{ return toUpper_helper(*this); }
|
||||
QByteArray toUpper() && Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QByteArray toUpper() && Q_REQUIRED_RESULT
|
||||
{ return toUpper_helper(*this); }
|
||||
QByteArray trimmed() const & Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QByteArray trimmed() const & Q_REQUIRED_RESULT
|
||||
{ return trimmed_helper(*this); }
|
||||
QByteArray trimmed() && Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QByteArray trimmed() && Q_REQUIRED_RESULT
|
||||
{ return trimmed_helper(*this); }
|
||||
QByteArray simplified() const & Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QByteArray simplified() const & Q_REQUIRED_RESULT
|
||||
{ return simplified_helper(*this); }
|
||||
QByteArray simplified() && Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QByteArray simplified() && Q_REQUIRED_RESULT
|
||||
{ return simplified_helper(*this); }
|
||||
# ifdef Q_REQUIRED_RESULT_pushed
|
||||
# pragma pop_macro("Q_REQUIRED_RESULT")
|
||||
|
@ -386,25 +386,25 @@ public:
|
||||
# define Q_REQUIRED_RESULT
|
||||
# define Q_REQUIRED_RESULT_pushed
|
||||
# endif
|
||||
QString toLower() const & Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QString toLower() const & Q_REQUIRED_RESULT
|
||||
{ return toLower_helper(*this); }
|
||||
QString toLower() && Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QString toLower() && Q_REQUIRED_RESULT
|
||||
{ return toLower_helper(*this); }
|
||||
QString toUpper() const & Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QString toUpper() const & Q_REQUIRED_RESULT
|
||||
{ return toUpper_helper(*this); }
|
||||
QString toUpper() && Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QString toUpper() && Q_REQUIRED_RESULT
|
||||
{ return toUpper_helper(*this); }
|
||||
QString toCaseFolded() const & Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QString toCaseFolded() const & Q_REQUIRED_RESULT
|
||||
{ return toCaseFolded_helper(*this); }
|
||||
QString toCaseFolded() && Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QString toCaseFolded() && Q_REQUIRED_RESULT
|
||||
{ return toCaseFolded_helper(*this); }
|
||||
QString trimmed() const & Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QString trimmed() const & Q_REQUIRED_RESULT
|
||||
{ return trimmed_helper(*this); }
|
||||
QString trimmed() && Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QString trimmed() && Q_REQUIRED_RESULT
|
||||
{ return trimmed_helper(*this); }
|
||||
QString simplified() const & Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QString simplified() const & Q_REQUIRED_RESULT
|
||||
{ return simplified_helper(*this); }
|
||||
QString simplified() && Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QString simplified() && Q_REQUIRED_RESULT
|
||||
{ return simplified_helper(*this); }
|
||||
# ifdef Q_REQUIRED_RESULT_pushed
|
||||
# pragma pop_macro("Q_REQUIRED_RESULT")
|
||||
|
@ -168,9 +168,9 @@ public:
|
||||
Format format() const;
|
||||
|
||||
#if defined(Q_COMPILER_REF_QUALIFIERS) && !defined(QT_COMPILING_QIMAGE_COMPAT_CPP)
|
||||
QImage convertToFormat(Format f, Qt::ImageConversionFlags flags = Qt::AutoColor) const & Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QImage convertToFormat(Format f, Qt::ImageConversionFlags flags = Qt::AutoColor) const & Q_REQUIRED_RESULT
|
||||
{ return convertToFormat_helper(f, flags); }
|
||||
QImage convertToFormat(Format f, Qt::ImageConversionFlags flags = Qt::AutoColor) && Q_REQUIRED_RESULT
|
||||
Q_ALWAYS_INLINE QImage convertToFormat(Format f, Qt::ImageConversionFlags flags = Qt::AutoColor) && Q_REQUIRED_RESULT
|
||||
{
|
||||
if (convertToFormat_inplace(f, flags))
|
||||
return std::move(*this);
|
||||
|
Loading…
x
Reference in New Issue
Block a user