> Disallows ... on the *caller* side as well?

Of course -- otherwise it would be unsafe.you could call a function
that gave you an alias to the internals of a local, and then trash
that local and keep on using the alias.

> How far out can the alias go?

I guess you mean returning through multiple functions? My current
proposed scheme would only allow that if each of the intermediate
functions (returning an alias, but not creating it themselves) could
pinpoint the root of the alias precisely (either because the
alias-returning functions they call take only one alias argument, or
because of type-based analysis) and this pinpointed root is an alias
parameter to the function. I expect this'll be workable.
_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to