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

Example not compiling due 'include/QtCore/qmetatype.h:766:23: error: invalid application of ‘sizeof’ to incomplete type ‘QSctpSocket’'

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P2: Important
    • Resolution: Invalid
    • Affects Version/s: 6.0.0 Alpha
    • Fix Version/s: 6.0.0 RC
    • Component/s: Build System: CMake
    • Labels:
    • Environment:
      Tested on Ubuntu 20.04 x64

      Description

      Example not compiling:

      Examples/Qt-6.0.0/network/multistreamserver

      Build fails with:

      In file included from /home/qt/RTA/qt5/6.0.0/gcc_64/include/QtCore/qobject.h:54,
                       from /home/qt/RTA/qt5/6.0.0/gcc_64/include/QtCore/qabstractanimation.h:43,
                       from /home/qt/RTA/qt5/6.0.0/gcc_64/include/QtCore/QtCore:6,
                       from /home/qt/RTA/qt5/6.0.0/gcc_64/include/QtWidgets/QtWidgetsDepends:3,
                       from /home/qt/RTA/qt5/6.0.0/gcc_64/include/QtWidgets/QtWidgets:3,
                       from /home/qt/RTA/qt5/Examples/Qt-6.0.0/network/multistreamserver/server.cpp:51:
      /home/qt/RTA/qt5/6.0.0/gcc_64/include/QtCore/qmetatype.h: In instantiation of ‘struct QtPrivate::IsPointerToTypeDerivedFromQObject<QSctpSocket*>’:
      /home/qt/RTA/qt5/6.0.0/gcc_64/include/QtCore/qmetatype.h:1017:60:   required from ‘struct QMetaTypeId<QSctpSocket*>’
      /home/qt/RTA/qt5/6.0.0/gcc_64/include/QtCore/qmetatype.h:1037:10:   required from ‘struct QMetaTypeId2<QSctpSocket*>’
      /home/qt/RTA/qt5/6.0.0/gcc_64/include/QtCore/qobject_impl.h:68:49:   required from ‘struct QtPrivate::TypesAreDeclaredMetaType<QtPrivate::List<QSctpSocket*, const QByteArray&> >’
      /home/qt/RTA/qt5/6.0.0/gcc_64/include/QtCore/qobject.h:233:86:   required from ‘static QMetaObject::Connection QObject::connect(const typename QtPrivate::FunctionPointer<Func>::Object*, Func1, const typename QtPrivate::FunctionPointer<Func2>::Object*, Func2, Qt::ConnectionType) [with Func1 = void (Provider::*)(QSctpSocket*, const QByteArray&); Func2 = void (Server::*)(QSctpSocket*, const QByteArray&); typename QtPrivate::FunctionPointer<Func>::Object = Provider; typename QtPrivate::FunctionPointer<Func2>::Object = Server]’
      /home/qt/RTA/qt5/Examples/Qt-6.0.0/network/multistreamserver/server.cpp:80:99:   required from here
      /home/qt/RTA/qt5/6.0.0/gcc_64/include/QtCore/qmetatype.h:766:23: error: invalid application of ‘sizeof’ to incomplete type ‘QSctpSocket’
        766 |         static_assert(sizeof(T), "Type argument of Q_DECLARE_METATYPE(T*) must be fully defined");
            |                       ^~~~~~~~~
      make[2]: *** [CMakeFiles/multistreamserver.dir/build.make:134: CMakeFiles/multistreamserver.dir/server.cpp.o] Error 1
      make[1]: *** [CMakeFiles/Makefile2:96: CMakeFiles/multistreamserver.dir/all] Error 2
      make: *** [Makefile:149: all] Error 
      

      SHA1: ca02358af27b458739cba29086ff6ad19196d431

        Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

            Assignee:
            alexandru.croitor Alexandru Croitor
            Reporter:
            joaijala Johanna Äijälä
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes