diff options
Diffstat (limited to 'crates/ra_hir/src/ty.rs')
-rw-r--r-- | crates/ra_hir/src/ty.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/crates/ra_hir/src/ty.rs b/crates/ra_hir/src/ty.rs index c602450e1..e690ae158 100644 --- a/crates/ra_hir/src/ty.rs +++ b/crates/ra_hir/src/ty.rs | |||
@@ -1134,7 +1134,7 @@ impl<'a, D: HirDatabase> InferenceContext<'a, D> { | |||
1134 | 1134 | ||
1135 | self.unify(&ty, expected); | 1135 | self.unify(&ty, expected); |
1136 | 1136 | ||
1137 | let substs = ty.substs().expect("adt should have substs"); | 1137 | let substs = ty.substs().unwrap_or_else(Substs::empty); |
1138 | 1138 | ||
1139 | for (i, &subpat) in subpats.iter().enumerate() { | 1139 | for (i, &subpat) in subpats.iter().enumerate() { |
1140 | let expected_ty = fields | 1140 | let expected_ty = fields |
@@ -1155,7 +1155,7 @@ impl<'a, D: HirDatabase> InferenceContext<'a, D> { | |||
1155 | 1155 | ||
1156 | self.unify(&ty, expected); | 1156 | self.unify(&ty, expected); |
1157 | 1157 | ||
1158 | let substs = ty.substs().expect("adt should have substs"); | 1158 | let substs = ty.substs().unwrap_or_else(Substs::empty); |
1159 | 1159 | ||
1160 | for subpat in subpats { | 1160 | for subpat in subpats { |
1161 | let matching_field = fields.iter().find(|field| field.name() == &subpat.name); | 1161 | let matching_field = fields.iter().find(|field| field.name() == &subpat.name); |
@@ -1403,7 +1403,7 @@ impl<'a, D: HirDatabase> InferenceContext<'a, D> { | |||
1403 | spread, | 1403 | spread, |
1404 | } => { | 1404 | } => { |
1405 | let (ty, def_id) = self.resolve_variant(path.as_ref()); | 1405 | let (ty, def_id) = self.resolve_variant(path.as_ref()); |
1406 | let substs = ty.substs().expect("adt should have substs"); | 1406 | let substs = ty.substs().unwrap_or_else(Substs::empty); |
1407 | for field in fields { | 1407 | for field in fields { |
1408 | let field_ty = if let Some(def_id) = def_id { | 1408 | let field_ty = if let Some(def_id) = def_id { |
1409 | self.db | 1409 | self.db |