From 7972c1905beb9d1169475f42231b25d0bc9e83e6 Mon Sep 17 00:00:00 2001 From: Benjamin Saunders Date: Tue, 3 Jan 2017 19:13:01 -0800 Subject: syntax: struct field attributes and cfg --- src/libsyntax/ext/build.rs | 8 +++++++- src/libsyntax/ext/expand.rs | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) (limited to 'src/libsyntax/ext') diff --git a/src/libsyntax/ext/build.rs b/src/libsyntax/ext/build.rs index 28f0c297303..688df96ffa3 100644 --- a/src/libsyntax/ext/build.rs +++ b/src/libsyntax/ext/build.rs @@ -699,7 +699,13 @@ impl<'a> AstBuilder for ExtCtxt<'a> { self.expr(b.span, ast::ExprKind::Block(b)) } fn field_imm(&self, span: Span, name: Ident, e: P) -> ast::Field { - ast::Field { ident: respan(span, name), expr: e, span: span, is_shorthand: false } + ast::Field { + ident: respan(span, name), + expr: e, + span: span, + is_shorthand: false, + attrs: ast::ThinVec::new(), + } } fn expr_struct(&self, span: Span, path: ast::Path, fields: Vec) -> P { self.expr(span, ast::ExprKind::Struct(path, fields, None)) diff --git a/src/libsyntax/ext/expand.rs b/src/libsyntax/ext/expand.rs index 5d62175fbf2..968e7e7a919 100644 --- a/src/libsyntax/ext/expand.rs +++ b/src/libsyntax/ext/expand.rs @@ -679,6 +679,7 @@ impl<'a, 'b> Folder for InvocationCollector<'a, 'b> { } fn fold_pat(&mut self, pat: P) -> P { + let pat = self.cfg.configure_pat(pat); match pat.node { PatKind::Mac(_) => {} _ => return noop_fold_pat(pat, self), -- cgit 1.4.1-3-g733a5