summaryrefslogtreecommitdiffstats
path: root/src/test/ui/nll/issue-51351.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/nll/issue-51351.rs')
-rw-r--r--src/test/ui/nll/issue-51351.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/test/ui/nll/issue-51351.rs b/src/test/ui/nll/issue-51351.rs
new file mode 100644
index 000000000..591d49584
--- /dev/null
+++ b/src/test/ui/nll/issue-51351.rs
@@ -0,0 +1,21 @@
+//
+// Regression test for #51351 and #52133: In the case of #51351,
+// late-bound regions (like 'a) that were unused within the arguments of
+// a function were overlooked and could case an ICE. In the case of #52133,
+// LBR defined on the creator function needed to be added to the free regions
+// of the closure, as they were not present in the closure's generic
+// declarations otherwise.
+//
+// check-pass
+
+fn creash<'a>() {
+ let x: &'a () = &();
+}
+
+fn produce<'a>() {
+ move || {
+ let x: &'a () = &();
+ };
+}
+
+fn main() {}