Details
-
Bug
-
Resolution: Fixed
-
Not Evaluated
-
None
-
Qt Creator 4.10.0-beta1
-
None
Description
While trying to build qt creator from git, I've got the following error:
g++ -c -pipe -Wno-noexcept-type -Wno-unused-parameter -std=c++0x -fuse-ld=gold -fvisibility-inlines-hidden -std=c++11 -ffunction-sections -fdata-sections -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -O2 -std=gnu++1y -Wall -W -Wl,--no-keep-files-mapped -Wl,--no-map-whole-files -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -Wno-long-long -Wno-maybe-uninitialized -Wdelete-non-virtual-dtor -Wno-comment -D_REENTRANT -fPIC -D'RELATIVE_PLUGIN_PATH="../lib/qtcreator/plugins"' -D'RELATIVE_LIBEXEC_PATH="../libexec/qtcreator"' -D'RELATIVE_DATA_PATH="../share/qtcreator"' -D'RELATIVE_DOC_PATH="../share/doc/qtcreator"' -DIDE_LIBRARY_BASENAME=\"lib\" -DQT_CREATOR -DQT_NO_CAST_TO_ASCII -DQT_RESTRICTED_CAST_FROM_ASCII -DQT_DISABLE_DEPRECATED_BEFORE=0x050900 -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION -DQT_NO_DEBUG -DQT_CONCURRENT_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I../../../src -I../../../../qt-creator/src -I../../../../qt-creator/src/libs -I/home/olga/qt-creator/tools -I../../../../qt-creator/src/plugins -I../../../../qt-creator/src/libs -I../../../../qt-creator/src/libs/3rdparty -I../../../../qt-creator/src/libs/clangsupport -I../../../../qt-creator/src/libs/sqlite -I../../../../qt-creator/src/tools/clangrefactoringbackend/source -I/usr/lib/llvm-7/include -I../../../../qt-creator/src/tools/clangpchmanagerbackend/source -I/opt/qt511/include -I/opt/qt511/include/QtConcurrent -I/opt/qt511/include/QtWidgets -I/opt/qt511/include/QtGui -I/opt/qt511/include/QtNetwork -I/opt/qt511/include/QtCore -I.moc/release-shared -isystem /usr/include/libdrm -I/opt/qt511/mkspecs/linux-g++ -o .obj/release-shared/clangtool.o ../../../../qt-creator/src/tools/clangrefactoringbackend/source/clangtool.cpp In file included from ../../../../qt-creator/src/tools/clangrefactoringbackend/source/symbolindexing.h:34:0, from ../../../../qt-creator/src/tools/clangrefactoringbackend/source/refactoringserver.cpp:30: ../../../../qt-creator/src/tools/clangpchmanagerbackend/source/taskscheduler.h: In instantiation of ‘ClangBackEnd::TaskScheduler<ProcessorManager, Task>::addTasks(std::vector<Task>&&)::<lambda(auto:15)> [with auto:15 = std::reference_wrapper<ClangBackEnd::SymbolsCollector>; ProcessorManager = ClangBackEnd::SymbolsCollectorManager; Task = std::function<void(ClangBackEnd::SymbolsCollectorInterface&)>; ClangBackEnd::TaskScheduler<ProcessorManager, Task>::ProcessorInterface = ClangBackEnd::SymbolsCollector]’: /usr/include/c++/7/bits/invoke.h:60:36: required from ‘constexpr _Res std::__invoke_impl(std::__invoke_other, _Fn&&, _Args&& ...) [with _Res = ClangBackEnd::SymbolsCollector&; _Fn = ClangBackEnd::TaskScheduler<ProcessorManager, Task>::addTasks(std::vector<Task>&&) [with ProcessorManager = ClangBackEnd::SymbolsCollectorManager; Task = std::function<void(ClangBackEnd::SymbolsCollectorInterface&)>]::<lambda(auto:15)>; _Args = {std::reference_wrapper<ClangBackEnd::SymbolsCollector>}]’ /usr/include/c++/7/bits/invoke.h:95:40: required from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = ClangBackEnd::TaskScheduler<ProcessorManager, Task>::addTasks(std::vector<Task>&&) [with ProcessorManager = ClangBackEnd::SymbolsCollectorManager; Task = std::function<void(ClangBackEnd::SymbolsCollectorInterface&)>]::<lambda(auto:15)>; _Args = {std::reference_wrapper<ClangBackEnd::SymbolsCollector>}; typename std::__invoke_result<_Functor, _ArgTypes>::type = ClangBackEnd::SymbolsCollector&]’ /usr/include/c++/7/thread:232:35: required from ‘decltype (std::__invoke((_S_declval<_Ind>)()...)) std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0, 1}; _Tuple = std::tuple<ClangBackEnd::TaskScheduler<ProcessorManager, Task>::addTasks(std::vector<Task>&&) [with ProcessorManager = ClangBackEnd::SymbolsCollectorManager; Task = std::function<void(ClangBackEnd::SymbolsCollectorInterface&)>]::<lambda(auto:15)>, std::reference_wrapper<ClangBackEnd::SymbolsCollector> >; decltype (std::__invoke((_S_declval<_Ind>)()...)) = <type error>]’ /usr/include/c++/7/thread:240:2: required from ‘struct std::thread::_Invoker<std::tuple<ClangBackEnd::TaskScheduler<ProcessorManager, Task>::addTasks(std::vector<Task>&&) [with ProcessorManager = ClangBackEnd::SymbolsCollectorManager; Task = std::function<void(ClangBackEnd::SymbolsCollectorInterface&)>]::<lambda(auto:15)>, std::reference_wrapper<ClangBackEnd::SymbolsCollector> > >’ /usr/include/c++/7/future:1720:32: required from ‘std::future<typename std::result_of<typename std::decay<_Tp>::type(typename std::decay<_Args>::type ...)>::type> std::async(std::launch, _Fn&&, _Args&& ...) [with _Fn = ClangBackEnd::TaskScheduler<ProcessorManager, Task>::addTasks(std::vector<Task>&&) [with ProcessorManager = ClangBackEnd::SymbolsCollectorManager; Task = std::function<void(ClangBackEnd::SymbolsCollectorInterface&)>]::<lambda(auto:15)>; _Args = {std::reference_wrapper<ClangBackEnd::SymbolsCollector>}; typename std::result_of<typename std::decay<_Tp>::type(typename std::decay<_Args>::type ...)>::type = ClangBackEnd::SymbolsCollector&]’ ../../../../qt-creator/src/tools/clangpchmanagerbackend/source/taskscheduler.h:98:46: required from ‘void ClangBackEnd::TaskScheduler<ProcessorManager, Task>::addTasks(std::vector<Task>&&) [with ProcessorManager = ClangBackEnd::SymbolsCollectorManager; Task = std::function<void(ClangBackEnd::SymbolsCollectorInterface&)>]’ ../../../../qt-creator/src/tools/clangrefactoringbackend/source/refactoringserver.cpp:181:1: required from here ../../../../qt-creator/src/tools/clangpchmanagerbackend/source/taskscheduler.h:94:23: error: ‘class ClangBackEnd::TaskScheduler<ClangBackEnd::SymbolsCollectorManager, std::function<void(ClangBackEnd::SymbolsCollectorInterface&)> >’ has no member named ‘executeInLoop’ this->executeInLoop([&] { m_queue.processEntries(); }); ~~~~~~^~~~~~~~~~~~~ In file included from /usr/lib/llvm-7/include/clang/ASTMatchers/ASTMatchers.h:50:0, from ../../../../qt-creator/src/tools/clangrefactoringbackend/source/clangquery.cpp:37: /usr/lib/llvm-7/include/clang/AST/Attr.h: In static member function ‘static clang::ParamIdx clang::ParamIdx::deserialize(clang::ParamIdx::SerialType)’: /usr/lib/llvm-7/include/clang/AST/Attr.h:249:48: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] ParamIdx P(*reinterpret_cast<ParamIdx *>(&S)); ^ /usr/lib/llvm-7/include/clang/AST/Attr.h:249:49: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] ParamIdx P(*reinterpret_cast<ParamIdx *>(&S)); ^ Makefile:2041: recipe for target '.obj/release-shared/refactoringserver.o' failed make: *** [.obj/release-shared/refactoringserver.o] Error 1 make: *** Waiting for unfinished jobs....
The commit I've tried to build is https://github.com/qt-creator/qt-creator/commit/7b39db9e8a0e36ad59eae0a7dea776d4205032a8. It seems that this line https://github.com/qt-creator/qt-creator/blob/master/src/tools/clangpchmanagerbackend/source/taskscheduler.h#L94 raises a compilation error. Checking out to the release https://github.com/qt-creator/qt-creator/releases/tag/v4.8.2 fixed the issue.