CLang-CL 支持 MSVC 特定和本机 CLang 特定的属性、编译指示和其他功能

问题描述

CLang-CL 安装中的 CLang 包中包含 MSVC 编译器(驱动程序),该编译器允许使用 CLang 后端编译源代码,同时接受所有(或大部分)MSVC 的-CL - 特定的命令选项,因此 clang-cl 可以用作 MSVC 的 cl 的替代品。

无意中我注意到以下代码clang-cl 中编译得很好:

inline __attribute__((always_inline)) int f(int x) { return x + 1; }
inline __forceinline int g(int x) { return x + 1; }

int main() {
    volatile int x = f(4) * g(6);
}

即混合的本地 CLang/GCC 特定 __attribute__((always_inline)) 和 MSVC 特定 __forceinline 属性同时被正确理解和应用。

您是否知道 clang-cl 是否可以接受、使用和混合所有(或大部分)特定于 MSVC 和原生 CLang/GCC 的其他属性和编译指示?

您还知道 clang-cl 对所有其他 MSVC 和原生 CLang 功能的覆盖情况如何?它是否同时涵盖了两个世界的大部分(或全部)功能

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)