Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-74500

tst_qqmlnotifier.cpp: no matching function for call to ‘tst_qqmlnotifier::connect

    XMLWordPrintable

Details

    • df2d75b6aa13d770e891910ffcef21968db423a4 (qt/qtdeclarative/5.12)

    Description

      Compiliation of tests fails when building on SLES 12. See attached logs or the real error:

       tst_qqmlnotifier.cpp: In member function ‘void tst_qqmlnotifier::deleteFromHandler()’:
       tst_qqmlnotifier.cpp:352:83: error: no matching function for call to ‘tst_qqmlnotifier::connect(QPointer<QObject>&, void (QObject::*)(const QString&, QObject::QPrivateSignal), tst_qqmlnotifier::deleteFromHandler()::__lambda1)’
                QObject::connect(mess, &QObject::objectNameChanged, [&]() { delete mess; });
                                                                                          ^
       tst_qqmlnotifier.cpp:352:83: note: candidates are:
       In file included from /home/qt/work/install/include/QtCore/qvariant.h:51:0,
                        from /home/qt/work/install/include/QtCore/qmetaobject.h:45,
                        from /home/qt/work/install/include/QtTest/qtestcase.h:48,
                        from /home/qt/work/install/include/QtTest/qtest.h:45,
                        from tst_qqmlnotifier.cpp:28:
       /home/qt/work/install/include/QtCore/qobject.h:208:36: note: static QMetaObject::Connection QObject::connect(const QObject*, const char*, const QObject*, const char*, Qt::ConnectionType)
            static QMetaObject::Connection connect(const QObject *sender, const char *signal,
                                           ^
       /home/qt/work/install/include/QtCore/qobject.h:208:36: note:   candidate expects 5 arguments, 3 provided
       /home/qt/work/install/include/QtCore/qobject.h:211:36: note: static QMetaObject::Connection QObject::connect(const QObject*, const QMetaMethod&, const QObject*, const QMetaMethod&, Qt::ConnectionType)
            static QMetaObject::Connection connect(const QObject *sender, const QMetaMethod &signal,
                                           ^
       /home/qt/work/install/include/QtCore/qobject.h:211:36: note:   candidate expects 5 arguments, 3 provided
       /home/qt/work/install/include/QtCore/qobject.h:463:32: note: QMetaObject::Connection QObject::connect(const QObject*, const char*, const char*, Qt::ConnectionType) const
        inline QMetaObject::Connection QObject::connect(const QObject *asender, const char *asignal,
                                       ^
       /home/qt/work/install/include/QtCore/qobject.h:463:32: note:   no known conversion for argument 2 from ‘void (QObject::*)(const QString&, QObject::QPrivateSignal)’ to ‘const char*’
       /home/qt/work/install/include/QtCore/qobject.h:228:43: note: template<class Func1, class Func2> static QMetaObject::Connection QObject::connect(const typename QtPrivate::FunctionPointer<Func>::Object*, Func1, const typename QtPrivate::FunctionPointer<Func2>::Object*, Func2, Qt::ConnectionType)
            static inline QMetaObject::Connection connect(const typename QtPrivate::FunctionPointer<Func1>::Object *sender, Func1 signal,
                                                  ^
       /home/qt/work/install/include/QtCore/qobject.h:228:43: note:   template argument deduction/substitution failed:
       tst_qqmlnotifier.cpp:352:83: note:   mismatched types ‘const typename QtPrivate::FunctionPointer<Func>::Object*’ and ‘QPointer<QObject>’
                QObject::connect(mess, &QObject::objectNameChanged, [&]() { delete mess; });
                                                                                          ^
       In file included from /home/qt/work/install/include/QtCore/qvariant.h:51:0,
                        from /home/qt/work/install/include/QtCore/qmetaobject.h:45,
                        from /home/qt/work/install/include/QtTest/qtestcase.h:48,
                        from /home/qt/work/install/include/QtTest/qtest.h:45,
                        from tst_qqmlnotifier.cpp:28:
       /home/qt/work/install/include/QtCore/qobject.h:260:13: note: template<class Func1, class Func2> static typename std::enable_if<((int)(QtPrivate::FunctionPointer<Func2>::ArgumentCount) >= 0), QMetaObject::Connection>::type QObject::connect(const typename QtPrivate::FunctionPointer<Func>::Object*, Func1, Func2)
                    connect(const typename QtPrivate::FunctionPointer<Func1>::Object *sender, Func1 signal, Func2 slot)
                    ^
       /home/qt/work/install/include/QtCore/qobject.h:260:13: note:   template argument deduction/substitution failed:
       tst_qqmlnotifier.cpp:352:83: note:   mismatched types ‘const typename QtPrivate::FunctionPointer<Func>::Object*’ and ‘QPointer<QObject>’
                QObject::connect(mess, &QObject::objectNameChanged, [&]() { delete mess; });
                                                                                          ^
       In file included from /home/qt/work/install/include/QtCore/qvariant.h:51:0,
                        from /home/qt/work/install/include/QtCore/qmetaobject.h:45,
                        from /home/qt/work/install/include/QtTest/qtestcase.h:48,
                        from /home/qt/work/install/include/QtTest/qtest.h:45,
                        from tst_qqmlnotifier.cpp:28:
       /home/qt/work/install/include/QtCore/qobject.h:269:13: note: template<class Func1, class Func2> static typename std::enable_if<(((int)(QtPrivate::FunctionPointer<Func2>::ArgumentCount) >= 0) && (! QtPrivate::FunctionPointer<Func2>::IsPointerToMemberFunction)), QMetaObject::Connection>::type QObject::connect(const typename QtPrivate::FunctionPointer<Func>::Object*, Func1, const QObject*, Func2, Qt::ConnectionType)
                    connect(const typename QtPrivate::FunctionPointer<Func1>::Object *sender, Func1 signal, const QObject *context, Func2 slot,
                    ^
       /home/qt/work/install/include/QtCore/qobject.h:269:13: note:   template argument deduction/substitution failed:
       tst_qqmlnotifier.cpp:352:83: note:   mismatched types ‘const typename QtPrivate::FunctionPointer<Func>::Object*’ and ‘QPointer<QObject>’
                QObject::connect(mess, &QObject::objectNameChanged, [&]() { delete mess; });
                                                                                          ^
       In file included from /home/qt/work/install/include/QtCore/qvariant.h:51:0,
                        from /home/qt/work/install/include/QtCore/qmetaobject.h:45,
                        from /home/qt/work/install/include/QtTest/qtestcase.h:48,
                        from /home/qt/work/install/include/QtTest/qtest.h:45,
                        from tst_qqmlnotifier.cpp:28:
       /home/qt/work/install/include/QtCore/qobject.h:300:13: note: template<class Func1, class Func2> static typename std::enable_if<(QtPrivate::FunctionPointer<Func2>::ArgumentCount == (-1)), QMetaObject::Connection>::type QObject::connect(const typename QtPrivate::FunctionPointer<Func>::Object*, Func1, Func2)
                    connect(const typename QtPrivate::FunctionPointer<Func1>::Object *sender, Func1 signal, Func2 slot)
                    ^
       /home/qt/work/install/include/QtCore/qobject.h:300:13: note:   template argument deduction/substitution failed:
       tst_qqmlnotifier.cpp:352:83: note:   mismatched types ‘const typename QtPrivate::FunctionPointer<Func>::Object*’ and ‘QPointer<QObject>’
                QObject::connect(mess, &QObject::objectNameChanged, [&]() { delete mess; });
                                                                                          ^
       In file included from /home/qt/work/install/include/QtCore/qvariant.h:51:0,
                        from /home/qt/work/install/include/QtCore/qmetaobject.h:45,
                        from /home/qt/work/install/include/QtTest/qtestcase.h:48,
                        from /home/qt/work/install/include/QtTest/qtest.h:45,
                        from tst_qqmlnotifier.cpp:28:
       /home/qt/work/install/include/QtCore/qobject.h:308:13: note: template<class Func1, class Func2> static typename std::enable_if<(QtPrivate::FunctionPointer<Func2>::ArgumentCount == (-1)), QMetaObject::Connection>::type QObject::connect(const typename QtPrivate::FunctionPointer<Func>::Object*, Func1, const QObject*, Func2, Qt::ConnectionType)
                    connect(const typename QtPrivate::FunctionPointer<Func1>::Object *sender, Func1 signal, const QObject *context, Func2 slot,
                    ^
       /home/qt/work/install/include/QtCore/qobject.h:308:13: note:   template argument deduction/substitution failed:
       tst_qqmlnotifier.cpp:352:83: note:   mismatched types ‘const typename QtPrivate::FunctionPointer<Func>::Object*’ and ‘QPointer<QObject>’
                QObject::connect(mess, &QObject::objectNameChanged, [&]() { delete mess; });
                                                                                          ^
      

      Attachments

        Issue Links

          Activity

            People

              ulherman Ulf Hermann
              tosaraja Tony Sarajärvi
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: