qversionnumber.h: Stay compatible with C++11

Avoiding relaxed constexpr support is a small change that doesn't hurt
and it allows us to progress in qtdeclarative without waiting for
general C++17 support in qtbase.

Change-Id: I234276036292346d60d6da3a75bcabbdec9ddde8
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
This commit is contained in:
Ulf Hermann 2020-01-31 09:46:56 +01:00
parent 6251963ecd
commit 511cb760ee

View File

@ -344,30 +344,30 @@ public:
if_valid_segment_type<Minor> = true>
static constexpr QTypeRevision fromVersion(Major majorVersion, Minor minorVersion)
{
Q_ASSERT(isValidSegment(majorVersion));
Q_ASSERT(isValidSegment(minorVersion));
return QTypeRevision(quint8(majorVersion), quint8(minorVersion));
return Q_ASSERT(isValidSegment(majorVersion)),
Q_ASSERT(isValidSegment(minorVersion)),
QTypeRevision(quint8(majorVersion), quint8(minorVersion));
}
template<typename Major, if_valid_segment_type<Major> = true>
static constexpr QTypeRevision fromMajorVersion(Major majorVersion)
{
Q_ASSERT(isValidSegment(majorVersion));
return QTypeRevision(quint8(majorVersion), SegmentUnknown);
return Q_ASSERT(isValidSegment(majorVersion)),
QTypeRevision(quint8(majorVersion), SegmentUnknown);
}
template<typename Minor, if_valid_segment_type<Minor> = true>
static constexpr QTypeRevision fromMinorVersion(Minor minorVersion)
{
Q_ASSERT(isValidSegment(minorVersion));
return QTypeRevision(SegmentUnknown, quint8(minorVersion));
return Q_ASSERT(isValidSegment(minorVersion)),
QTypeRevision(SegmentUnknown, quint8(minorVersion));
}
template<typename Integer, if_valid_value_type<Integer> = true>
static constexpr QTypeRevision fromEncodedVersion(Integer value)
{
Q_ASSERT((value & ~Integer(0xffff)) == Integer(0));
return QTypeRevision((value & Integer(0xff00)) >> 8, value & Integer(0xff));
return Q_ASSERT((value & ~Integer(0xffff)) == Integer(0)),
QTypeRevision((value & Integer(0xff00)) >> 8, value & Integer(0xff));
}
static constexpr QTypeRevision zero() { return QTypeRevision(0, 0); }