Skip to content

Commit 8f3bb8b

Browse files
authored
Merge pull request rust-lang#19739 from Veykril/push-kpozprqnsmkk
Disable fixpoint for variance computation temporarily
2 parents 58ef378 + d6183aa commit 8f3bb8b

File tree

2 files changed

+12
-12
lines changed

2 files changed

+12
-12
lines changed

src/tools/rust-analyzer/crates/hir-ty/src/db.rs

+3-2
Original file line numberDiff line numberDiff line change
@@ -283,8 +283,9 @@ pub trait HirDatabase: DefDatabase + std::fmt::Debug {
283283

284284
#[salsa::invoke(crate::variance::variances_of)]
285285
#[salsa::cycle(
286-
cycle_fn = crate::variance::variances_of_cycle_fn,
287-
cycle_initial = crate::variance::variances_of_cycle_initial,
286+
// cycle_fn = crate::variance::variances_of_cycle_fn,
287+
// cycle_initial = crate::variance::variances_of_cycle_initial,
288+
cycle_result = crate::variance::variances_of_cycle_initial,
288289
)]
289290
fn variances_of(&self, def: GenericDefId) -> Option<Arc<[crate::variance::Variance]>>;
290291

src/tools/rust-analyzer/crates/hir-ty/src/variance.rs

+9-10
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ use crate::{
2222
use chalk_ir::Mutability;
2323
use hir_def::signatures::StructFlags;
2424
use hir_def::{AdtId, GenericDefId, GenericParamId, VariantId};
25-
use salsa::CycleRecoveryAction;
2625
use std::fmt;
2726
use std::ops::Not;
2827
use stdx::never;
@@ -55,14 +54,14 @@ pub(crate) fn variances_of(db: &dyn HirDatabase, def: GenericDefId) -> Option<Ar
5554
variances.is_empty().not().then(|| Arc::from_iter(variances))
5655
}
5756

58-
pub(crate) fn variances_of_cycle_fn(
59-
_db: &dyn HirDatabase,
60-
_result: &Option<Arc<[Variance]>>,
61-
_count: u32,
62-
_def: GenericDefId,
63-
) -> CycleRecoveryAction<Option<Arc<[Variance]>>> {
64-
CycleRecoveryAction::Iterate
65-
}
57+
// pub(crate) fn variances_of_cycle_fn(
58+
// _db: &dyn HirDatabase,
59+
// _result: &Option<Arc<[Variance]>>,
60+
// _count: u32,
61+
// _def: GenericDefId,
62+
// ) -> salsa::CycleRecoveryAction<Option<Arc<[Variance]>>> {
63+
// salsa::CycleRecoveryAction::Iterate
64+
// }
6665

6766
pub(crate) fn variances_of_cycle_initial(
6867
db: &dyn HirDatabase,
@@ -966,7 +965,7 @@ struct S3<T>(S<T, T>);
966965
struct FixedPoint<T, U, V>(&'static FixedPoint<(), T, U>, V);
967966
"#,
968967
expect![[r#"
969-
FixedPoint[T: covariant, U: covariant, V: covariant]
968+
FixedPoint[T: bivariant, U: bivariant, V: bivariant]
970969
"#]],
971970
);
972971
}

0 commit comments

Comments
 (0)