0

有没有办法让 GCC 的预处理器在发现 #error 时停止,当使用 option 运行它时-E

例如,在以下程序中:

#error 在这里停止
int main() {
  返回0;
}

在此程序上运行gcc会导致第 1 行的编译中断,但运行gcc -E会输出同一行,然后继续进行预处理。

注意:我的问题类似于GCC #pragma to stop compilation,但是关于-E标志,所以也许两者都应该合并?

4

1 回答 1

1

最简洁的答案是不。处理器指令(例如 #error )用于向编译器发出命令。通过使用 -E 选项,编译器永远不会运行,因此它没有理由停止。-E 标志旨在打印所有与您的程序一起编译的代码,而无需实际编译。

于 2013-03-26T17:37:16.303 回答