test/run-pass/out-of-stack: prevent tco

We really do *not* want TCO to kick in. If it does, we'll never blow the
stack, and never trigger the condition the test is checking for. To that end,
do a meaningless alloc that serves only to get a destructor to run. The
addition of nocapture/noalias seems to have let LLVM do more TCO, which
hurt this testcase.
This commit is contained in:
Corey Richardson 2014-03-27 07:54:41 -04:00
parent b8ed13686a
commit 5258e13d0b

View File

@ -28,6 +28,7 @@ fn silent_recurse() {
fn loud_recurse() {
println!("hello!");
loud_recurse();
black_box(()); // don't optimize this into a tail call. please.
}
fn main() {