CompCert: 通过形式化验证的编译器

编译器本身是可能有 bug 的,会导致引入错误编译问题(miscompilation),这对于安全要求高、容错率低的任务是很难接受的。

我们会希望编译器生成的代码,其语义与我们所写的源代码语义完全一致,不会被编译器误编译本身所影响,本文简单了解一下通过了形式化验证的编译器 CompCert,其保证了编译的正确性和语义一致性。