clang 3.5中不支持-finline-functions?

Car*_*iro 9 c++ inline clang c++11

我正在使用他们分发的clang 3.5.我正在使用以下命令行在我的travis vm中安装它:

sudo apt-add-repository 'deb http://llvm.org/apt/precise/ llvm-toolchain-precise-3.5 main'
sudo apt-add-repository 'deb http://llvm.org/apt/precise/ llvm-toolchain-precise-3.5 main'
Run Code Online (Sandbox Code Playgroud)

当我在启用优化的情况下运行我的测试版本时,我收到此错误:

clang: error: optimization flag '-finline-functions' is not supported
  "clang++" -c -x c++ -std=c++1y -Werror -O3 -finline-functions -Wno-inline -Wall -Werror -pthread -fPIC -std=c++1y -DBOOST_ALL_DYN_LINK -DNDEBUG -I"." -I"gamgee" -I"lib/htslib" -o "test/bin/run.test/clang-linux-3.5.0/release/threading-multi/sam_builder_test.o" "test/sam_builder_test.cpp"
Run Code Online (Sandbox Code Playgroud)

我在我的mac上运行较旧的3.4版本的clang时没有得到相同的错误.

clang是否削减了对3.5中的-finline-functions的支持?这是关于这个包构建的具体内容吗?如何用clang-3.5 +替换-finline-functions选项来优化构建?

Bil*_*nch 13

见本提交:http://llvm.org/klaus/clang/commit/6590426aeb5275ec33dac2877f9349bbbb2d4b2e/#0-L-571

以前,该标志被忽略,用户未收到通知.现在通知用户它被忽略.你不应该看到有或没有那个标志的代码生成有任何区别.

它应该只是一个警告,但你已经将它升级为错误-Werror.