From 4376c4d9d85ebaf0d30a71bd524344a1fc50ef5d Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Mon, 6 Jul 2020 19:59:51 +0200 Subject: [PATCH] Some work to handle enums that are larger than 32bit This will require some more work in QFlags and the metaobject system for Q_ENUM. Change-Id: I3687c7d2529dc18e7bc1abfc326e56ff7a365bc5 Reviewed-by: Thiago Macieira --- src/corelib/io/qdebug.cpp | 2 +- src/corelib/io/qdebug.h | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/corelib/io/qdebug.cpp b/src/corelib/io/qdebug.cpp index 120c6b13a89..d34c2e5a360 100644 --- a/src/corelib/io/qdebug.cpp +++ b/src/corelib/io/qdebug.cpp @@ -956,7 +956,7 @@ void qt_QMetaEnum_flagDebugOperator(QDebug &debug, size_t sizeofT, int value) MyNamespace::MyClass::MyScopedEnum::Enum3 MyNamespace::MyClass::MyScopedEnum(456) */ -QDebug qt_QMetaEnum_debugOperator(QDebug &dbg, int value, const QMetaObject *meta, const char *name) +QDebug qt_QMetaEnum_debugOperator(QDebug &dbg, qint64 value, const QMetaObject *meta, const char *name) { QDebugStateSaver saver(dbg); dbg.nospace(); diff --git a/src/corelib/io/qdebug.h b/src/corelib/io/qdebug.h index d858eb933b7..130ceccc44c 100644 --- a/src/corelib/io/qdebug.h +++ b/src/corelib/io/qdebug.h @@ -388,7 +388,7 @@ void qt_QMetaEnum_flagDebugOperator(QDebug &debug, size_t sizeofT, Int value) } #if !defined(QT_NO_QOBJECT) && !defined(Q_QDOC) -Q_CORE_EXPORT QDebug qt_QMetaEnum_debugOperator(QDebug&, int value, const QMetaObject *meta, const char *name); +Q_CORE_EXPORT QDebug qt_QMetaEnum_debugOperator(QDebug&, qint64 value, const QMetaObject *meta, const char *name); Q_CORE_EXPORT QDebug qt_QMetaEnum_flagDebugOperator(QDebug &dbg, quint64 value, const QMetaObject *meta, const char *name); template @@ -397,7 +397,7 @@ operator<<(QDebug dbg, T value) { const QMetaObject *obj = qt_getEnumMetaObject(value); const char *name = qt_getEnumName(value); - return qt_QMetaEnum_debugOperator(dbg, typename QFlags::Int(value), obj, name); + return qt_QMetaEnum_debugOperator(dbg, static_cast::type>(value), obj, name); } template