Details
Description
Hi
I have a C++20 cmake project which uses boost.
Boost in its headers uses something like
#if (__cplusplus >= 201709) && (__cpp_impl_coroutine >= 201902) // something c++20 here #endif
No matter what I do in my CMakeLists.txt the analyzer doesn't come inside of this macro block.
Currently I have something like following in the CMakeLists.txt
cmake_minimum_required(VERSION 3.20)
project(Demo)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED True)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++20")
add_executable(demo main.cpp)
set_property(TARGET demo PROPERTY CXX_STANDARD 20)
target_compile_features(demo PUBLIC cxx_std_20)
The project compiles fine, but analyzer shows errors because it doesn't understand c++20.
No problem with C++17 though.
Attachments
Issue Links
- duplicates
-
QTCREATORBUG-24634 support code completion for coroutines in clang code model + gcc compiler
-
- Closed
-