From 04417636945004b91de8e3f32ee10e80585d05ec Mon Sep 17 00:00:00 2001 From: Bastian Kauschke Date: Sun, 31 May 2020 09:58:28 +0200 Subject: [PATCH] remove fixme for `stalled_on` --- src/librustc_trait_selection/traits/fulfill.rs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/librustc_trait_selection/traits/fulfill.rs b/src/librustc_trait_selection/traits/fulfill.rs index 252c84fba878..c1d9b0a2d88e 100644 --- a/src/librustc_trait_selection/traits/fulfill.rs +++ b/src/librustc_trait_selection/traits/fulfill.rs @@ -75,9 +75,10 @@ pub struct FulfillmentContext<'tcx> { #[derive(Clone, Debug)] pub struct PendingPredicateObligation<'tcx> { pub obligation: PredicateObligation<'tcx>, - // FIXME(eddyb) look into whether this could be a `SmallVec`. - // Judging by the comment in `process_obligation`, the 1-element case - // is common so this could be a `SmallVec<[TyOrConstInferVar<'tcx>; 1]>`. + // This is far more often read than modified, meaning that we + // should mostly optimize for reading speed, while modifying is not as relevant. + // + // For whatever reason using a boxed slice is slower than using a `Vec` here. pub stalled_on: Vec>, }