【发布时间】:2017-07-07 19:41:14
【问题描述】:
是否可以使用 GCC 编译具有特定编译器标志的代码文件的一部分?例如,假设我有一些正在测试的功能。我希望这些功能严格遵守标准合规性,所以我想用 --pedantic 标志编译它们。但是进行测试的代码在编译时会发出很多警告。有没有办法用--pedantic 编译那些特定的函数?
或者,假设我有一个精心编写但极其昂贵的函数,需要尽可能快地运行。如何使用 -Ofast 编译该函数(以及其他一些函数),并使用 -O2 或 -O3 编译程序的其余部分?
【问题讨论】:
-
将这些函数放在单独的文件中并使用单独的标志构建它们 - 将是简单的解决方案。 “执行测试的代码会发出很多警告” - 所以已经修复它们 - 不要等待或找借口 - 修复编译器警告(并开始使用
-Werror构建)。
标签: c++ gcc compiler-optimization