Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-ty/src/variance.rs')
-rw-r--r--crates/hir-ty/src/variance.rs7
1 files changed, 4 insertions, 3 deletions
diff --git a/crates/hir-ty/src/variance.rs b/crates/hir-ty/src/variance.rs
index bfb9a3f77e..5b8122a0a5 100644
--- a/crates/hir-ty/src/variance.rs
+++ b/crates/hir-ty/src/variance.rs
@@ -48,10 +48,11 @@ fn variances_of_query(db: &dyn HirDatabase, def: GenericDefId) -> StoredVariance
GenericDefId::AdtId(adt) => {
if let AdtId::StructId(id) = adt {
let flags = &db.struct_signature(id).flags;
+ let types = || crate::next_solver::default_types(db);
if flags.contains(StructFlags::IS_UNSAFE_CELL) {
- return VariancesOf::new_from_iter(interner, [Variance::Invariant]).store();
+ return types().one_invariant.store();
} else if flags.contains(StructFlags::IS_PHANTOM_DATA) {
- return VariancesOf::new_from_iter(interner, [Variance::Covariant]).store();
+ return types().one_covariant.store();
}
}
}
@@ -81,7 +82,7 @@ fn variances_of_query(db: &dyn HirDatabase, def: GenericDefId) -> StoredVariance
}
}
- VariancesOf::new_from_iter(interner, variances).store()
+ VariancesOf::new_from_slice(&variances).store()
}
// pub(crate) fn variances_of_cycle_fn(