gpt4 book ai didi

c++ - Xcode将简单的C++ 20代码段标记为错误,但使用最新的LLVM 10.0.0 Clang编译器正确编译

转载 作者:行者123 更新时间:2023-12-01 14:30:40 28 4
gpt4 key购买 nike

我最近阅读了一些C++ 20功能,并对玩概念特别感兴趣。我决定从git中获取最新的LLVM 10.0.0的源代码,以便我可以按照here指南进行编译,并获取最新的clang,关联的OpenMP实现以及其他一些东西。为了帮助进行Xcode开发,我还使用-DLLVM_CREATE_XCODE_TOOLCHAIN=ON构建了项目,以便生成可以在Xcode中使用的工具链输出。

构建过程进行得很顺利,它生成了所需的产品,例如clang++libomp,Xcode工具链等。在重新启动Xcode之后,我切换到了Xcode中的LLVM生成的工具链,更新了构建设置,例如C++语言为c++20,注意到了几件事。首先,以下基本示例代码可以编译并成功运行:

template <typename T>
concept always_satisfied = true;

int main(int argc, char** argv){
std::cout << "Success" << std::endl;
return 0;
}

但是,Xcode的烦人之处在于,IDE将 concept always_satisfied = true行标记为错误,如下图所示,这意味着Xcode无法识别C++ 20关键字 concept或类似的行。

Xcode not recognizing concept keyword

我该如何解决这个问题?我尝试清除该项目的 DerivedData/以查看是否有帮助,因为我已经阅读了一些问题,例如过去使用此修复程序可以解决此问题,但仍然无法解决问题。

最佳答案

Apple稳定的lang尚不支持概念
https://en.cppreference.com/w/cpp/compiler_support
更新:尽管在clang git仓库的主干中也支持。

关于c++ - Xcode将简单的C++ 20代码段标记为错误,但使用最新的LLVM 10.0.0 Clang编译器正确编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62395687/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com