From 2cc61eebb7f1677af2a20f76fb1411ed40f6901b Mon Sep 17 00:00:00 2001 From: Jeffrey Seyfried Date: Thu, 2 Feb 2017 07:01:15 +0000 Subject: Allow using inert attributes from `proc_macro_derive`s with `#![feature(proc_macro)]`. --- src/libsyntax_ext/deriving/custom.rs | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'src/libsyntax_ext') diff --git a/src/libsyntax_ext/deriving/custom.rs b/src/libsyntax_ext/deriving/custom.rs index 974e86a5741..a7e2d82bb97 100644 --- a/src/libsyntax_ext/deriving/custom.rs +++ b/src/libsyntax_ext/deriving/custom.rs @@ -107,12 +107,10 @@ impl MultiItemModifier for ProcMacroDerive { } }); - let mut res = vec![Annotatable::Item(item)]; // Reassign spans of all expanded items to the input `item` // for better errors here. - res.extend(new_items.into_iter().flat_map(|item| { - ChangeSpan { span: span }.fold_item(item) - }).map(Annotatable::Item)); - res + new_items.into_iter().map(|item| { + Annotatable::Item(ChangeSpan { span: span }.fold_item(item).expect_one("")) + }).collect() } } -- cgit 1.4.1-3-g733a5