File tree Expand file tree Collapse file tree 1 file changed +4
-3
lines changed
src/librustc_trait_selection/traits Expand file tree Collapse file tree 1 file changed +4
-3
lines changed Original file line number Diff line number Diff line change @@ -75,9 +75,10 @@ pub struct FulfillmentContext<'tcx> {
7575#[ derive( Clone , Debug ) ]
7676pub struct PendingPredicateObligation < ' tcx > {
7777 pub obligation : PredicateObligation < ' tcx > ,
78- // FIXME(eddyb) look into whether this could be a `SmallVec`.
79- // Judging by the comment in `process_obligation`, the 1-element case
80- // is common so this could be a `SmallVec<[TyOrConstInferVar<'tcx>; 1]>`.
78+ // This is far more often read than modified, meaning that we
79+ // should mostly optimize for reading speed, while modifying is not as relevant.
80+ //
81+ // For whatever reason using a boxed slice is slower than using a `Vec` here.
8182 pub stalled_on : Vec < TyOrConstInferVar < ' tcx > > ,
8283}
8384
You can’t perform that action at this time.
0 commit comments