【发布时间】:2011-09-06 22:57:13
【问题描述】:
想象一下这段代码:
int foo() {
return foo();
}
编译器可以对此进行优化。我可以强制编译器为 foo 使用新的堆栈帧,而不是使用相同的堆栈帧(根据情况,因此完全禁用优化不算数)?
【问题讨论】:
-
您为什么要这样做?要耗尽堆栈?
-
你试过禁用所有优化吗?
-
@Matteo Italia 它可能会派上用场。我只是想知道 clang 和 GCC 是否提供这个。
-
@WTP - 我很想知道你觉得这在哪里有用。
-
我不得不推荐 for(;;);
标签: c gcc clang tail-recursion