diff options
Diffstat (limited to 'crates/ra_hir')
-rw-r--r-- | crates/ra_hir/src/code_model.rs | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/crates/ra_hir/src/code_model.rs b/crates/ra_hir/src/code_model.rs index a379b9f49..27e94b7fe 100644 --- a/crates/ra_hir/src/code_model.rs +++ b/crates/ra_hir/src/code_model.rs | |||
@@ -26,8 +26,10 @@ use hir_ty::{ | |||
26 | autoderef, | 26 | autoderef, |
27 | display::{HirDisplayError, HirFormatter}, | 27 | display::{HirDisplayError, HirFormatter}, |
28 | expr::ExprValidator, | 28 | expr::ExprValidator, |
29 | method_resolution, ApplicationTy, Canonical, GenericPredicate, InEnvironment, Substs, | 29 | method_resolution, |
30 | TraitEnvironment, Ty, TyDefId, TypeCtor, | 30 | unsafe_validation::UnsafeValidator, |
31 | ApplicationTy, Canonical, GenericPredicate, InEnvironment, Substs, TraitEnvironment, Ty, | ||
32 | TyDefId, TypeCtor, | ||
31 | }; | 33 | }; |
32 | use ra_db::{CrateId, CrateName, Edition, FileId}; | 34 | use ra_db::{CrateId, CrateName, Edition, FileId}; |
33 | use ra_prof::profile; | 35 | use ra_prof::profile; |
@@ -677,7 +679,9 @@ impl Function { | |||
677 | let _p = profile("Function::diagnostics"); | 679 | let _p = profile("Function::diagnostics"); |
678 | let infer = db.infer(self.id.into()); | 680 | let infer = db.infer(self.id.into()); |
679 | infer.add_diagnostics(db, self.id, sink); | 681 | infer.add_diagnostics(db, self.id, sink); |
680 | let mut validator = ExprValidator::new(self.id, infer, sink); | 682 | let mut validator = ExprValidator::new(self.id, infer.clone(), sink); |
683 | validator.validate_body(db); | ||
684 | let mut validator = UnsafeValidator::new(self.id, infer, sink); | ||
681 | validator.validate_body(db); | 685 | validator.validate_body(db); |
682 | } | 686 | } |
683 | } | 687 | } |