@@ -17,8 +17,6 @@ use rustc::ty::{self, TyCtxt};
1717use rustc_ast:: ast;
1818use rustc_ast:: attr;
1919use rustc_ast:: expand:: allocator:: AllocatorKind ;
20- use rustc_ast:: ptr:: P ;
21- use rustc_ast:: tokenstream:: DelimSpan ;
2220use rustc_data_structures:: svh:: Svh ;
2321use rustc_hir as hir;
2422use rustc_hir:: def_id:: { CrateNum , DefId , DefIdMap , CRATE_DEF_INDEX , LOCAL_CRATE } ;
@@ -415,34 +413,28 @@ impl CStore {
415413 }
416414
417415 let span = data. get_span ( id. index , sess) ;
418- let dspan = DelimSpan :: from_single ( span) ;
419- let rmeta:: MacroDef { body, legacy } = data. get_macro ( id. index , sess) ;
420416
421417 // Mark the attrs as used
422418 let attrs = data. get_item_attrs ( id. index , sess) ;
423419 for attr in attrs. iter ( ) {
424420 attr:: mark_used ( attr) ;
425421 }
426422
427- let name = data
423+ let ident = data
428424 . def_key ( id. index )
429425 . disambiguated_data
430426 . data
431427 . get_opt_name ( )
428+ . map ( ast:: Ident :: with_dummy_span) // FIXME: cross-crate hygiene
432429 . expect ( "no name in load_macro" ) ;
433- sess. imported_macro_spans . borrow_mut ( ) . insert ( span, ( name. to_string ( ) , span) ) ;
434430
435431 LoadedMacro :: MacroDef (
436432 ast:: Item {
437- // FIXME: cross-crate hygiene
438- ident : ast:: Ident :: with_dummy_span ( name) ,
433+ ident,
439434 id : ast:: DUMMY_NODE_ID ,
440435 span,
441436 attrs : attrs. iter ( ) . cloned ( ) . collect ( ) ,
442- kind : ast:: ItemKind :: MacroDef ( ast:: MacroDef {
443- body : P ( ast:: MacArgs :: Delimited ( dspan, ast:: MacDelimiter :: Brace , body) ) ,
444- legacy,
445- } ) ,
437+ kind : ast:: ItemKind :: MacroDef ( data. get_macro ( id. index , sess) ) ,
446438 vis : source_map:: respan ( span. shrink_to_lo ( ) , ast:: VisibilityKind :: Inherited ) ,
447439 tokens : None ,
448440 } ,
0 commit comments