diff options
| author | Patrick Walton <pcwalton@mimiga.net> | 2012-08-06 13:15:40 -0700 |
|---|---|---|
| committer | Patrick Walton <pcwalton@mimiga.net> | 2012-08-06 13:17:42 -0700 |
| commit | bff512a90facf2b0064f13737d44c716863f644d (patch) | |
| tree | 72553ae018b6ed52c06e532346b35f3608d7559d /src/libsyntax/visit.rs | |
| parent | 1e3143b34e66ca5157b03d3658d64d7c01563186 (diff) | |
| download | rust-bff512a90facf2b0064f13737d44c716863f644d.tar.gz rust-bff512a90facf2b0064f13737d44c716863f644d.zip | |
rustc: Implement functional record update for structs
Diffstat (limited to 'src/libsyntax/visit.rs')
| -rw-r--r-- | src/libsyntax/visit.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libsyntax/visit.rs b/src/libsyntax/visit.rs index 8d80f9663a3..1c92f26cabe 100644 --- a/src/libsyntax/visit.rs +++ b/src/libsyntax/visit.rs @@ -364,9 +364,10 @@ fn visit_expr<E>(ex: @expr, e: E, v: vt<E>) { for flds.each |f| { v.visit_expr(f.node.expr, e, v); } visit_expr_opt(base, e, v); } - expr_struct(p, flds) => { + expr_struct(p, flds, base) => { visit_path(p, e, v); for flds.each |f| { v.visit_expr(f.node.expr, e, v); } + visit_expr_opt(base, e, v); } expr_tup(elts) => for elts.each |el| { v.visit_expr(el, e, v); } expr_call(callee, args, _) => { |
