94d4dcdbf0
It would fail to start out with a fresh scope when going over a loop or block function for the second time, and thus not recognize last uses of locals defined inside the block. Closes #1818
17 lines
274 B
Rust
17 lines
274 B
Rust
// Issue #1818
|
|
|
|
fn loop<T>(s: str, f: fn(str) -> T) -> T {
|
|
while false {
|
|
let r = f(s);
|
|
ret r;
|
|
}
|
|
fail;
|
|
}
|
|
|
|
fn apply<T>(s: str, f: fn(str) -> T) -> T {
|
|
fn g<T>(s: str, f: fn(str) -> T) -> T {f(s)}
|
|
g(s) {|v| let r = f(v); r }
|
|
}
|
|
|
|
fn main() {}
|