mingw支持clr安全吗?

时间:2017-12-17 07:30:49

标签: c++ windows mingw clr type-safety

我想要compile C++ extensions to SQL Server来自文档

  

安全模式:运行可验证的类型安全代码;使用/clr:safe.

编译

mingw的C ++是否编译支持/clr:safe

1 个答案:

答案 0 :(得分:2)

Microsoft .NET框架的公共语言运行时(CLR)没有 应用于非Microsoft,非.NET编译器。几个Windows端口 可以用“mingw”表示的Bus mastering needed for RTL8139都是非.NET的本机编译器。微软的 托管的C ++ - 类似语言,C ++ / CLI,/clr:safe适用,不是C ++。

/clr:safe指示Microsoft编译器生成包含的输出文件 没有本机代码,只有可验证的类型安全的Microsoft中间语言代码 使用CLR管理执行。根据定义,本机编译器无法提供 一个等价的选项:生成本机代码就是他们所做的。

如果您所追求的是如何使用GCC可以进行的最严格的诊断来编译C ++ 提供,一个勤奋的答案将是非常长的,因为有太多 诊断角落安全案例的选择定居至少:

-Wall -Wextra -pedantic

(见GCC) 并且可能会因为苦涩的兴奋和偏执狂的增加而增加名单;)

除常规静态诊断外,还有另一级别的hygeine可用 通过3.8 Options to Request or Suppress Warnings的大型-fsanitize=...系列。