https://bugs.kde.org/show_bug.cgi?id=433517

            Bug ID: 433517
           Summary: Missing #include <array> with Clang+libc++
           Product: ksysguard
           Version: 5.21.1
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: ksysguard
          Assignee: ksysguard-b...@kde.org
          Reporter: w12101...@outlook.com
                CC: plasma-b...@kde.org
  Target Milestone: ---

SUMMARY

ksysguard failed to compile with clang + libc++:

STEPS TO REPRODUCE
1. CC=clang CXX=clang++ CXXFLAGS=-stdlib=libc++
2. compile ksysguard
3. got compiling error

OBSERVED RESULT

FAILED:
plugins/global/network/CMakeFiles/ksysguard_globalplugin_network.dir/RtNetlinkBackend.cpp.o
/usr/lib/ccache/bin/clang++ -DKCOREADDONS_LIB -DQT_CORE_LIB -DQT_DBUS_LIB
-DQT_GUI_LIB -DQT_NO_DEBUG -DQT_NO_URL_CAST_FROM_STRING -DQT_USE_QSTRINGBUILDER
-DTRANSLATION_DOMAIN=\"ksysguard_plugins_global\" -D_LARGEFILE64_SOURCE
-Dksysguard_globalplugin_network_EXPORTS -Iplugins/global/network
-I/tmp/portage/kde-plasma/ksysguard-5.21.1/work/ksysguard-5.21.1/plugins/global/network
-Iplugins/global/network/ksysguard_globalplugin_network_autogen/include -I.
-Ilibkstats
-I/tmp/portage/kde-plasma/ksysguard-5.21.1/work/ksysguard-5.21.1/libkstats
-I/usr/include/libnl3 -isystem /usr/include/qt5 -isystem
/usr/include/qt5/QtCore -isystem /usr/lib/qt5/mkspecs/linux-clang -isystem
/usr/include/qt5/QtGui -isystem /usr/include/qt5/QtDBus -isystem
/usr/include/ksysguard -isystem /usr/include/KF5/KCoreAddons -isystem
/usr/include/KF5 -isystem /usr/include/KF5/KI18n  -DQT_NO_DEBUG -march=skylake
-mtune=skylake -O3 -pipe -falign-functions=32 -fomit-frame-pointer
-ffunction-sections -fdata-sections -flto=thin -stdlib=libc++
-fno-operator-names -fno-exceptions -Wno-gnu-zero-variadic-macro-arguments
-Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long
-Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual
-Werror=return-type -Wvla -Wdate-time -fdiagnostics-color=always -fPIC
-fvisibility=hidden -fvisibility-inlines-hidden -fPIC -std=gnu++14 -MD -MT
plugins/global/network/CMakeFiles/ksysguard_globalplugin_network.dir/RtNetlinkBackend.cpp.o
-MF
plugins/global/network/CMakeFiles/ksysguard_globalplugin_network.dir/RtNetlinkBackend.cpp.o.d
-o
plugins/global/network/CMakeFiles/ksysguard_globalplugin_network.dir/RtNetlinkBackend.cpp.o
-c
/tmp/portage/kde-plasma/ksysguard-5.21.1/work/ksysguard-5.21.1/plugins/global/network/RtNetlinkBackend.cpp
../ksysguard-5.21.1/plugins/global/network/RtNetlinkBackend.cpp:33:36: error:
implicit instantiation of undefined template 'std::array<SensorProperty *, 4>'
    std::array<SensorProperty*, 4> statisticSensors {m_downloadSensor,
m_totalDownloadSensor, m_uploadSensor, m_totalUploadSensor};
                                   ^
/usr/include/c++/v1/__tuple:219:64: note: template is declared here
template <class _Tp, size_t _Size> struct _LIBCPP_TEMPLATE_VIS array;
                                                               ^
1 error generated.

EXPECTED RESULT

It should compile.

A simple fix is adding `#include <array>` in
plugins/global/network/RtNetlinkBackend.cpp

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Gentoo Linux ~amd64
KDE Plasma Version: 5.21.1
KDE Frameworks Version: 5.79.0
Qt Version: 5.15.2

ADDITIONAL INFORMATION

Clang/libc++ version 12.0.0 rc1

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to