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

qRegisterMetaType() 5.5 issue

    XMLWordPrintable

Details

    • Bug
    • Resolution: Invalid
    • P2: Important
    • None
    • 5.5.1, 5.6.0 Beta
    • None

    Description

      If qRegisterMetaType() call is used in application code then building with Qt 5.5.1 leads to unresolved external:
      undefined symbol: _ZN9QMetaType22registerNormalizedTypeERK10QByteArrayPFvPvEPFS3_S3_PKvEi6QFlagsINS_8TypeFlagEEPK11QMetaObject

      when running with Qt 5.4 shared libraries (backward binary compatibility is lost across 5.x version).

      The problem is in qRegisterNormalizedMetaType() function from qmetatype.h. That function using invalid version of QMetaType::registerNormalizedType() - new version from 5.5 instead of 5.4 compatible version (it's looks like compatible version was specialy introduced in 5.5, but not used).

      So to reproduce that bug you have to:
      1. Create application with qRegisterMetaType() call
      2. Build it with Qt 5.5.1
      3. Run it on system with Qt 5.4 installed only.

      Attachments

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

        Activity

          People

            thiago Thiago Macieira
            avdovichenko Anton
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes