It's a diverging function in the sense of the manual: http://static.rust-lang.org/doc/master/rust.html#diverging-functions

On 01/29/2014 11:21 AM, Gábor Lehel wrote:
On Wed, Jan 29, 2014 at 10:19 AM, Pierre Talbot <[email protected] <mailto:[email protected]>> wrote:

    I add: a pure function can call extern code and diverges, so the
    pure requirements are a subset of the CTFE requirements.


How do you plan to enforce that a function won't diverge?

Are there any systems which allow calling functions and enforce convergence without using dependent types?

(We could probably enforce it by prohibiting both mutual and self-recursion as well as loops, but I'm guessing this would be too restrictive to be acceptable.)


    Pierre

    _______________________________________________
    Rust-dev mailing list
    [email protected] <mailto:[email protected]>
    https://mail.mozilla.org/listinfo/rust-dev



_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to