summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel/qmetaobjectbuilder.cpp
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2024-08-18 13:22:41 -0700
committerThiago Macieira <thiago.macieira@intel.com>2024-10-04 10:44:57 -0700
commit2effeb25c040aef58d1e241525de758e1a6f659b (patch)
treefbdba71798be6078bc4a58eddb4c1cd2747d6d29 /src/corelib/kernel/qmetaobjectbuilder.cpp
parent39bb305416dd89785af431d76a08154f246c34f6 (diff)
Long live 64-bit QFlags
This commit removes the limitation on size that QFlags used to have, allowing up to 64 bits. We could increase to 128 bits at this time, but I'm choosing not to allow this yet, due to limitations in handling 128-bit integers in QMetaObject & QMetaObjectBuilder. The API wouldn't be cross-platform. This commit duplicates the tst_QFlags into a new tst_QFlags64. It restores the tst_QVariant state to how it was before (even though it doesn't actually test the QMetaEnum functionality). [ChangeLog][QtCore][QFlags] Now supports 64-bit enumerations, with the same syntax, including extraction into QMetaObject using the Q_FLAG and Q_DECLARE_FLAGS markers. Note the QFlag helper class remains 32-bit wide. Creation of a 64-bit QFlags from a generic integer can be achieved by passing a std::in_place first argument. Fixes: QTBUG-111926 Change-Id: Ifb754f0e28774c20aa7cfffd17e7fc1d16baf8e4 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Ahmad Samir <a.samirh78@gmail.com>
Diffstat (limited to 'src/corelib/kernel/qmetaobjectbuilder.cpp')
0 files changed, 0 insertions, 0 deletions