diff --git a/src/phrase.cpp b/src/phrase.cpp index c81d808..9c1ab02 100644 --- a/src/phrase.cpp +++ b/src/phrase.cpp @@ -266,11 +266,13 @@ ConditionalPhrase::ConditionalPhrase(const ConditionalPhrase &other) // const_cast(other).data = 0; } +#ifdef Q_COMPILER_RVALUE_REFS ConditionalPhrase::ConditionalPhrase(const ConditionalPhrase &&other) { qDebug() << "************* ctor called:"; this->data = qMove(other.data); } +#endif ConditionalPhrase::ConditionalPhrase(const PhraseData *data) { diff --git a/src/phrase.h b/src/phrase.h index 76b94b6..2e45c25 100644 --- a/src/phrase.h +++ b/src/phrase.h @@ -66,9 +66,6 @@ public: And = 20, Or, -// Append, -// Set, - Add, Minus, Multiple, @@ -161,7 +158,9 @@ public: QSharedPointer rightDataPointer; ConditionalPhrase(); ConditionalPhrase(const ConditionalPhrase &other); +#ifdef Q_COMPILER_RVALUE_REFS ConditionalPhrase(const ConditionalPhrase &&other); +#endif ConditionalPhrase(const PhraseData *data); ConditionalPhrase(AbstractFieldPhrase *, PhraseData::Condition); ConditionalPhrase(AbstractFieldPhrase *, PhraseData::Condition, const QVariant &v); @@ -205,7 +204,7 @@ public: return ConditionalPhrase(this, PhraseData::In, vlist); } -#if __cplusplus >= 201103L +#ifdef Q_COMPILER_INITIALIZER_LISTS ConditionalPhrase in(std::initializer_list list) { QVariantList vlist; std::initializer_list::iterator it;