On 11-08-01 10:18 AM, Marijn Haverbeke wrote: > Ah, I see what you mean now. But this kind of rewriting requires > knowledge of the tail-called function (which may be in another module, > or passed in by value), and a bunch of extra complexity. It doesn't > really have the elegance of classical tail calls.
I think we had decide to only allow tail calls inside a crate. In part because of limitations on which calls llvm guarantees are tail. But I would vote for dropping tail calls. Even if we do them inside crates only, there is still a mismatch with rust where "tail" is a property of the call only and llvm where the callee must know it is can be tailcalled. Cheers, Rafael _______________________________________________ Rust-dev mailing list Rust-dev@mozilla.org https://mail.mozilla.org/listinfo/rust-dev