Yes, that's the change - commenting out the new test fixes the problem.
I am dynamically building the meta-object. You don't really build an
enum, you just provide a description of it to the meta-object. It would
be nice to be able to register an enum with the meta-type system
dynamically.
Phil
On 03/10/2024 12:51, Mårten Nordheim wrote:
Hello!
Do you mean this change?
https://codereview.qt-project.org/c/qt/qtbase/+/559265
If so, my bad!
My motivation is described in the commit, but basically QtProtobuf is
quite heavy on
QMetaProperty usage, and trying to resolve the 'menum' was quite a
bottleneck for
properties that were not known as enums in the metatype system (and
thus treated
differently).
When you say you are doing 'this' dynamically, do you mean building a
meta-object?
Or enum?
Mårten
-----Original Message-----
From: Development <development-boun...@qt-project.org> On Behalf Of
Phil Thompson via Development
Sent: torsdag 3. oktober 2024 13:40
To: development@qt-project.org
Subject: [Development] Changed enum property behaviour in Qt v6.8
Hi,
Prior to Qt v6.8 it was possible to define a meta-object property with
an enum type where the enum was *not* registered with Q_ENUM and the
result of QMetaProperty::isEnumType() would be true.
With v6.8 isEnumType() will return false. The change is the extra test
on the meta-type in the private QMetaProperty ctor. In this situation
the property does not have a valid meta-type and so the extra test
fails.
What was the reasoning behind the change?
The best solution would be to ensure the enum was registered with the
type system, however I am doing this dynamically (including building
the
whole meta-object) and so Q_ENUM is inappropriate and I'm not seeing
an
obvious alternative.
Any help would be appreciated.
Phil
--
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development
--
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development