@@ -5,7 +5,7 @@ use rustc::middle::cstore::{LinkagePreference, NativeLibrary,
55 EncodedMetadata , ForeignModule } ;
66use rustc:: hir:: def:: CtorKind ;
77use rustc:: hir:: def_id:: { CrateNum , CRATE_DEF_INDEX , DefIndex , DefId , LocalDefId , LOCAL_CRATE } ;
8- use rustc:: hir:: GenericParamKind ;
8+ use rustc:: hir:: { GenericParamKind , AnonConst } ;
99use rustc:: hir:: map:: definitions:: DefPathTable ;
1010use rustc_data_structures:: fingerprint:: Fingerprint ;
1111use rustc_index:: vec:: IndexVec ;
@@ -1711,6 +1711,11 @@ impl Visitor<'tcx> for EncodeContext<'tcx> {
17111711 intravisit:: walk_expr ( self , ex) ;
17121712 self . encode_info_for_expr ( ex) ;
17131713 }
1714+ fn visit_anon_const ( & mut self , c : & ' tcx AnonConst ) {
1715+ intravisit:: walk_anon_const ( self , c) ;
1716+ let def_id = self . tcx . hir ( ) . local_def_id ( c. hir_id ) ;
1717+ self . record ( def_id, EncodeContext :: encode_info_for_anon_const, def_id) ;
1718+ }
17141719 fn visit_item ( & mut self , item : & ' tcx hir:: Item ) {
17151720 intravisit:: walk_item ( self , item) ;
17161721 let def_id = self . tcx . hir ( ) . local_def_id ( item. hir_id ) ;
@@ -1728,25 +1733,10 @@ impl Visitor<'tcx> for EncodeContext<'tcx> {
17281733 EncodeContext :: encode_info_for_foreign_item,
17291734 ( def_id, ni) ) ;
17301735 }
1731- fn visit_variant ( & mut self ,
1732- v : & ' tcx hir:: Variant ,
1733- g : & ' tcx hir:: Generics ,
1734- id : hir:: HirId ) {
1735- intravisit:: walk_variant ( self , v, g, id) ;
1736-
1737- if let Some ( ref discr) = v. disr_expr {
1738- let def_id = self . tcx . hir ( ) . local_def_id ( discr. hir_id ) ;
1739- self . record ( def_id, EncodeContext :: encode_info_for_anon_const, def_id) ;
1740- }
1741- }
17421736 fn visit_generics ( & mut self , generics : & ' tcx hir:: Generics ) {
17431737 intravisit:: walk_generics ( self , generics) ;
17441738 self . encode_info_for_generics ( generics) ;
17451739 }
1746- fn visit_ty ( & mut self , ty : & ' tcx hir:: Ty ) {
1747- intravisit:: walk_ty ( self , ty) ;
1748- self . encode_info_for_ty ( ty) ;
1749- }
17501740 fn visit_macro_def ( & mut self , macro_def : & ' tcx hir:: MacroDef ) {
17511741 let def_id = self . tcx . hir ( ) . local_def_id ( macro_def. hir_id ) ;
17521742 self . record ( def_id, EncodeContext :: encode_info_for_macro_def, macro_def) ;
@@ -1784,16 +1774,6 @@ impl EncodeContext<'tcx> {
17841774 }
17851775 }
17861776
1787- fn encode_info_for_ty ( & mut self , ty : & hir:: Ty ) {
1788- match ty. kind {
1789- hir:: TyKind :: Array ( _, ref length) => {
1790- let def_id = self . tcx . hir ( ) . local_def_id ( length. hir_id ) ;
1791- self . record ( def_id, EncodeContext :: encode_info_for_anon_const, def_id) ;
1792- }
1793- _ => { }
1794- }
1795- }
1796-
17971777 fn encode_info_for_expr ( & mut self , expr : & hir:: Expr ) {
17981778 match expr. kind {
17991779 hir:: ExprKind :: Closure ( ..) => {
0 commit comments