c++ - C++20 不支持 .mm 文件中的语义导入
问题描述
我已将 xcode 项目中的 C++ 语言方言设置为 c++2a。
比编译具有以下行的 .mm 文件失败
@import AppKit;
当编译器设置为 c++17 或更低版本时已通过编译。
如果将其替换为以下行并与项目构建阶段的框架链接,则它可以工作。
#import <AppKit/AppKit.h>
我的.mm
文件包含适配器 swift 头文件 (*-Swift.h),它是自动生成的并具有此 @import 指令,因此我无法使用上面的解决方法来避免它。
有没有人遇到过这样的问题?任何想法如何解决它?
更新:
Xcode 13 即将发布,内置支持 c++20 标准,也许有人有机会检查这个版本,看看问题是否解决?
Xcode 13 Beta 3 中的 Apple Clang 编译器新功能您现在可以在 Xcode 的构建设置中配置 C++20 和 GNU++20 C++ 语言方言。
解决方案
该错误已由 Apple 修复。
请下载 Xcode 13 Beta 5 或更新版本。那应该可以解决问题。
推荐阅读
- google-cloud-platform - 构建容器映像时出现 GCP 错误
- android - Xamarin.Forms 帮助优化加载时间
- c++ - CLION 不再找到 math.h
- .net - 我如何在 F# 中使用 Log4Net?
- flutter - 只减小 OutlinedButton 一个边框的宽度。扑
- visual-studio-code - Visual Studio Code 自动完成和前进光标
- github-actions - NET.Framework 项目上的 Github Action 失败
- python - 熊猫数据框在下载为 csv 后删除某些行
- yocto - 在 armstoneA9r2 上闪烁 core-image-minimal 后出现 UBIFS 错误
- r - 如何删除 plot_summs 中的变量?