diff options
| author | Marijn Haverbeke <marijnh@gmail.com> | 2012-01-09 11:32:18 +0100 |
|---|---|---|
| committer | Marijn Haverbeke <marijnh@gmail.com> | 2012-01-09 11:32:18 +0100 |
| commit | 9fa749167680a2d4de9fa07cbb2c8336deb7d42f (patch) | |
| tree | 392aa6a798ac25e7d05ff6dd2682139c16950efc /src/comp | |
| parent | 26536e69151d5f8e083d8165421039b409c93ee3 (diff) | |
| download | rust-9fa749167680a2d4de9fa07cbb2c8336deb7d42f.tar.gz rust-9fa749167680a2d4de9fa07cbb2c8336deb7d42f.zip | |
Don't resolve upvars in fn() { ... } exprs
Closes #1467
Diffstat (limited to 'src/comp')
| -rw-r--r-- | src/comp/middle/resolve.rs | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/comp/middle/resolve.rs b/src/comp/middle/resolve.rs index 24c8b2e204e..664b2418d63 100644 --- a/src/comp/middle/resolve.rs +++ b/src/comp/middle/resolve.rs @@ -486,12 +486,9 @@ fn visit_fn_with_scope(e: @env, fk: visit::fn_kind, decl: ast::fn_decl, for c: @ast::constr in decl.constraints { resolve_constr(e, c, sc, v); } let scope = alt fk { visit::fk_item_fn(_, tps) | visit::fk_res(_, tps) | - visit::fk_method(_, tps) { - scope_bare_fn(decl, id, tps) - } - visit::fk_anon(_) | visit::fk_fn_block. { - scope_fn_expr(decl, id, []) - } + visit::fk_method(_, tps) { scope_bare_fn(decl, id, tps) } + visit::fk_anon(ast::proto_bare.) { scope_bare_fn(decl, id, []) } + visit::fk_anon(_) | visit::fk_fn_block. { scope_fn_expr(decl, id, []) } }; visit::visit_fn(fk, decl, body, sp, id, cons(scope, @sc), v); |
