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

qtconnectivity: Build failure on Linux when using clang++/libc++

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • 5.6.2, 5.7.1
    • 5.7.0 RC
    • None
    • Linux x86_64, clang++ / libc++ version 3.9.0 (trunk 268575), qt-5.7.0-rc snapshot 20160518 (downloaded from qt snapshots directory)

    Description

      When building qtconnectivity 5.7.0-rc (snapshot described below), I get the following failure:

      clang++ -c -Xclang -include-pch -Xclang .pch/Qt5Bluetooth/c++.pch -march=skylake -g -O2 -pipe -O2 -std=c++1y -fvisibility=hidden -fvisibility-inlines-hidden -fno-exceptions -Wall -W -Wdate-time -D_REENTRANT -fPIC -DQT_NO_TSLIB -DQT_BLUEZ_BLUETOOTH -DCONFIG_LINUX_CRYPTO_API -DQT_BUILD_BLUETOOTH_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_DBUS_LIB -DQT_CORE_LIB -DQT_CONCURRENT_LIB -DQT_CORE_LIB -I. -I../../include -I../../include/QtBluetooth -I../../include/QtBluetooth/5.7.0 -I../../include/QtBluetooth/5.7.0/QtBluetooth -isystem /usr/include/qt5/QtCore/5.7.0 -isystem /usr/include/qt5/QtCore/5.7.0/QtCore -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtDBus -isystem /usr/include/qt5/QtCore -isystem /usr/include/qt5/QtConcurrent -I.moc -I/usr/lib/qt5/mkspecs/linux-clang-libc++ -o .obj/lecmaccalculator.o lecmaccalculator.cpp
      lecmaccalculator.cpp:75:74: error: invalid operands to binary expression ('__bind<int &, sockaddr *, unsigned long>' and 'int')
          if (bind(m_baseSocket, reinterpret_cast<sockaddr *>(&sa), sizeof sa) == -1) {
              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^  ~~
      /usr/include/qt5/QtCore/qchar.h:573:30: note: candidate function not viable: no known conversion from '__bind<int &, sockaddr *, unsigned long>' to 'QChar' for 1st argument
      Q_DECL_CONSTEXPR inline bool operator==(QChar c1, QChar c2) Q_DECL_NOTHROW { return c1.ucs == c2.ucs; }
      

      I have built Qt with clang++ svn (version described in the Environment section) using libc++ as the C++ ABI library. qtconnectivity 5.6.0 had no such issues.

      Attachments

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

        Activity

          People

            ablasche Alex Blasche
            krejzi Armin K.
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes