@@ -219,7 +219,7 @@ impl Attribute {
219219    /// Extracts the MetaItem from inside this Attribute. 
220220pub  fn  meta ( & self )  -> Option < MetaItem >  { 
221221        match  & self . kind  { 
222-             AttrKind :: Normal ( normal)  => normal. item . meta ( self . span ) , 
222+             AttrKind :: Normal ( normal)  => normal. item . meta ( ) , 
223223            AttrKind :: DocComment ( ..)  => None , 
224224        } 
225225    } 
@@ -285,12 +285,12 @@ impl AttrItem {
285285        } 
286286    } 
287287
288-     pub  fn  meta ( & self ,   span :   Span )  -> Option < MetaItem >  { 
288+     pub  fn  meta ( & self )  -> Option < MetaItem >  { 
289289        Some ( MetaItem  { 
290290            unsafety :  Safety :: Default , 
291291            path :  self . path . clone ( ) , 
292292            kind :  self . meta_kind ( ) ?, 
293-             span, 
293+             span :   self . span ( ) , 
294294        } ) 
295295    } 
296296
@@ -406,7 +406,7 @@ impl MetaItem {
406406                Path  {  span,  segments,  tokens :  None  } 
407407            } 
408408            Some ( TokenTree :: Token ( Token  {  kind :  token:: Interpolated ( nt) ,  .. } ,  _) )  => match  & * * nt { 
409-                 token:: Nonterminal :: NtMeta ( item)  => return  item. meta ( item . path . span ) , 
409+                 token:: Nonterminal :: NtMeta ( item)  => return  item. meta ( ) , 
410410                token:: Nonterminal :: NtPath ( path)  => ( * * path) . clone ( ) , 
411411                _ => return  None , 
412412            } , 
@@ -620,8 +620,15 @@ pub fn mk_attr(
620620    path :  Path , 
621621    args :  AttrArgs , 
622622    span :  Span , 
623+     inner_span :  Span , 
623624)  -> Attribute  { 
624-     mk_attr_from_item ( g,  AttrItem  {  unsafety,  path,  args,  tokens :  None  } ,  None ,  style,  span) 
625+     mk_attr_from_item ( 
626+         g, 
627+         AttrItem  {  unsafety,  path,  args,  tokens :  None ,  span :  inner_span } , 
628+         None , 
629+         style, 
630+         span, 
631+     ) 
625632} 
626633
627634pub  fn  mk_attr_from_item ( 
@@ -645,10 +652,11 @@ pub fn mk_attr_word(
645652    unsafety :  Safety , 
646653    name :  Symbol , 
647654    span :  Span , 
655+     inner_span :  Span , 
648656)  -> Attribute  { 
649657    let  path = Path :: from_ident ( Ident :: new ( name,  span) ) ; 
650658    let  args = AttrArgs :: Empty ; 
651-     mk_attr ( g,  style,  unsafety,  path,  args,  span) 
659+     mk_attr ( g,  style,  unsafety,  path,  args,  span,  inner_span ) 
652660} 
653661
654662pub  fn  mk_attr_nested_word ( 
@@ -658,6 +666,7 @@ pub fn mk_attr_nested_word(
658666    outer :  Symbol , 
659667    inner :  Symbol , 
660668    span :  Span , 
669+     inner_span :  Span , 
661670)  -> Attribute  { 
662671    let  inner_tokens = TokenStream :: new ( vec ! [ TokenTree :: Token ( 
663672        Token :: from_ast_ident( Ident :: new( inner,  span) ) , 
@@ -670,7 +679,7 @@ pub fn mk_attr_nested_word(
670679        delim :  Delimiter :: Parenthesis , 
671680        tokens :  inner_tokens, 
672681    } ) ; 
673-     mk_attr ( g,  style,  unsafety,  path,  attr_args,  span) 
682+     mk_attr ( g,  style,  unsafety,  path,  attr_args,  span,  inner_span ) 
674683} 
675684
676685pub  fn  mk_attr_name_value_str ( 
@@ -680,6 +689,7 @@ pub fn mk_attr_name_value_str(
680689    name :  Symbol , 
681690    val :  Symbol , 
682691    span :  Span , 
692+     inner_span :  Span , 
683693)  -> Attribute  { 
684694    let  lit = token:: Lit :: new ( token:: Str ,  escape_string_symbol ( val) ,  None ) ; 
685695    let  expr = P ( Expr  { 
@@ -691,7 +701,7 @@ pub fn mk_attr_name_value_str(
691701    } ) ; 
692702    let  path = Path :: from_ident ( Ident :: new ( name,  span) ) ; 
693703    let  args = AttrArgs :: Eq  {  eq_span :  span,  expr } ; 
694-     mk_attr ( g,  style,  unsafety,  path,  args,  span) 
704+     mk_attr ( g,  style,  unsafety,  path,  args,  span,  inner_span ) 
695705} 
696706
697707pub  fn  filter_by_name < A :  AttributeExt > ( attrs :  & [ A ] ,  name :  Symbol )  -> impl  Iterator < Item  = & A >  { 
0 commit comments