summaryrefslogtreecommitdiffstats
path: root/src/test/ui/lub-glb/empty-binder-future-compat.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/lub-glb/empty-binder-future-compat.rs')
-rw-r--r--src/test/ui/lub-glb/empty-binder-future-compat.rs22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/test/ui/lub-glb/empty-binder-future-compat.rs b/src/test/ui/lub-glb/empty-binder-future-compat.rs
new file mode 100644
index 000000000..8700a88a3
--- /dev/null
+++ b/src/test/ui/lub-glb/empty-binder-future-compat.rs
@@ -0,0 +1,22 @@
+// check-pass
+fn lt_in_fn_fn<'a: 'a>() -> fn(fn(&'a ())) {
+ |_| ()
+}
+
+
+fn foo<'a, 'b, 'lower>(v: bool)
+where
+ 'a: 'lower,
+ 'b: 'lower,
+{
+ // if we infer `x` to be higher ranked in the future,
+ // this would cause a type error.
+ let x = match v {
+ true => lt_in_fn_fn::<'a>(),
+ false => lt_in_fn_fn::<'b>(),
+ };
+
+ let _: fn(fn(&'lower())) = x;
+}
+
+fn main() {}