@@ -249,6 +249,7 @@ pub enum MacroDefKind {
249249 BuiltInAttr ( AstId < ast:: Macro > , BuiltinAttrExpander ) ,
250250 BuiltInDerive ( AstId < ast:: Macro > , BuiltinDeriveExpander ) ,
251251 BuiltInEager ( AstId < ast:: Macro > , EagerExpander ) ,
252+ UnimplementedBuiltIn ( AstId < ast:: Macro > ) ,
252253 ProcMacro ( AstId < ast:: Fn > , CustomProcMacroExpander , ProcMacroKind ) ,
253254}
254255
@@ -265,7 +266,8 @@ impl MacroDefKind {
265266 | MacroDefKind :: BuiltInAttr ( id, _)
266267 | MacroDefKind :: BuiltInDerive ( id, _)
267268 | MacroDefKind :: BuiltInEager ( id, _)
268- | MacroDefKind :: Declarative ( id, ..) => id. erase ( ) ,
269+ | MacroDefKind :: Declarative ( id, ..)
270+ | MacroDefKind :: UnimplementedBuiltIn ( id) => id. erase ( ) ,
269271 }
270272 }
271273}
@@ -500,6 +502,7 @@ impl MacroCallId {
500502 MacroDefKind :: ProcMacro ( _, _, ProcMacroKind :: Attr ) => MacroKind :: Attr ,
501503 MacroDefKind :: ProcMacro ( _, _, ProcMacroKind :: Bang ) => MacroKind :: ProcMacro ,
502504 MacroDefKind :: BuiltInAttr ( ..) => MacroKind :: AttrBuiltIn ,
505+ MacroDefKind :: UnimplementedBuiltIn ( ..) => MacroKind :: Declarative ,
503506 }
504507 }
505508
@@ -551,7 +554,8 @@ impl MacroDefId {
551554 | MacroDefKind :: BuiltIn ( id, _)
552555 | MacroDefKind :: BuiltInAttr ( id, _)
553556 | MacroDefKind :: BuiltInDerive ( id, _)
554- | MacroDefKind :: BuiltInEager ( id, _) => {
557+ | MacroDefKind :: BuiltInEager ( id, _)
558+ | MacroDefKind :: UnimplementedBuiltIn ( id) => {
555559 id. with_value ( db. ast_id_map ( id. file_id ) . get ( id. value ) . text_range ( ) )
556560 }
557561 MacroDefKind :: ProcMacro ( id, _, _) => {
@@ -567,7 +571,8 @@ impl MacroDefId {
567571 | MacroDefKind :: BuiltIn ( id, _)
568572 | MacroDefKind :: BuiltInAttr ( id, _)
569573 | MacroDefKind :: BuiltInDerive ( id, _)
570- | MacroDefKind :: BuiltInEager ( id, _) => Either :: Left ( id) ,
574+ | MacroDefKind :: BuiltInEager ( id, _)
575+ | MacroDefKind :: UnimplementedBuiltIn ( id) => Either :: Left ( id) ,
571576 }
572577 }
573578
@@ -577,9 +582,9 @@ impl MacroDefId {
577582
578583 pub fn is_attribute ( & self ) -> bool {
579584 match self . kind {
580- MacroDefKind :: BuiltInAttr ( ..) | MacroDefKind :: ProcMacro ( _ , _ , ProcMacroKind :: Attr ) => {
581- true
582- }
585+ MacroDefKind :: BuiltInAttr ( ..)
586+ | MacroDefKind :: ProcMacro ( _ , _ , ProcMacroKind :: Attr )
587+ | MacroDefKind :: UnimplementedBuiltIn ( _ ) => true ,
583588 MacroDefKind :: Declarative ( _, styles) => styles. contains ( MacroCallStyles :: ATTR ) ,
584589 _ => false ,
585590 }
@@ -588,7 +593,8 @@ impl MacroDefId {
588593 pub fn is_derive ( & self ) -> bool {
589594 match self . kind {
590595 MacroDefKind :: BuiltInDerive ( ..)
591- | MacroDefKind :: ProcMacro ( _, _, ProcMacroKind :: CustomDerive ) => true ,
596+ | MacroDefKind :: ProcMacro ( _, _, ProcMacroKind :: CustomDerive )
597+ | MacroDefKind :: UnimplementedBuiltIn ( _) => true ,
592598 MacroDefKind :: Declarative ( _, styles) => styles. contains ( MacroCallStyles :: DERIVE ) ,
593599 _ => false ,
594600 }
@@ -601,6 +607,7 @@ impl MacroDefId {
601607 | MacroDefKind :: ProcMacro ( _, _, ProcMacroKind :: Bang )
602608 | MacroDefKind :: BuiltInEager ( ..)
603609 | MacroDefKind :: Declarative ( ..)
610+ | MacroDefKind :: UnimplementedBuiltIn ( _)
604611 )
605612 }
606613
0 commit comments