diff options
| author | Huon Wilson <dbau.pp+github@gmail.com> | 2014-03-03 18:41:47 +1100 |
|---|---|---|
| committer | Huon Wilson <dbau.pp+github@gmail.com> | 2014-03-03 22:48:42 +1100 |
| commit | c3b904704031047ef9e1f7906d3faee15778ffe5 (patch) | |
| tree | c5effad359313654e966bdac21a1b6767010c94f /src/libsyntax/ext | |
| parent | 3f3425a5550e7d8b58d782425b09eab20b91c1c0 (diff) | |
| download | rust-c3b904704031047ef9e1f7906d3faee15778ffe5.tar.gz rust-c3b904704031047ef9e1f7906d3faee15778ffe5.zip | |
syntax: make match arms store the expr directly.
Previously `ast::Arm` was always storing a single `ast::Expr` wrapped in an `ast::Block` (for historical reasons, AIUI), so we might as just store that expr directly. Closes #3085.
Diffstat (limited to 'src/libsyntax/ext')
| -rw-r--r-- | src/libsyntax/ext/build.rs | 2 | ||||
| -rw-r--r-- | src/libsyntax/ext/deriving/primitive.rs | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/libsyntax/ext/build.rs b/src/libsyntax/ext/build.rs index 34625923ea1..8296ee34c54 100644 --- a/src/libsyntax/ext/build.rs +++ b/src/libsyntax/ext/build.rs @@ -679,7 +679,7 @@ impl<'a> AstBuilder for ExtCtxt<'a> { ast::Arm { pats: pats, guard: None, - body: self.block_expr(expr) + body: expr } } diff --git a/src/libsyntax/ext/deriving/primitive.rs b/src/libsyntax/ext/deriving/primitive.rs index ecd042eb172..190f009103f 100644 --- a/src/libsyntax/ext/deriving/primitive.rs +++ b/src/libsyntax/ext/deriving/primitive.rs @@ -110,7 +110,7 @@ fn cs_from(name: &str, cx: &mut ExtCtxt, trait_span: Span, substr: &Substructure let arm = ast::Arm { pats: vec!(cx.pat_wild(span)), guard: Some(guard), - body: cx.block_expr(body), + body: body, }; arms.push(arm); @@ -129,7 +129,7 @@ fn cs_from(name: &str, cx: &mut ExtCtxt, trait_span: Span, substr: &Substructure let arm = ast::Arm { pats: vec!(cx.pat_wild(trait_span)), guard: None, - body: cx.block_expr(cx.expr_none(trait_span)), + body: cx.expr_none(trait_span), }; arms.push(arm); |
