-
Bug
-
Resolution: Fixed
-
P1: Critical
-
6.5.0 Beta1
-
e070b5aa3 (dev), b0a681e08 (6.5)
For the following test case:
struct WrapWithVariant
{
Q_GADGET
QML_VALUE_TYPE(wrappedWithVariant)
QML_CONSTRUCTIBLE_VALUE Q_PROPERTY(QVariant intPrimitiveValue READ intPrimitiveValue CONSTANT)
Q_PROPERTY(QVariant undefinedPrimitiveValue READ undefinedPrimitiveValue CONSTANT)
Q_PROPERTY(QVariant nullPrimitiveValue READ nullPrimitiveValue CONSTANT)
public:
WrapWithVariant() = default; QVariant intPrimitiveValue() const
{
return QVariant::fromValue<QJSPrimitiveValue>(QJSPrimitiveValue(12));
} QVariant undefinedPrimitiveValue() const
{
return QVariant::fromValue<QJSPrimitiveValue>(QJSPrimitiveValue(QJSPrimitiveUndefined()));
} QVariant nullPrimitiveValue() const
{
return QVariant::fromValue<QJSPrimitiveValue>(QJSPrimitiveValue(QJSPrimitiveNull()));
}
// qml file
QtObject {
property wrappedWithVariant wrapped
property bool primitiveIsNull: wrapped.nullPrimitiveValue === null
}
Running these with aot-compiled and interpreted gives divergent result.
Remind yourself to re-add https://codereview.qt-project.org/c/qt/qtdeclarative/+/448219/17..18 test after fixing this.
| For Gerrit Dashboard: QTBUG-109867 | ||||||
|---|---|---|---|---|---|---|
| # | Subject | Branch | Project | Status | CR | V |
| 452459,4 | Allow extraction of V4 values from QJSPrimitiveValue | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
| 454458,2 | Allow extraction of V4 values from QJSPrimitiveValue | 6.5 | qt/qtdeclarative | Status: MERGED | +2 | 0 |