inner_parse_policy, self.token
);
let lo = self.token.span;
- let ((item, style, span), tokens) = self.collect_tokens(|this| {
+ self.collect_tokens(|this| {
if this.eat(&token::Pound) {
let style = if this.eat(&token::Not) {
ast::AttrStyle::Inner
this.error_on_forbidden_inner_attr(attr_sp, inner_parse_policy);
}
- Ok((item, style, attr_sp))
+ Ok(attr::mk_attr_from_item(item, None, style, attr_sp))
} else {
let token_str = pprust::token_to_string(&this.token);
let msg = &format!("expected `#`, found `{}`", token_str);
Err(this.struct_span_err(this.token.span, msg))
}
- })?;
-
- Ok(attr::mk_attr_from_item(item, tokens, style, span))
+ })
}
pub(super) fn error_on_forbidden_inner_attr(&self, attr_sp: Span, policy: InnerAttrPolicy<'_>) {
let args = this.parse_attr_args()?;
Ok(ast::AttrItem { path, args, tokens: None })
};
- if capture_tokens {
- let (mut item, tokens) = self.collect_tokens(do_parse)?;
- item.tokens = tokens;
- item
- } else {
- do_parse(self)?
- }
+ if capture_tokens { self.collect_tokens(do_parse) } else { do_parse(self) }?
})
}