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

Symbols from QDBusUtil namespace do not get marked as private

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P2: Important
    • 5.7.1
    • 5.6.1, 5.7.0
    • D-Bus
    • None
    • Debian GNU/Linux sid
    • b9a32351c8582ede87b6c63967f5c832c0622645 8ceab12814a7437a01d917c83ec28fd6e81c459e

    Description

      Symbols coming from *_p.h files should generally get the Qt_5_PRIVATE_API ELF version.

      However this does not always work. For example, in Qt 5.7.0, there are the following symbols in libQt5DBus.so.5:

      _ZN9QDBusUtil14isValidBusNameERK7QString@Qt_5
      _ZN9QDBusUtil16argumentToStringERK8QVariant@Qt_5
      _ZN9QDBusUtil16isValidBasicTypeEi@Qt_5
      _ZN9QDBusUtil16isValidErrorNameERK7QString@Qt_5
      _ZN9QDBusUtil16isValidFixedTypeEi@Qt_5
      _ZN9QDBusUtil16isValidSignatureERK7QString@Qt_5
      _ZN9QDBusUtil17isValidMemberNameERK10QStringRef@Qt_5
      _ZN9QDBusUtil17isValidObjectPathERK7QString@Qt_5
      _ZN9QDBusUtil20isValidInterfaceNameERK7QString@Qt_5
      _ZN9QDBusUtil22isValidSingleSignatureERK7QString@Qt_5
      _ZN9QDBusUtil23isValidPartOfObjectPathERK10QStringRef@Qt_5
      _ZN9QDBusUtil27isValidUniqueConnectionNameERK10QStringRef@Qt_5
      

      All these symbols are coming from src/dbus/qdbusutil_p.h, and should be marked private. They have no stable ABI: for example, between 5.6 and 5.7, signature of isValidMemberName changed, which broke qdbus from qttools.

      Attachments

        For Gerrit Dashboard: QTBUG-55897
        # Subject Branch Project Status CR V

        Activity

          People

            thiago Thiago Macieira
            mandriver Dmitry Shachnev
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes