@@ -104,8 +104,6 @@ enum ResolutionError<'a> {
104
104
IsNotATrait ( & ' a str ) ,
105
105
/// error E0405: use of undeclared trait name
106
106
UndeclaredTraitName ( & ' a str , SuggestedCandidates ) ,
107
- /// error E0406: undeclared associated type
108
- UndeclaredAssociatedType ,
109
107
/// error E0407: method is not a member of trait
110
108
MethodNotMemberOfTrait ( Name , & ' a str ) ,
111
109
/// error E0437: type is not a member of trait
@@ -229,9 +227,6 @@ fn resolve_struct_error<'b, 'a: 'b, 'c>(resolver: &'b Resolver<'a>,
229
227
err. span_label ( span, & format ! ( "`{}` is not in scope" , name) ) ;
230
228
err
231
229
}
232
- ResolutionError :: UndeclaredAssociatedType => {
233
- struct_span_err ! ( resolver. session, span, E0406 , "undeclared associated type" )
234
- }
235
230
ResolutionError :: MethodNotMemberOfTrait ( method, trait_) => {
236
231
struct_span_err ! ( resolver. session,
237
232
span,
@@ -519,9 +514,6 @@ impl<'a, 'v> Visitor<'v> for Resolver<'a> {
519
514
fn visit_ty ( & mut self , ty : & Ty ) {
520
515
self . resolve_type ( ty) ;
521
516
}
522
- fn visit_generics ( & mut self , generics : & Generics ) {
523
- self . resolve_generics ( generics) ;
524
- }
525
517
fn visit_poly_trait_ref ( & mut self , tref : & ast:: PolyTraitRef , m : & ast:: TraitBoundModifier ) {
526
518
match self . resolve_trait_reference ( tref. trait_ref . ref_id , & tref. trait_ref . path , 0 ) {
527
519
Ok ( def) => self . record_def ( tref. trait_ref . ref_id , def) ,
@@ -1850,30 +1842,6 @@ impl<'a> Resolver<'a> {
1850
1842
} )
1851
1843
}
1852
1844
1853
- fn resolve_generics ( & mut self , generics : & Generics ) {
1854
- for predicate in & generics. where_clause . predicates {
1855
- match predicate {
1856
- & ast:: WherePredicate :: BoundPredicate ( _) |
1857
- & ast:: WherePredicate :: RegionPredicate ( _) => { }
1858
- & ast:: WherePredicate :: EqPredicate ( ref eq_pred) => {
1859
- self . resolve_path ( eq_pred. id , & eq_pred. path , 0 , TypeNS ) . and_then ( |path_res| {
1860
- if let PathResolution { base_def : Def :: TyParam ( ..) , .. } = path_res {
1861
- Ok ( self . record_def ( eq_pred. id , path_res) )
1862
- } else {
1863
- Err ( false )
1864
- }
1865
- } ) . map_err ( |error_reported| {
1866
- self . record_def ( eq_pred. id , err_path_resolution ( ) ) ;
1867
- if error_reported { return }
1868
- let error_variant = ResolutionError :: UndeclaredAssociatedType ;
1869
- resolve_error ( self , eq_pred. span , error_variant) ;
1870
- } ) . unwrap_or ( ( ) ) ;
1871
- }
1872
- }
1873
- }
1874
- visit:: walk_generics ( self , generics) ;
1875
- }
1876
-
1877
1845
fn with_current_self_type < T , F > ( & mut self , self_type : & Ty , f : F ) -> T
1878
1846
where F : FnOnce ( & mut Resolver ) -> T
1879
1847
{
0 commit comments