diff --git a/src/corelib/tools/qhash.h b/src/corelib/tools/qhash.h index 8d65a018ae..8e71925fd9 100644 --- a/src/corelib/tools/qhash.h +++ b/src/corelib/tools/qhash.h @@ -948,6 +948,9 @@ public: // compiler-generated destructor is fine! QMultiHash(const QHash &other) : QHash(other) {} +#ifdef Q_COMPILER_RVALUE_REFS + QMultiHash(QHash &&other) Q_DECL_NOTHROW : QHash(std::move(other)) {} +#endif void swap(QMultiHash &other) { QHash::swap(other); } // prevent QMultiHash<->QHash swaps inline typename QHash::iterator replace(const Key &key, const T &value) diff --git a/src/corelib/tools/qmap.h b/src/corelib/tools/qmap.h index b7bd268bda..df2e5f1caf 100644 --- a/src/corelib/tools/qmap.h +++ b/src/corelib/tools/qmap.h @@ -1177,6 +1177,9 @@ public: } #endif QMultiMap(const QMap &other) : QMap(other) {} +#ifdef Q_COMPILER_RVALUE_REFS + QMultiMap(QMap &&other) Q_DECL_NOTHROW : QMap(std::move(other)) {} +#endif inline void swap(QMultiMap &other) { QMap::swap(other); } inline typename QMap::iterator replace(const Key &key, const T &value)