Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.6
-
None
Description
The code below results in an assertion failure with Qt 5.6, but not 5.5.1:
import QtQuick 2.3 import QtQuick.Window 2.2 Window { visible: true Item { id: eye pupil.restingY: 20 property alias pupil: pupil Item { id: pupil property int restingY } } }
Short backtrace:
1 __GI_raise raise.c 55 0x7ffff6051267 2 __GI_abort abort.c 89 0x7ffff6052eca 3 qt_message_fatal qlogging.cpp 1610 0x7ffff6a2bff1 4 QMessageLogger::fatal qlogging.cpp 784 0x7ffff6a2829a 5 qt_assert_x qglobal.cpp 3002 0x7ffff6a20a91 6 QVector<QQmlPropertyData *>::at qvector.h 419 0x7ffff73c178b 7 QQmlObjectCreator::setupBindings qqmlobjectcreator.cpp 682 0x7ffff73bbba4 8 QQmlObjectCreator::populateInstance qqmlobjectcreator.cpp 1318 0x7ffff73bfdc9 9 QQmlObjectCreator::setPropertyBinding qqmlobjectcreator.cpp 780 0x7ffff73bc62c 10 QQmlObjectCreator::setupBindings qqmlobjectcreator.cpp 695 0x7ffff73bbce8 11 QQmlObjectCreator::populateInstance qqmlobjectcreator.cpp 1318 0x7ffff73bfdc9 12 QQmlObjectCreator::createInstance qqmlobjectcreator.cpp 1165 0x7ffff73befe8 13 QQmlObjectCreator::setPropertyBinding qqmlobjectcreator.cpp 741 0x7ffff73bc23f 14 QQmlObjectCreator::setupBindings qqmlobjectcreator.cpp 695 0x7ffff73bbce8 15 QQmlObjectCreator::populateInstance qqmlobjectcreator.cpp 1318 0x7ffff73bfdc9 16 QQmlObjectCreator::createInstance qqmlobjectcreator.cpp 1165 0x7ffff73befe8 17 QQmlObjectCreator::create qqmlobjectcreator.cpp 197 0x7ffff73b8e32 18 QQmlComponentPrivate::beginCreate qqmlcomponent.cpp 870 0x7ffff7323935 19 QQmlComponent::beginCreate qqmlcomponent.cpp 819 0x7ffff73235d1 20 QQmlComponent::create qqmlcomponent.cpp 779 0x7ffff7323518 21 QQmlApplicationEnginePrivate::_q_finishLoad qqmlapplicationengine.cpp 130 0x7ffff73af8b9 22 QQmlApplicationEnginePrivate::startLoad qqmlapplicationengine.cpp 109 0x7ffff73af658 23 QQmlApplicationEngine::load qqmlapplicationengine.cpp 250 0x7ffff73afc14 24 main main.cpp 9 0x400f3a
Full backtrace:
Thread 1 (Thread 0x7ffff7fc3780 (LWP 10321)): #0 0x00007ffff6051267 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55 resultvar = 0 pid = 10321 selftid = 10321 #1 0x00007ffff6052eca in __GI_abort () at abort.c:89 save_stage = 2 act = {__sigaction_handler = {sa_handler = 0x2, sa_sigaction = 0x2}, sa_mask = {__val = {140737488342352, 0, 140737351974688, 140737488342512, 65535, 140737488342240, 140737331120742, 8404432, 140737334774848, 0, 140737334774848, 140737488342672, 4294967295, 140737488342384, 140737488342672, 3}}, sa_flags = 8405120, sa_restorer = 0x0} sigs = {__val = {32, 0 <repeats 15 times>}} #2 0x00007ffff6a2bff1 in qt_message_fatal (context=..., message=...) at /home/mitch/dev/qt5.6/qtbase/src/corelib/global/qlogging.cpp:1610 No locals. #3 0x00007ffff6a2829a in QMessageLogger::fatal (this=0x7fffffffce90, msg=0x7ffff6d84eb8 "ASSERT failure in %s: \"%s\", file %s, line %d") at /home/mitch/dev/qt5.6/qtbase/src/corelib/global/qlogging.cpp:784 message = {static null = {<No data fields>}, d = 0x804730} ap = {{gp_offset = 48, fp_offset = 48, overflow_arg_area = 0x7fffffffce70, reg_save_area = 0x7fffffffcdb0}} #4 0x00007ffff6a20a91 in qt_assert_x (where=0x7ffff74eed67 "QVector<T>::at", what=0x7ffff74eec65 "index out of range", file=0x7ffff74eed00 "/home/mitch/dev/qt5.6-debug/qtbase/include/QtCore/../../../../qt5.6/qtbase/src/corelib/tools/qvector.h", line=419) at /home/mitch/dev/qt5.6/qtbase/src/corelib/global/qglobal.cpp:3002 __PRETTY_FUNCTION__ = "void qt_assert_x(const char*, const char*, const char*, int)" #5 0x00007ffff73c178b in QVector<QQmlPropertyData*>::at (this=0x7fffc4040008, i=0) at /home/mitch/dev/qt5.6-debug/qtbase/include/QtCore/../../../../qt5.6/qtbase/src/corelib/tools/qvector.h:419 No locals. #6 0x00007ffff73bbba4 in QQmlObjectCreator::setupBindings (this=0x71e9d0, bindingsToSkip=...) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlobjectcreator.cpp:682 property = 0x7ffff707df99 <QAtomicOps<int>::load<int>(std::atomic<int> const&)+42> i = 0 savedList = {object = 0x0, data = 0x0, append = 0x0, count = 0x0, at = 0x0, clear = 0x0, dummy1 = 0x0, dummy2 = 0x0} propertyData = @0x7fffc4040008: {d = 0x7ffff6d88c40 <QArrayData::shared_null>} currentListPropertyIndex = -1 binding = 0x7fffc4041504 #7 0x00007ffff73bfdc9 in QQmlObjectCreator::populateInstance (this=0x71e9d0, index=1, instance=0x92ab60, bindingTarget=0x92ab60, valueTypeProperty=0x0, bindingsToSkip=...) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlobjectcreator.cpp:1318 declarativeData = 0x803b40 obj = 0x7fffc4041420 valueScope = {engine = 0x712270, mark = 0x7fffd27ff350} scopeObjectProtector = {ptr = 0x7fffd27ff350} cache = {o = 0x7fffc403f450} vmeMetaObject = 0x803bd0 data = {d = 0x7ffff6d88c40 <QArrayData::shared_null>} bindingSkipList = {d = {d = 0x7ffff6d88c40 <QArrayData::shared_null>}} #8 0x00007ffff73bc62c in QQmlObjectCreator::setPropertyBinding (this=0x71e9d0, property=0x7fffc403fa28, binding=0x7fffc40414a4) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlobjectcreator.cpp:780 groupObject = 0x803e00 valueType = 0x0 valueTypeProperty = 0x0 bindingTarget = 0x803e00 obj = 0x7fffc40414c8 createdSubObject = 0x0 __PRETTY_FUNCTION__ = "bool QQmlObjectCreator::setPropertyBinding(const QQmlPropertyData*, const QV4::CompiledData::Binding*)" #9 0x00007ffff73bbce8 in QQmlObjectCreator::setupBindings (this=0x71e9d0, bindingsToSkip=...) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlobjectcreator.cpp:695 property = 0x7fffc403fa28 i = 1 savedList = {object = 0x72bb80, data = 0x0, append = 0x7fffd24786a0 <QQuickWindowPrivate::data_append(QQmlListProperty<QObject>*, QObject*)>, count = 0x7fffd247874e <QQuickWindowPrivate::data_count(QQmlListProperty<QObject>*)>, at = 0x7fffd247884e <QQuickWindowPrivate::data_at(QQmlListProperty<QObject>*, int)>, clear = 0x7fffd24788c6 <QQuickWindowPrivate::data_clear(QQmlListProperty<QObject>*)>, dummy1 = 0x0, dummy2 = 0x0} propertyData = @0x7fffc4040000: {d = 0x7fffc4040fa0} currentListPropertyIndex = -1 binding = 0x7fffc40414a4 #10 0x00007ffff73bfdc9 in QQmlObjectCreator::populateInstance (this=0x71e9d0, index=0, instance=0x72bb80, bindingTarget=0x72bb80, valueTypeProperty=0x0, bindingsToSkip=...) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlobjectcreator.cpp:1318 declarativeData = 0xae0db0 obj = 0x7fffc4041398 valueScope = {engine = 0x712270, mark = 0x7fffd27ff348} scopeObjectProtector = {ptr = 0x7fffd27ff348} cache = {o = 0x7fffc403ee60} vmeMetaObject = 0x0 data = {d = 0x7fffc403fb80} bindingSkipList = {d = {d = 0x7ffff6d88c40 <QArrayData::shared_null>}} #11 0x00007ffff73befe8 in QQmlObjectCreator::createInstance (this=0x71e9d0, index=1, parent=0x72bb80, isContextObject=false) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlobjectcreator.cpp:1165 profiler = {<QQmlVmeProfiler::Data> = {m_url = {d = 0x0}, m_line = 0, m_column = 0, m_typeName = {static null = {<No data fields>}, d = 0x7ffff6d88c40 <QArrayData::shared_null>}}, profiler = 0x0} ocRestorer = {ep = 0x7115f0, oldCreator = 0x71e9d0} isComponent = false instance = 0x92ab60 ddata = 0x803b40 customParser = 0x0 parserStatus = 0x92ab70 installPropertyCache = true obj = 0x7fffc4041420 bindingsToSkip = {d = {d = 0x7ffff6d88c40 <QArrayData::shared_null>}} cache = {o = 0x7fffc403f450} scopeObject = 0x72bb80 valueScope = {engine = 0x712270, mark = 0x7fffd27ff340} qmlContext = 0x7fffd27ff330 result = false #12 0x00007ffff73bc23f in QQmlObjectCreator::setPropertyBinding (this=0x71e9d0, property=0x7fffc403e378, binding=0x7fffc40413f8) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlobjectcreator.cpp:741 createdSubObject = 0x0 __PRETTY_FUNCTION__ = "bool QQmlObjectCreator::setPropertyBinding(const QQmlPropertyData*, const QV4::CompiledData::Binding*)" #13 0x00007ffff73bbce8 in QQmlObjectCreator::setupBindings (this=0x71e9d0, bindingsToSkip=...) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlobjectcreator.cpp:695 property = 0x7fffc403e378 i = 1 savedList = {object = 0x0, data = 0x0, append = 0x0, count = 0x0, at = 0x0, clear = 0x0, dummy1 = 0x0, dummy2 = 0x0} propertyData = @0x7fffc403fff8: {d = 0x7fffc4041260} currentListPropertyIndex = 17 binding = 0x7fffc40413f8 #14 0x00007ffff73bfdc9 in QQmlObjectCreator::populateInstance (this=0x71e9d0, index=-1, instance=0x0, bindingTarget=0x7fffc400b830, valueTypeProperty=0x0, bindingsToSkip=...) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlobjectcreator.cpp:1318 declarativeData = 0x0 obj = 0x0 valueScope = {engine = 0x712270, mark = 0x7fffd27ff338} scopeObjectProtector = {ptr = 0x7fffd27ff338} cache = {o = 0x0} vmeMetaObject = 0x0 data = {d = 0x7ffff6d88c40 <QArrayData::shared_null>} bindingSkipList = {d = {d = 0x7ffff6d88c40 <QArrayData::shared_null>}} #15 0x00007ffff73befe8 in QQmlObjectCreator::createInstance (this=0x71e9d0, index=0, parent=0x0, isContextObject=true) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlobjectcreator.cpp:1165 profiler = {<QQmlVmeProfiler::Data> = {m_url = {d = 0x0}, m_line = 0, m_column = 0, m_typeName = {static null = {<No data fields>}, d = 0x7ffff6d88c40 <QArrayData::shared_null>}}, profiler = 0x0} ocRestorer = {ep = 0x7115f0, oldCreator = 0x0} isComponent = false instance = 0x72bb80 ddata = 0xae0db0 customParser = 0x0 parserStatus = 0x72bba8 installPropertyCache = true obj = 0x7fffc4041398 bindingsToSkip = {d = {d = 0x7ffff6d88c40 <QArrayData::shared_null>}} cache = {o = 0x7fffc403ee60} scopeObject = 0x0 valueScope = {engine = 0x712270, mark = 0x7fffd27ff330} qmlContext = 0x0 result = true #16 0x00007ffff73b8e32 in QQmlObjectCreator::create (this=0x71e9d0, subComponentIndex=-1, parent=0x0, interrupt=0x0) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlobjectcreator.cpp:197 objectToCreate = 0 scope = {engine = 0x712270, mark = 0x7fffd27ff318} instance = 0x71e9d0 #17 0x00007ffff7323935 in QQmlComponentPrivate::beginCreate (this=0x7ffb70, context=0x7cc400) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlcomponent.cpp:870 q = 0x7fac20 __PRETTY_FUNCTION__ = "QObject* QQmlComponentPrivate::beginCreate(QQmlContextData*)" maxCreationDepth = 10 enginePriv = 0x7115f0 rv = 0x0 service = 0x7cc340 #18 0x00007ffff73235d1 in QQmlComponent::beginCreate (this=0x7fac20, publicContext=0x7cc340) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlcomponent.cpp:819 d = 0x7ffb70 context = 0x7cc400 #19 0x00007ffff7323518 in QQmlComponent::create (this=0x7fac20, context=0x7cc340) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlcomponent.cpp:779 d = 0x7ffb70 _qml_memory_scope = {pushed = false} rv = 0x7fffffffe080 #20 0x00007ffff73af8b9 in QQmlApplicationEnginePrivate::_q_finishLoad (this=0x7115f0, o=0x7fac20) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlapplicationengine.cpp:130 q = 0x7fffffffe220 c = 0x7fac20 __PRETTY_FUNCTION__ = "void QQmlApplicationEnginePrivate::_q_finishLoad(QObject*)" #21 0x00007ffff73af658 in QQmlApplicationEnginePrivate::startLoad (this=0x7115f0, url=..., data=..., dataFlag=false) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlapplicationengine.cpp:109 q = 0x7fffffffe220 c = 0x7fac20 #22 0x00007ffff73afc14 in QQmlApplicationEngine::load (this=0x7fffffffe220, url=...) at /home/mitch/dev/qt5.6/qtdeclarative/src/qml/qml/qqmlapplicationengine.cpp:250 d = 0x7115f0 #23 0x0000000000400f3a in main (argc=1, argv=0x7fffffffe338) at ../untitled1/main.cpp:9 app = {<QCoreApplication> = {<QObject> = {_vptr.QObject = 0x7ffff7dc1f80 <vtable for QGuiApplication+16>, static staticMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff6e4cf40 <qt_meta_stringdata_QObject>, data = 0x7ffff6e4d060 <qt_meta_data_QObject>, static_metacall = 0x7ffff6cd5b36 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x61b2d0}, static staticQtMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff6e9ca00 <qt_meta_stringdata_Qt>, data = 0x7ffff6ea76c0 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = 0x7ffff6fab5a0 <QObject::staticMetaObject>, stringdata = 0x7ffff6eb6f80 <qt_meta_stringdata_QCoreApplication>, data = 0x7ffff6eb71a0 <qt_meta_data_QCoreApplication>, static_metacall = 0x7ffff6d7d6ee <QCoreApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, static self = 0x7fffffffe210}, static staticMetaObject = {d = {superdata = 0x7ffff6fb42a0 <QCoreApplication::staticMetaObject>, stringdata = 0x7ffff7c06420 <qt_meta_stringdata_QGuiApplication>, data = 0x7ffff7c06960 <qt_meta_data_QGuiApplication>, static_metacall = 0x7ffff77582fe <QGuiApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}} engine = {<QQmlEngine> = {<QJSEngine> = {<QObject> = {_vptr.QObject = 0x7ffff762bea0 <vtable for QQmlApplicationEngine+16>, static staticMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff6e4cf40 <qt_meta_stringdata_QObject>, data = 0x7ffff6e4d060 <qt_meta_data_QObject>, static_metacall = 0x7ffff6cd5b36 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x7115f0}, static staticQtMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff6e9ca00 <qt_meta_stringdata_Qt>, data = 0x7ffff6ea76c0 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = 0x7ffff6fab5a0 <QObject::staticMetaObject>, stringdata = 0x7ffff7444520 <qt_meta_stringdata_QJSEngine>, data = 0x7ffff7444560 <qt_meta_data_QJSEngine>, static_metacall = 0x7ffff717e5ee <QJSEngine::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d = 0x711f60}, static staticMetaObject = {d = {superdata = 0x7ffff7627ec0 <QJSEngine::staticMetaObject>, stringdata = 0x7ffff74fdae0 <qt_meta_stringdata_QQmlEngine>, data = 0x7ffff74fdbc0 <qt_meta_data_QQmlEngine>, static_metacall = 0x7ffff7421e82 <QQmlEngine::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = 0x7ffff762d4e0 <QQmlEngine::staticMetaObject>, stringdata = 0x7ffff74eba00 <qt_meta_stringdata_QQmlApplicationEngine>, data = 0x7ffff74ebb60 <qt_meta_data_QQmlApplicationEngine>, static_metacall = 0x7ffff73afd4e <QQmlApplicationEngine::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}
Attachments
Issue Links
- resulted in
-
QTBUG-66632 Aliases to id objects have the wrong type if the object declares properties
-
- Closed
-