Details
-
Bug
-
Resolution: Done
-
P2: Important
-
6.4
-
c017f2692c (qt/qtdeclarative/dev) c017f2692c (qt/tqtc-qtdeclarative/dev) 5c5b8788d3 (qt/qtdeclarative/6.3) 5c5b8788d3 (qt/tqtc-qtdeclarative/6.3) e6b9b30143 (qt/qtdeclarative/6.4) e6b9b30143 (qt/tqtc-qtdeclarative/6.4) 5c5b8788d3 (qt/qtdeclarative/6.3.2)
Description
Configure and build qtbase and qtdeclarative with -sanitize address. The error is reproducing every time I run the test:
$ tests/auto/qmldom/domitem/tst_qmldomitem ********* Start testing of QQmlJS::Dom::TestDomItem ********* Config: Using QtTest library 6.5.0, Qt 6.5.0 (x86_64-little_endian-lp64 shared (dynamic) debug build; by Ubuntu Clang 13.0.1), ubuntu 20.04 PASS : QQmlJS::Dom::TestDomItem::initTestCase() PASS : QQmlJS::Dom::TestDomItem::testList() PASS : QQmlJS::Dom::TestDomItem::testMap() PASS : QQmlJS::Dom::TestDomItem::testMultiMap() PASS : QQmlJS::Dom::TestDomItem::testReference() PASS : QQmlJS::Dom::TestDomItem::testRefCache() PASS : QQmlJS::Dom::TestDomItem::testEnvUniverse() PASS : QQmlJS::Dom::TestDomItem::testTOwner() PASS : QQmlJS::Dom::TestDomItem::testSubObj() PASS : QQmlJS::Dom::TestDomItem::testEquality() PASS : QQmlJS::Dom::TestDomItem::testLoadNoDep() QDEBUG : QQmlJS::Dom::TestDomItem::testLoadDep() QWARN : QQmlJS::Dom::TestDomItem::testLoadDep() [Dom][Exports] Warning: Failed to find main qmldir file for QtQuick 2 QDEBUG : QQmlJS::Dom::TestDomItem::testLoadDep() QWARN : QQmlJS::Dom::TestDomItem::testLoadDep() [Dom] Warning: Failed to find main qmldir file for QtQuick QDEBUG : QQmlJS::Dom::TestDomItem::testLoadDep() QWARN : QQmlJS::Dom::TestDomItem::testLoadDep() [Dom] Warning: Failed to find main qmldir file for QtQuick QDEBUG : QQmlJS::Dom::TestDomItem::testLoadDep() QWARN : QQmlJS::Dom::TestDomItem::testLoadDep() [Dom] Warning: Failed to find main qmldir file for QtQuick QDEBUG : QQmlJS::Dom::TestDomItem::testLoadDep() QWARN : QQmlJS::Dom::TestDomItem::testLoadDep() [Dom] Warning: Failed to find main qmldir file for QtQuick FAIL! : QQmlJS::Dom::TestDomItem::testLoadDep() 'rect.length() == 1' returned FALSE. () Loc: [/home/sanitizer-runs/sanitizer_runs/build/qtdeclarative-asan/tests/auto/qmldom/domitem/tst_qmldomitem_autogen/EWIEGA46WW/../../../../../../../../../../cc-runs/src/qt/qt5/qtdeclarative/tests/auto/qmldom/domitem/tst_qmldomitem.h(554)] ================================================================= ==1970806==ERROR: AddressSanitizer: alloc-dealloc-mismatch (operator new vs free) on 0x6040009b4790 #0 0x4aca22 in __interceptor_free (/home/sanitizer-runs/sanitizer_runs/build/qtdeclarative-asan/tests/auto/qmldom/domitem/tst_qmldomitem+0x4aca22) #1 0xa6406d in QQmlJS::Dom::ModuleIndex::~ModuleIndex() /home/cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldommoduleindex.cpp:147:9 #2 0xa766ef in std::_Sp_counted_ptr<QQmlJS::Dom::ModuleIndex*, (__gnu_cxx::_Lock_policy)2>::_M_dispose() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:377:9 #3 0x528f6d in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:155:6 #4 0x528ed5 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:730:11 #5 0x53a948 in std::__shared_ptr<QQmlJS::Dom::ModuleIndex, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1169:31 #6 0x52bb54 in std::shared_ptr<QQmlJS::Dom::ModuleIndex>::~shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:103:11 #7 0x5366b8 in std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> >::~pair() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_iterator.h:1283:12 #8 0x536698 in void __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >::destroy<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >(std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:152:10 #9 0x53663c in void std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > >::destroy<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >(std::allocator<std::_Rb_tree_node<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >&, std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:496:8 #10 0x5365ab in std::_Rb_tree<int, std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> >, std::_Select1st<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >, std::less<int>, std::allocator<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >::_M_destroy_node(std::_Rb_tree_node<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_tree.h:642:2 #11 0x536550 in std::_Rb_tree<int, std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> >, std::_Select1st<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >, std::less<int>, std::allocator<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >::_M_drop_node(std::_Rb_tree_node<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_tree.h:650:2 #12 0x536421 in std::_Rb_tree<int, std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> >, std::_Select1st<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >, std::less<int>, std::allocator<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >::_M_erase(std::_Rb_tree_node<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_tree.h:1920:4 #13 0x536384 in std::_Rb_tree<int, std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> >, std::_Select1st<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >, std::less<int>, std::allocator<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >::~_Rb_tree() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_tree.h:1000:9 #14 0x536354 in std::map<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex>, std::less<int>, std::allocator<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >::~map() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_map.h:300:22 #15 0x536338 in QMapData<std::map<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex>, std::less<int>, std::allocator<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > >::~QMapData() /home/sanitizer-runs/sanitizer_runs/build/qtbase-asan/include/QtCore/../../../../../../cc-runs/src/qt/qt5/qtbase/src/corelib/tools/qmap.h:24:7 #16 0x536309 in QtPrivate::QExplicitlySharedDataPointerV2<QMapData<std::map<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex>, std::less<int>, std::allocator<std::pair<int const, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > > >::~QExplicitlySharedDataPointerV2() /home/sanitizer-runs/sanitizer_runs/build/qtbase-asan/include/QtCore/../../../../../../cc-runs/src/qt/qt5/qtbase/src/corelib/tools/qshareddata_impl.h:68:13 #17 0x536254 in QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> >::~QMap() /home/sanitizer-runs/sanitizer_runs/build/qtbase-asan/include/QtCore/../../../../../../cc-runs/src/qt/qt5/qtbase/src/corelib/tools/qmap.h:185:7 #18 0x53622c in std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >::~pair() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_iterator.h:1283:12 #19 0x536208 in void __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > >::destroy<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >(std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ext/new_allocator.h:152:10 #20 0x5361ac in void std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > > >::destroy<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >(std::allocator<std::_Rb_tree_node<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > >&, std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/alloc_traits.h:496:8 #21 0x53611b in std::_Rb_tree<QString, std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >, std::_Select1st<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >, std::less<QString>, std::allocator<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > >::_M_destroy_node(std::_Rb_tree_node<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_tree.h:642:2 #22 0x5360c0 in std::_Rb_tree<QString, std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >, std::_Select1st<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >, std::less<QString>, std::allocator<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > >::_M_drop_node(std::_Rb_tree_node<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_tree.h:650:2 #23 0x535f91 in std::_Rb_tree<QString, std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >, std::_Select1st<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >, std::less<QString>, std::allocator<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > >::_M_erase(std::_Rb_tree_node<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_tree.h:1920:4 #24 0x535f77 in std::_Rb_tree<QString, std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >, std::_Select1st<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >, std::less<QString>, std::allocator<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > >::_M_erase(std::_Rb_tree_node<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_tree.h:1918:4 #25 0x535f77 in std::_Rb_tree<QString, std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >, std::_Select1st<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >, std::less<QString>, std::allocator<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > >::_M_erase(std::_Rb_tree_node<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >*) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_tree.h:1918:4 #26 0x535ef4 in std::_Rb_tree<QString, std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >, std::_Select1st<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > >, std::less<QString>, std::allocator<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > >::~_Rb_tree() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_tree.h:1000:9 #27 0x535ec4 in std::map<QString, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> >, std::less<QString>, std::allocator<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > >::~map() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_map.h:300:22 #28 0x535ea8 in QMapData<std::map<QString, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> >, std::less<QString>, std::allocator<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > > >::~QMapData() /home/sanitizer-runs/sanitizer_runs/build/qtbase-asan/include/QtCore/../../../../../../cc-runs/src/qt/qt5/qtbase/src/corelib/tools/qmap.h:24:7 #29 0x535e79 in QtPrivate::QExplicitlySharedDataPointerV2<QMapData<std::map<QString, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> >, std::less<QString>, std::allocator<std::pair<QString const, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > > > > > >::~QExplicitlySharedDataPointerV2() /home/sanitizer-runs/sanitizer_runs/build/qtbase-asan/include/QtCore/../../../../../../cc-runs/src/qt/qt5/qtbase/src/corelib/tools/qshareddata_impl.h:68:13 #30 0x5314c4 in QMap<QString, QMap<int, std::shared_ptr<QQmlJS::Dom::ModuleIndex> > >::~QMap() /home/sanitizer-runs/sanitizer_runs/build/qtbase-asan/include/QtCore/../../../../../../cc-runs/src/qt/qt5/qtbase/src/corelib/tools/qmap.h:185:7 #31 0x5310c3 in QQmlJS::Dom::DomEnvironment::~DomEnvironment() /home/sanitizer-runs/sanitizer_runs/build/qtbase-asan/include/QtQmlDom/6.4.0/QtQmlDom/private/../../../../../../../../../cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldomtop_p.h:656:21 #32 0x5311af in std::_Sp_counted_ptr<QQmlJS::Dom::DomEnvironment*, (__gnu_cxx::_Lock_policy)2>::_M_dispose() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:377:9 #33 0x528f6d in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:155:6 #34 0x528ed5 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:730:11 #35 0x536ad8 in std::__shared_ptr<QQmlJS::Dom::DomEnvironment, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr_base.h:1169:31 #36 0x522824 in std::shared_ptr<QQmlJS::Dom::DomEnvironment>::~shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:103:11 #37 0x513ae1 in QQmlJS::Dom::TestDomItem::testLoadDep() /home/sanitizer-runs/sanitizer_runs/build/qtdeclarative-asan/tests/auto/qmldom/domitem/tst_qmldomitem_autogen/EWIEGA46WW/../../../../../../../../../../cc-runs/src/qt/qt5/qtdeclarative/tests/auto/qmldom/domitem/tst_qmldomitem.h:580:5 #38 0x4e145b in QQmlJS::Dom::TestDomItem::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) /home/sanitizer-runs/sanitizer_runs/build/qtdeclarative-asan/tests/auto/qmldom/domitem/tst_qmldomitem_autogen/EWIEGA46WW/moc_tst_qmldomitem.cpp:142:22 #39 0x7f3add358114 in QMetaMethod::invoke(QObject*, Qt::ConnectionType, QGenericReturnArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) const /home/cc-runs/src/qt/qt5/qtbase/src/corelib/kernel/qmetaobject.cpp:2357:13 #40 0x7f3ade6996d1 in QMetaMethod::invoke(QObject*, Qt::ConnectionType, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) const /home/sanitizer-runs/sanitizer_runs/build/qtbase-asan/include/QtCore/../../../../../../cc-runs/src/qt/qt5/qtbase/src/corelib/kernel/qmetaobject.h:90:16 #41 0x7f3ade677c14 in QTest::TestMethods::invokeTestOnData(int) const /home/cc-runs/src/qt/qt5/qtbase/src/testlib/qtestcase.cpp:1118:45 #42 0x7f3ade679f01 in QTest::TestMethods::invokeTest(int, QLatin1String, QTest::WatchDog*) const /home/cc-runs/src/qt/qt5/qtbase/src/testlib/qtestcase.cpp:1377:17 #43 0x7f3ade67fdc8 in QTest::TestMethods::invokeTests(QObject*) const /home/cc-runs/src/qt/qt5/qtbase/src/testlib/qtestcase.cpp:1726:33 #44 0x7f3ade681af5 in QTest::qRun() /home/cc-runs/src/qt/qt5/qtbase/src/testlib/qtestcase.cpp:2259:14 #45 0x7f3ade680bf7 in QTest::qExec(QObject*, int, char**) /home/cc-runs/src/qt/qt5/qtbase/src/testlib/qtestcase.cpp:2159:15 #46 0x66a32a in main /home/cc-runs/src/qt/qt5/qtdeclarative/tests/auto/qmldom/domitem/tst_qmldomitem.cpp:40:1 #47 0x7f3adc938082 in __libc_start_main /build/glibc-SzIz7B/glibc-2.31/csu/../csu/libc-start.c:308:16 #48 0x4304dd in _start (/home/sanitizer-runs/sanitizer_runs/build/qtdeclarative-asan/tests/auto/qmldom/domitem/tst_qmldomitem+0x4304dd) 0x6040009b4790 is located 0 bytes inside of 40-byte region [0x6040009b4790,0x6040009b47b8) allocated by thread T0 here: #0 0x4dea4d in operator new(unsigned long) (/home/sanitizer-runs/sanitizer_runs/build/qtdeclarative-asan/tests/auto/qmldom/domitem/tst_qmldomitem+0x4dea4d) #1 0xa63955 in QQmlJS::Dom::ModuleIndex::ensureMinorVersion(int) /home/cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldommoduleindex.cpp:340:29 #2 0xa715c6 in QQmlJS::Dom::ModuleIndex::iterateDirectSubpaths(QQmlJS::Dom::DomItem&, std::function<bool (QQmlJS::Dom::PathEls::PathComponent const&, std::function<QQmlJS::Dom::DomItem ()> const&)> const&)::$_3::operator()() const::'lambda'(QQmlJS::Dom::DomItem&, QString)::operator()(QQmlJS::Dom::DomItem&, QString) const /home/cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldommoduleindex.cpp:167:65 #3 0xa711b1 in std::_Function_handler<QQmlJS::Dom::DomItem (QQmlJS::Dom::DomItem&, QString), QQmlJS::Dom::ModuleIndex::iterateDirectSubpaths(QQmlJS::Dom::DomItem&, std::function<bool (QQmlJS::Dom::PathEls::PathComponent const&, std::function<QQmlJS::Dom::DomItem ()> const&)> const&)::$_3::operator()() const::'lambda'(QQmlJS::Dom::DomItem&, QString)>::_M_invoke(std::_Any_data const&, QQmlJS::Dom::DomItem&, QString&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9 #4 0x9a12da in std::function<QQmlJS::Dom::DomItem (QQmlJS::Dom::DomItem&, QString)>::operator()(QQmlJS::Dom::DomItem&, QString) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14 #5 0x8abbaf in QQmlJS::Dom::Map::key(QQmlJS::Dom::DomItem&, QString) const /home/cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldomitem.cpp:2536:12 #6 0x8e39c9 in auto QQmlJS::Dom::DomItem::key(QString)::$_10::operator()<QQmlJS::Dom::Map&>(QQmlJS::Dom::Map&) const /home/cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldomitem.cpp:1045:57 #7 0x8e3884 in QQmlJS::Dom::DomItem std::__invoke_impl<QQmlJS::Dom::DomItem, QQmlJS::Dom::DomItem::key(QString)::$_10&, QQmlJS::Dom::Map&>(std::__invoke_other, QQmlJS::Dom::DomItem::key(QString)::$_10&, QQmlJS::Dom::Map&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:60:14 #8 0x8e3804 in std::__invoke_result<QQmlJS::Dom::DomItem::key(QString)::$_10&, QQmlJS::Dom::Map&>::type std::__invoke<QQmlJS::Dom::DomItem::key(QString)::$_10&, QQmlJS::Dom::Map&>(QQmlJS::Dom::DomItem::key(QString)::$_10&, QQmlJS::Dom::Map&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/invoke.h:95:14 #9 0x8e37ac in std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<QQmlJS::Dom::DomItem (*)(QQmlJS::Dom::DomItem::key(QString)::$_10&, std::variant<QQmlJS::Dom::Empty, QQmlJS::Dom::Map, QQmlJS::Dom::List, QQmlJS::Dom::ListP, QQmlJS::Dom::ConstantData, QQmlJS::Dom::SimpleObjectWrap, QQmlJS::Dom::Reference, QQmlJS::Dom::GlobalComponent*, QQmlJS::Dom::JsResource*, QQmlJS::Dom::QmlComponent*, QQmlJS::Dom::QmltypesComponent*, QQmlJS::Dom::EnumDecl*, QQmlJS::Dom::MockObject*, QQmlJS::Dom::ModuleScope*, QQmlJS::Dom::AstComments*, QQmlJS::Dom::AttachedInfo*, QQmlJS::Dom::DomEnvironment*, QQmlJS::Dom::DomUniverse*, QQmlJS::Dom::ExternalItemInfoBase*, QQmlJS::Dom::ExternalItemPairBase*, QQmlJS::Dom::GlobalScope*, QQmlJS::Dom::JsFile*, QQmlJS::Dom::QmlDirectory*, QQmlJS::Dom::QmlFile*, QQmlJS::Dom::QmldirFile*, QQmlJS::Dom::QmlObject*, QQmlJS::Dom::QmltypesFile*, QQmlJS::Dom::LoadInfo*, QQmlJS::Dom::MockOwner*, QQmlJS::Dom::ModuleIndex*, QQmlJS::Dom::ScriptExpression*>&)>, std::tuple<std::variant<QQmlJS::Dom::Empty, QQmlJS::Dom::Map, QQmlJS::Dom::List, QQmlJS::Dom::ListP, QQmlJS::Dom::ConstantData, QQmlJS::Dom::SimpleObjectWrap, QQmlJS::Dom::Reference, QQmlJS::Dom::GlobalComponent*, QQmlJS::Dom::JsResource*, QQmlJS::Dom::QmlComponent*, QQmlJS::Dom::QmltypesComponent*, QQmlJS::Dom::EnumDecl*, QQmlJS::Dom::MockObject*, QQmlJS::Dom::ModuleScope*, QQmlJS::Dom::AstComments*, QQmlJS::Dom::AttachedInfo*, QQmlJS::Dom::DomEnvironment*, QQmlJS::Dom::DomUniverse*, QQmlJS::Dom::ExternalItemInfoBase*, QQmlJS::Dom::ExternalItemPairBase*, QQmlJS::Dom::GlobalScope*, QQmlJS::Dom::JsFile*, QQmlJS::Dom::QmlDirectory*, QQmlJS::Dom::QmlFile*, QQmlJS::Dom::QmldirFile*, QQmlJS::Dom::QmlObject*, QQmlJS::Dom::QmltypesFile*, QQmlJS::Dom::LoadInfo*, QQmlJS::Dom::MockOwner*, QQmlJS::Dom::ModuleIndex*, QQmlJS::Dom::ScriptExpression*>&>, std::integer_sequence<unsigned long, 1ul> >::__visit_invoke_impl(QQmlJS::Dom::DomItem::key(QString)::$_10&, std::variant<QQmlJS::Dom::Empty, QQmlJS::Dom::Map, QQmlJS::Dom::List, QQmlJS::Dom::ListP, QQmlJS::Dom::ConstantData, QQmlJS::Dom::SimpleObjectWrap, QQmlJS::Dom::Reference, QQmlJS::Dom::GlobalComponent*, QQmlJS::Dom::JsResource*, QQmlJS::Dom::QmlComponent*, QQmlJS::Dom::QmltypesComponent*, QQmlJS::Dom::EnumDecl*, QQmlJS::Dom::MockObject*, QQmlJS::Dom::ModuleScope*, QQmlJS::Dom::AstComments*, QQmlJS::Dom::AttachedInfo*, QQmlJS::Dom::DomEnvironment*, QQmlJS::Dom::DomUniverse*, QQmlJS::Dom::ExternalItemInfoBase*, QQmlJS::Dom::ExternalItemPairBase*, QQmlJS::Dom::GlobalScope*, QQmlJS::Dom::JsFile*, QQmlJS::Dom::QmlDirectory*, QQmlJS::Dom::QmlFile*, QQmlJS::Dom::QmldirFile*, QQmlJS::Dom::QmlObject*, QQmlJS::Dom::QmltypesFile*, QQmlJS::Dom::LoadInfo*, QQmlJS::Dom::MockOwner*, QQmlJS::Dom::ModuleIndex*, QQmlJS::Dom::ScriptExpression*>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:981:11 #10 0x8e3754 in std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<QQmlJS::Dom::DomItem (*)(QQmlJS::Dom::DomItem::key(QString)::$_10&, std::variant<QQmlJS::Dom::Empty, QQmlJS::Dom::Map, QQmlJS::Dom::List, QQmlJS::Dom::ListP, QQmlJS::Dom::ConstantData, QQmlJS::Dom::SimpleObjectWrap, QQmlJS::Dom::Reference, QQmlJS::Dom::GlobalComponent*, QQmlJS::Dom::JsResource*, QQmlJS::Dom::QmlComponent*, QQmlJS::Dom::QmltypesComponent*, QQmlJS::Dom::EnumDecl*, QQmlJS::Dom::MockObject*, QQmlJS::Dom::ModuleScope*, QQmlJS::Dom::AstComments*, QQmlJS::Dom::AttachedInfo*, QQmlJS::Dom::DomEnvironment*, QQmlJS::Dom::DomUniverse*, QQmlJS::Dom::ExternalItemInfoBase*, QQmlJS::Dom::ExternalItemPairBase*, QQmlJS::Dom::GlobalScope*, QQmlJS::Dom::JsFile*, QQmlJS::Dom::QmlDirectory*, QQmlJS::Dom::QmlFile*, QQmlJS::Dom::QmldirFile*, QQmlJS::Dom::QmlObject*, QQmlJS::Dom::QmltypesFile*, QQmlJS::Dom::LoadInfo*, QQmlJS::Dom::MockOwner*, QQmlJS::Dom::ModuleIndex*, QQmlJS::Dom::ScriptExpression*>&)>, std::tuple<std::variant<QQmlJS::Dom::Empty, QQmlJS::Dom::Map, QQmlJS::Dom::List, QQmlJS::Dom::ListP, QQmlJS::Dom::ConstantData, QQmlJS::Dom::SimpleObjectWrap, QQmlJS::Dom::Reference, QQmlJS::Dom::GlobalComponent*, QQmlJS::Dom::JsResource*, QQmlJS::Dom::QmlComponent*, QQmlJS::Dom::QmltypesComponent*, QQmlJS::Dom::EnumDecl*, QQmlJS::Dom::MockObject*, QQmlJS::Dom::ModuleScope*, QQmlJS::Dom::AstComments*, QQmlJS::Dom::AttachedInfo*, QQmlJS::Dom::DomEnvironment*, QQmlJS::Dom::DomUniverse*, QQmlJS::Dom::ExternalItemInfoBase*, QQmlJS::Dom::ExternalItemPairBase*, QQmlJS::Dom::GlobalScope*, QQmlJS::Dom::JsFile*, QQmlJS::Dom::QmlDirectory*, QQmlJS::Dom::QmlFile*, QQmlJS::Dom::QmldirFile*, QQmlJS::Dom::QmlObject*, QQmlJS::Dom::QmltypesFile*, QQmlJS::Dom::LoadInfo*, QQmlJS::Dom::MockOwner*, QQmlJS::Dom::ModuleIndex*, QQmlJS::Dom::ScriptExpression*>&>, std::integer_sequence<unsigned long, 1ul> >::__do_visit_invoke(QQmlJS::Dom::DomItem::key(QString)::$_10&, std::variant<QQmlJS::Dom::Empty, QQmlJS::Dom::Map, QQmlJS::Dom::List, QQmlJS::Dom::ListP, QQmlJS::Dom::ConstantData, QQmlJS::Dom::SimpleObjectWrap, QQmlJS::Dom::Reference, QQmlJS::Dom::GlobalComponent*, QQmlJS::Dom::JsResource*, QQmlJS::Dom::QmlComponent*, QQmlJS::Dom::QmltypesComponent*, QQmlJS::Dom::EnumDecl*, QQmlJS::Dom::MockObject*, QQmlJS::Dom::ModuleScope*, QQmlJS::Dom::AstComments*, QQmlJS::Dom::AttachedInfo*, QQmlJS::Dom::DomEnvironment*, QQmlJS::Dom::DomUniverse*, QQmlJS::Dom::ExternalItemInfoBase*, QQmlJS::Dom::ExternalItemPairBase*, QQmlJS::Dom::GlobalScope*, QQmlJS::Dom::JsFile*, QQmlJS::Dom::QmlDirectory*, QQmlJS::Dom::QmlFile*, QQmlJS::Dom::QmldirFile*, QQmlJS::Dom::QmlObject*, QQmlJS::Dom::QmltypesFile*, QQmlJS::Dom::LoadInfo*, QQmlJS::Dom::MockOwner*, QQmlJS::Dom::ModuleIndex*, QQmlJS::Dom::ScriptExpression*>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:989:9 #11 0x8e2ac4 in std::__detail::__variant::__gen_vtable_impl<true, std::__detail::__variant::_Multi_array<QQmlJS::Dom::DomItem (*)(QQmlJS::Dom::DomItem::key(QString)::$_10&, std::variant<QQmlJS::Dom::Empty, QQmlJS::Dom::Map, QQmlJS::Dom::List, QQmlJS::Dom::ListP, QQmlJS::Dom::ConstantData, QQmlJS::Dom::SimpleObjectWrap, QQmlJS::Dom::Reference, QQmlJS::Dom::GlobalComponent*, QQmlJS::Dom::JsResource*, QQmlJS::Dom::QmlComponent*, QQmlJS::Dom::QmltypesComponent*, QQmlJS::Dom::EnumDecl*, QQmlJS::Dom::MockObject*, QQmlJS::Dom::ModuleScope*, QQmlJS::Dom::AstComments*, QQmlJS::Dom::AttachedInfo*, QQmlJS::Dom::DomEnvironment*, QQmlJS::Dom::DomUniverse*, QQmlJS::Dom::ExternalItemInfoBase*, QQmlJS::Dom::ExternalItemPairBase*, QQmlJS::Dom::GlobalScope*, QQmlJS::Dom::JsFile*, QQmlJS::Dom::QmlDirectory*, QQmlJS::Dom::QmlFile*, QQmlJS::Dom::QmldirFile*, QQmlJS::Dom::QmlObject*, QQmlJS::Dom::QmltypesFile*, QQmlJS::Dom::LoadInfo*, QQmlJS::Dom::MockOwner*, QQmlJS::Dom::ModuleIndex*, QQmlJS::Dom::ScriptExpression*>&)>, std::tuple<std::variant<QQmlJS::Dom::Empty, QQmlJS::Dom::Map, QQmlJS::Dom::List, QQmlJS::Dom::ListP, QQmlJS::Dom::ConstantData, QQmlJS::Dom::SimpleObjectWrap, QQmlJS::Dom::Reference, QQmlJS::Dom::GlobalComponent*, QQmlJS::Dom::JsResource*, QQmlJS::Dom::QmlComponent*, QQmlJS::Dom::QmltypesComponent*, QQmlJS::Dom::EnumDecl*, QQmlJS::Dom::MockObject*, QQmlJS::Dom::ModuleScope*, QQmlJS::Dom::AstComments*, QQmlJS::Dom::AttachedInfo*, QQmlJS::Dom::DomEnvironment*, QQmlJS::Dom::DomUniverse*, QQmlJS::Dom::ExternalItemInfoBase*, QQmlJS::Dom::ExternalItemPairBase*, QQmlJS::Dom::GlobalScope*, QQmlJS::Dom::JsFile*, QQmlJS::Dom::QmlDirectory*, QQmlJS::Dom::QmlFile*, QQmlJS::Dom::QmldirFile*, QQmlJS::Dom::QmlObject*, QQmlJS::Dom::QmltypesFile*, QQmlJS::Dom::LoadInfo*, QQmlJS::Dom::MockOwner*, QQmlJS::Dom::ModuleIndex*, QQmlJS::Dom::ScriptExpression*>&>, std::integer_sequence<unsigned long, 1ul> >::__visit_invoke(QQmlJS::Dom::DomItem::key(QString)::$_10&, std::variant<QQmlJS::Dom::Empty, QQmlJS::Dom::Map, QQmlJS::Dom::List, QQmlJS::Dom::ListP, QQmlJS::Dom::ConstantData, QQmlJS::Dom::SimpleObjectWrap, QQmlJS::Dom::Reference, QQmlJS::Dom::GlobalComponent*, QQmlJS::Dom::JsResource*, QQmlJS::Dom::QmlComponent*, QQmlJS::Dom::QmltypesComponent*, QQmlJS::Dom::EnumDecl*, QQmlJS::Dom::MockObject*, QQmlJS::Dom::ModuleScope*, QQmlJS::Dom::AstComments*, QQmlJS::Dom::AttachedInfo*, QQmlJS::Dom::DomEnvironment*, QQmlJS::Dom::DomUniverse*, QQmlJS::Dom::ExternalItemInfoBase*, QQmlJS::Dom::ExternalItemPairBase*, QQmlJS::Dom::GlobalScope*, QQmlJS::Dom::JsFile*, QQmlJS::Dom::QmlDirectory*, QQmlJS::Dom::QmlFile*, QQmlJS::Dom::QmldirFile*, QQmlJS::Dom::QmlObject*, QQmlJS::Dom::QmltypesFile*, QQmlJS::Dom::LoadInfo*, QQmlJS::Dom::MockOwner*, QQmlJS::Dom::ModuleIndex*, QQmlJS::Dom::ScriptExpression*>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:1005:11 #12 0x8e29d9 in decltype(auto) std::__do_visit<false, true, QQmlJS::Dom::DomItem::key(QString)::$_10&, std::variant<QQmlJS::Dom::Empty, QQmlJS::Dom::Map, QQmlJS::Dom::List, QQmlJS::Dom::ListP, QQmlJS::Dom::ConstantData, QQmlJS::Dom::SimpleObjectWrap, QQmlJS::Dom::Reference, QQmlJS::Dom::GlobalComponent*, QQmlJS::Dom::JsResource*, QQmlJS::Dom::QmlComponent*, QQmlJS::Dom::QmltypesComponent*, QQmlJS::Dom::EnumDecl*, QQmlJS::Dom::MockObject*, QQmlJS::Dom::ModuleScope*, QQmlJS::Dom::AstComments*, QQmlJS::Dom::AttachedInfo*, QQmlJS::Dom::DomEnvironment*, QQmlJS::Dom::DomUniverse*, QQmlJS::Dom::ExternalItemInfoBase*, QQmlJS::Dom::ExternalItemPairBase*, QQmlJS::Dom::GlobalScope*, QQmlJS::Dom::JsFile*, QQmlJS::Dom::QmlDirectory*, QQmlJS::Dom::QmlFile*, QQmlJS::Dom::QmldirFile*, QQmlJS::Dom::QmlObject*, QQmlJS::Dom::QmltypesFile*, QQmlJS::Dom::LoadInfo*, QQmlJS::Dom::MockOwner*, QQmlJS::Dom::ModuleIndex*, QQmlJS::Dom::ScriptExpression*>&>(QQmlJS::Dom::DomItem::key(QString)::$_10&, std::variant<QQmlJS::Dom::Empty, QQmlJS::Dom::Map, QQmlJS::Dom::List, QQmlJS::Dom::ListP, QQmlJS::Dom::ConstantData, QQmlJS::Dom::SimpleObjectWrap, QQmlJS::Dom::Reference, QQmlJS::Dom::GlobalComponent*, QQmlJS::Dom::JsResource*, QQmlJS::Dom::QmlComponent*, QQmlJS::Dom::QmltypesComponent*, QQmlJS::Dom::EnumDecl*, QQmlJS::Dom::MockObject*, QQmlJS::Dom::ModuleScope*, QQmlJS::Dom::AstComments*, QQmlJS::Dom::AttachedInfo*, QQmlJS::Dom::DomEnvironment*, QQmlJS::Dom::DomUniverse*, QQmlJS::Dom::ExternalItemInfoBase*, QQmlJS::Dom::ExternalItemPairBase*, QQmlJS::Dom::GlobalScope*, QQmlJS::Dom::JsFile*, QQmlJS::Dom::QmlDirectory*, QQmlJS::Dom::QmlFile*, QQmlJS::Dom::QmldirFile*, QQmlJS::Dom::QmlObject*, QQmlJS::Dom::QmltypesFile*, QQmlJS::Dom::LoadInfo*, QQmlJS::Dom::MockOwner*, QQmlJS::Dom::ModuleIndex*, QQmlJS::Dom::ScriptExpression*>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:1652:14 #13 0x8e2926 in decltype(auto) std::visit<QQmlJS::Dom::DomItem::key(QString)::$_10&, std::variant<QQmlJS::Dom::Empty, QQmlJS::Dom::Map, QQmlJS::Dom::List, QQmlJS::Dom::ListP, QQmlJS::Dom::ConstantData, QQmlJS::Dom::SimpleObjectWrap, QQmlJS::Dom::Reference, QQmlJS::Dom::GlobalComponent*, QQmlJS::Dom::JsResource*, QQmlJS::Dom::QmlComponent*, QQmlJS::Dom::QmltypesComponent*, QQmlJS::Dom::EnumDecl*, QQmlJS::Dom::MockObject*, QQmlJS::Dom::ModuleScope*, QQmlJS::Dom::AstComments*, QQmlJS::Dom::AttachedInfo*, QQmlJS::Dom::DomEnvironment*, QQmlJS::Dom::DomUniverse*, QQmlJS::Dom::ExternalItemInfoBase*, QQmlJS::Dom::ExternalItemPairBase*, QQmlJS::Dom::GlobalScope*, QQmlJS::Dom::JsFile*, QQmlJS::Dom::QmlDirectory*, QQmlJS::Dom::QmlFile*, QQmlJS::Dom::QmldirFile*, QQmlJS::Dom::QmlObject*, QQmlJS::Dom::QmltypesFile*, QQmlJS::Dom::LoadInfo*, QQmlJS::Dom::MockOwner*, QQmlJS::Dom::ModuleIndex*, QQmlJS::Dom::ScriptExpression*>&>(QQmlJS::Dom::DomItem::key(QString)::$_10&, std::variant<QQmlJS::Dom::Empty, QQmlJS::Dom::Map, QQmlJS::Dom::List, QQmlJS::Dom::ListP, QQmlJS::Dom::ConstantData, QQmlJS::Dom::SimpleObjectWrap, QQmlJS::Dom::Reference, QQmlJS::Dom::GlobalComponent*, QQmlJS::Dom::JsResource*, QQmlJS::Dom::QmlComponent*, QQmlJS::Dom::QmltypesComponent*, QQmlJS::Dom::EnumDecl*, QQmlJS::Dom::MockObject*, QQmlJS::Dom::ModuleScope*, QQmlJS::Dom::AstComments*, QQmlJS::Dom::AttachedInfo*, QQmlJS::Dom::DomEnvironment*, QQmlJS::Dom::DomUniverse*, QQmlJS::Dom::ExternalItemInfoBase*, QQmlJS::Dom::ExternalItemPairBase*, QQmlJS::Dom::GlobalScope*, QQmlJS::Dom::JsFile*, QQmlJS::Dom::QmlDirectory*, QQmlJS::Dom::QmlFile*, QQmlJS::Dom::QmldirFile*, QQmlJS::Dom::QmlObject*, QQmlJS::Dom::QmltypesFile*, QQmlJS::Dom::LoadInfo*, QQmlJS::Dom::MockOwner*, QQmlJS::Dom::ModuleIndex*, QQmlJS::Dom::ScriptExpression*>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/variant:1663:14 #14 0x88ff21 in auto QQmlJS::Dom::DomItem::visitEl<QQmlJS::Dom::DomItem::key(QString)::$_10>(QQmlJS::Dom::DomItem::key(QString)::$_10) /home/sanitizer-runs/sanitizer_runs/build/qtdeclarative-asan/src/qmldom/QmlDomPrivate_autogen/include/../../../../../../../../cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldomitem_p.h:754:16 #15 0x87fbcd in QQmlJS::Dom::DomItem::key(QString) /home/cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldomitem.cpp:1045:12 #16 0x8837a1 in QQmlJS::Dom::DomItem::resolve(QQmlJS::Dom::Path, std::function<bool (QQmlJS::Dom::Path, QQmlJS::Dom::DomItem&)> const&, std::function<void (QQmlJS::Dom::ErrorMessage const&)>, QFlags<QQmlJS::Dom::ResolveOption>, QQmlJS::Dom::Path, QList<QQmlJS::Dom::Path>*) /home/cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldomitem.cpp:706:25 #17 0x8799de in QQmlJS::Dom::DomItem::path(QQmlJS::Dom::Path, std::function<void (QQmlJS::Dom::ErrorMessage const&)>) /home/cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldomitem.cpp:981:5 #18 0x6f09fb in QQmlJS::Dom::ImportScope::allSources(QQmlJS::Dom::DomItem&) const /home/cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldomelements.cpp:1354:34 #19 0x8180d5 in QQmlJS::Dom::ImportScope::importedItemsWithName(QQmlJS::Dom::DomItem&, QString) const /home/sanitizer-runs/sanitizer_runs/build/qtdeclarative-asan/src/qmldom/QmlDomPrivate_autogen/include/../../../../../../../../cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldomelements_p.h:1147:23 #20 0x89da2c in QQmlJS::Dom::DomItem::visitLookup1(QString, std::function<bool (QQmlJS::Dom::DomItem&)> const&, QFlags<QQmlJS::Dom::LookupOption>, std::function<void (QQmlJS::Dom::ErrorMessage const&)>, QSet<unsigned long long>*, QList<QQmlJS::Dom::Path>*) /home/cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldomitem.cpp:1692:52 #21 0x88d4de in QQmlJS::Dom::DomItem::visitLookup(QString, std::function<bool (QQmlJS::Dom::DomItem&)> const&, QQmlJS::Dom::LookupType, QFlags<QQmlJS::Dom::LookupOption>, std::function<void (QQmlJS::Dom::ErrorMessage const&)>, QSet<unsigned long long>*, QList<QQmlJS::Dom::Path>*) /home/cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldomitem.cpp:1767:20 #22 0x89e671 in QQmlJS::Dom::DomItem::lookup(QString, QQmlJS::Dom::LookupType, QFlags<QQmlJS::Dom::LookupOption>, std::function<void (QQmlJS::Dom::ErrorMessage const&)>) /home/cc-runs/src/qt/qt5/qtdeclarative/src/qmldom/qqmldomitem.cpp:1937:5 #23 0x5124eb in QQmlJS::Dom::TestDomItem::testLoadDep() /home/sanitizer-runs/sanitizer_runs/build/qtdeclarative-asan/tests/auto/qmldom/domitem/tst_qmldomitem_autogen/EWIEGA46WW/../../../../../../../../../../cc-runs/src/qt/qt5/qtdeclarative/tests/auto/qmldom/domitem/tst_qmldomitem.h:551:26 #24 0x4e145b in QQmlJS::Dom::TestDomItem::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) /home/sanitizer-runs/sanitizer_runs/build/qtdeclarative-asan/tests/auto/qmldom/domitem/tst_qmldomitem_autogen/EWIEGA46WW/moc_tst_qmldomitem.cpp:142:22 #25 0x7f3add358114 in QMetaMethod::invoke(QObject*, Qt::ConnectionType, QGenericReturnArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) const /home/cc-runs/src/qt/qt5/qtbase/src/corelib/kernel/qmetaobject.cpp:2357:13 #26 0x7f3ade6996d1 in QMetaMethod::invoke(QObject*, Qt::ConnectionType, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) const /home/sanitizer-runs/sanitizer_runs/build/qtbase-asan/include/QtCore/../../../../../../cc-runs/src/qt/qt5/qtbase/src/corelib/kernel/qmetaobject.h:90:16 #27 0x7f3ade677c14 in QTest::TestMethods::invokeTestOnData(int) const /home/cc-runs/src/qt/qt5/qtbase/src/testlib/qtestcase.cpp:1118:45 #28 0x7f3ade679f01 in QTest::TestMethods::invokeTest(int, QLatin1String, QTest::WatchDog*) const /home/cc-runs/src/qt/qt5/qtbase/src/testlib/qtestcase.cpp:1377:17 #29 0x7f3ade67fdc8 in QTest::TestMethods::invokeTests(QObject*) const /home/cc-runs/src/qt/qt5/qtbase/src/testlib/qtestcase.cpp:1726:33 SUMMARY: AddressSanitizer: alloc-dealloc-mismatch (/home/sanitizer-runs/sanitizer_runs/build/qtdeclarative-asan/tests/auto/qmldom/domitem/tst_qmldomitem+0x4aca22) in __interceptor_free ==1970806==HINT: if you don't care about these errors you may set ASAN_OPTIONS=alloc_dealloc_mismatch=0 ==1970806==ABORTING
The backtraces point to qqmldommoduleindex.cpp, specifically the allocation happens at:
ModuleScope *ModuleIndex::ensureMinorVersion(int minorVersion) { if (minorVersion < 0) minorVersion = Version::Latest; { QMutexLocker l(mutex()); auto it = m_moduleScope.find(minorVersion); if (it != m_moduleScope.end()) return *it; } ModuleScope *res = nullptr; ModuleScope *newScope = new ModuleScope(m_uri, Version(majorVersion(), minorVersion)); // ALLOCATION auto cleanup = qScopeGuard([&newScope] { delete newScope; }); { QMutexLocker l(mutex()); auto it = m_moduleScope.find(minorVersion); if (it != m_moduleScope.end()) { res = *it; } else { res = newScope; newScope = nullptr; m_moduleScope.insert(minorVersion, res); } } return res; }
and the de-allocation:
ModuleIndex::~ModuleIndex() { QMap<int, ModuleScope *> scopes; { QMutexLocker l(mutex()); scopes = m_moduleScope; m_moduleScope.clear(); } auto it = scopes.begin(); auto end = scopes.end(); while (it != end) { free(*it); // DE-ALLOCATION OPERATOR MISMATCH ++it; } }
Attachments
For Gerrit Dashboard: QTBUG-104084 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
415591,6 | qmldom: correctly use delete to free objects created with new | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
420835,2 | qmldom: correctly use delete to free objects created with new | 6.4 | qt/qtdeclarative | Status: MERGED | +2 | 0 |
420856,2 | qmldom: correctly use delete to free objects created with new | 6.3 | qt/qtdeclarative | Status: MERGED | +2 | 0 |
420859,2 | qmldom: correctly use delete to free objects created with new | tqtc/lts-6.2 | qt/tqtc-qtdeclarative | Status: MERGED | +2 | 0 |