Update 2017-05-17. I no longer work for the company where this question originated, and do not have

我有许多使用CMake构建的项目,我希望能够轻松地在使用GCC或Clang/LLVM之间切换来编译它们。我相信(如果我弄错了请纠正我!)使用Clang我需要设置以下:是否有一种简单的方法在这些和默认的

我一直听说LLVM。它是Perl的,然后是Haskell的,然后有人在其他语言中使用它?是什么?它与GCC(透视图=安全等)的确切区别是什么?

我知道c++中的“未定义行为”几乎可以让编译器做任何它想做的事情。然而,当我以为代码足够安全时,我却遇到了意外的崩溃。在这种情况下,真正的问题只发生在使用特定编译器的特定平台上,而且只有启用了优化。为