diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2018-01-04 16:42:29 +0100 |
---|---|---|
committer | Shawn Rutledge <shawn.rutledge@qt.io> | 2018-01-06 17:14:09 +0000 |
commit | e8b8de4460235c458ab5c8e3249982628e9541bd (patch) | |
tree | 078da79e69ec0c5cfebf6bd4139d2afdaf6c84cd /src/qml/memory | |
parent | 781caafe1fde71b059c0e3a42bda77ce0d7e4c2a (diff) |
Raise minimum supported MSVC version to 2015
Remove code for older versions and streamline #ifdefs.
Remove the helpers macros Q_STATIC_ASSERT_FOR_SANE_COMPILERS
and V4_ASSERT_IS_TRIVIAL.
Task-number: QTBUG-40658
Task-number: QTBUG-51673
Change-Id: Ifa4fab653b10ce7858739adef08364cddc6507cf
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/memory')
-rw-r--r-- | src/qml/memory/qv4heap_p.h | 10 | ||||
-rw-r--r-- | src/qml/memory/qv4mm_p.h | 4 | ||||
-rw-r--r-- | src/qml/memory/qv4writebarrier_p.h | 2 |
3 files changed, 5 insertions, 11 deletions
diff --git a/src/qml/memory/qv4heap_p.h b/src/qml/memory/qv4heap_p.h index 363e891d5c..7bc841b21d 100644 --- a/src/qml/memory/qv4heap_p.h +++ b/src/qml/memory/qv4heap_p.h @@ -60,12 +60,6 @@ // parent's init all up the inheritance chain), define QML_CHECK_INIT_DESTROY_CALLS below. #undef QML_CHECK_INIT_DESTROY_CALLS -#if defined(_MSC_VER) && (_MSC_VER < 1900) // broken compilers: -# define V4_ASSERT_IS_TRIVIAL(x) -#else // working compilers: -# define V4_ASSERT_IS_TRIVIAL(x) Q_STATIC_ASSERT(std::is_trivial< x >::value); -#endif - QT_BEGIN_NAMESPACE namespace QV4 { @@ -175,7 +169,7 @@ struct Q_QML_EXPORT Base { Q_ALWAYS_INLINE void _setDestroyed() {} #endif }; -V4_ASSERT_IS_TRIVIAL(Base) +Q_STATIC_ASSERT(std::is_trivial< Base >::value); // This class needs to consist only of pointer sized members to allow // for a size/offset translation when cross-compiling between 32- and // 64-bit. @@ -253,7 +247,7 @@ private: QtSharedPointer::ExternalRefCountData *d; QObject *qObject; }; -V4_ASSERT_IS_TRIVIAL(QQmlQPointer<QObject>) +Q_STATIC_ASSERT(std::is_trivial< QQmlQPointer<QObject> >::value); #endif } diff --git a/src/qml/memory/qv4mm_p.h b/src/qml/memory/qv4mm_p.h index 921fea3956..f7c50ff3cf 100644 --- a/src/qml/memory/qv4mm_p.h +++ b/src/qml/memory/qv4mm_p.h @@ -169,7 +169,7 @@ public: template<typename ManagedType> inline typename ManagedType::Data *allocManaged(std::size_t size) { - V4_ASSERT_IS_TRIVIAL(typename ManagedType::Data) + Q_STATIC_ASSERT(std::is_trivial< typename ManagedType::Data >::value); size = align(size); Heap::Base *o = allocData(size); InternalClass *ic = ManagedType::defaultInternalClass(engine); @@ -182,7 +182,7 @@ public: template<typename ManagedType> inline typename ManagedType::Data *allocManaged(std::size_t size, InternalClass *ic) { - V4_ASSERT_IS_TRIVIAL(typename ManagedType::Data) + Q_STATIC_ASSERT(std::is_trivial< typename ManagedType::Data >::value); size = align(size); Heap::Base *o = allocData(size); o->internalClass = ic; diff --git a/src/qml/memory/qv4writebarrier_p.h b/src/qml/memory/qv4writebarrier_p.h index c0f4b0b29a..39413a6f09 100644 --- a/src/qml/memory/qv4writebarrier_p.h +++ b/src/qml/memory/qv4writebarrier_p.h @@ -138,7 +138,7 @@ private: Heap::Base *ptr; }; typedef Pointer<char *, 0> V4PointerCheck; -V4_ASSERT_IS_TRIVIAL(V4PointerCheck) +Q_STATIC_ASSERT(std::is_trivial< V4PointerCheck >::value); } |