about summary refs log tree commit diff
diff options
context:
space:
mode:
authorBastian Kauschke <bastian_kauschke@hotmail.de>2020-05-31 09:58:28 +0200
committerBastian Kauschke <bastian_kauschke@hotmail.de>2020-05-31 10:01:45 +0200
commit04417636945004b91de8e3f32ee10e80585d05ec (patch)
tree94bad15b4a85b0c76affcbef5ad43e2447e48cc2
parent0e9e4083100aa3ebf09b8f1ace0348cb37475eb9 (diff)
downloadrust-04417636945004b91de8e3f32ee10e80585d05ec.tar.gz
rust-04417636945004b91de8e3f32ee10e80585d05ec.zip
remove fixme for `stalled_on`
-rw-r--r--src/librustc_trait_selection/traits/fulfill.rs7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/librustc_trait_selection/traits/fulfill.rs b/src/librustc_trait_selection/traits/fulfill.rs
index 252c84fba87..c1d9b0a2d88 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<TyOrConstInferVar<'tcx>>,
 }