about summary refs log tree commit diff
diff options
context:
space:
mode:
authorNiko Matsakis <niko@alum.mit.edu>2017-04-03 16:14:05 -0400
committerNiko Matsakis <niko@alum.mit.edu>2017-04-11 20:32:47 -0400
commit77d9e38e9499df1dac393937d62d3bf626c51abb (patch)
treebb4041d98068f9add3c93dcb9b55dff611527927
parentd1033d06bae530881415bda6972c5c8a16d07ade (diff)
downloadrust-77d9e38e9499df1dac393937d62d3bf626c51abb.tar.gz
rust-77d9e38e9499df1dac393937d62d3bf626c51abb.zip
add FIXME for bivariant lub/glb
-rw-r--r--src/librustc/infer/glb.rs1
-rw-r--r--src/librustc/infer/lub.rs1
2 files changed, 2 insertions, 0 deletions
diff --git a/src/librustc/infer/glb.rs b/src/librustc/infer/glb.rs
index 8c167e0a8ac..a6dd18c113f 100644
--- a/src/librustc/infer/glb.rs
+++ b/src/librustc/infer/glb.rs
@@ -49,6 +49,7 @@ impl<'combine, 'infcx, 'gcx, 'tcx> TypeRelation<'infcx, 'gcx, 'tcx>
         match variance {
             ty::Invariant => self.fields.equate(self.a_is_expected).relate(a, b),
             ty::Covariant => self.relate(a, b),
+            // FIXME(#41044) -- not correct, need test
             ty::Bivariant => Ok(a.clone()),
             ty::Contravariant => self.fields.lub(self.a_is_expected).relate(a, b),
         }
diff --git a/src/librustc/infer/lub.rs b/src/librustc/infer/lub.rs
index 28ae1ae556b..d7e5c92b6e1 100644
--- a/src/librustc/infer/lub.rs
+++ b/src/librustc/infer/lub.rs
@@ -49,6 +49,7 @@ impl<'combine, 'infcx, 'gcx, 'tcx> TypeRelation<'infcx, 'gcx, 'tcx>
         match variance {
             ty::Invariant => self.fields.equate(self.a_is_expected).relate(a, b),
             ty::Covariant => self.relate(a, b),
+            // FIXME(#41044) -- not correct, need test
             ty::Bivariant => Ok(a.clone()),
             ty::Contravariant => self.fields.glb(self.a_is_expected).relate(a, b),
         }