踩坑-Error C4668 : 没有将“__has_feature”定义为预处理器宏,用“0”替换“#if/#elif”

内容目录

在编译 UE 的时候,发生了如下错误。

Detected compiler newer than Visual Studio 2022, please update min version checking in WindowsPlatformCompilerSetup.h
10>ConcurrentLinearAllocator.h(31): Error C4668 : 没有将“__has_feature”定义为预处理器宏,用“0”替换“#if/#elif”
10>ConcurrentLinearAllocator.h(31): Error C4067 : 预处理器指令后有意外标记 - 应输入换行符

原因是因为编译的过程中没有找到 __has_feature 宏,而这个是 MSVC 中的宏。
发现,14.36.3253214.38 均在 \VC\Tools\MSVC\14.42.34433\include\sanitizer\common_interface_defs.h 第 20 行有这个宏。
但是我的 14.42.34433 却没有这个宏:


回退到旧版本之后,这个问题解决了。

同步Sch

Recent Posts

自制UE插件 – 体素锻造 (体素生成工具集)教程

这是自己做的一个插件,可以在虚…

4 周 ago

踩坑-warning: backslash-newline at end of file

这是一条出现在 GCC 编译器…

4 月 ago

UE-Rider 无法解析 SDK 解决方案

无法解析 SDK“Micros…

5 月 ago

杂项 – 关于Ascii字符画生成相关网站

网站 如果想实现这样的注释效果…

5 月 ago