summaryrefslogtreecommitdiffstats
path: root/src/test/ui/closures/issue-82438-mut-without-upvar.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/closures/issue-82438-mut-without-upvar.rs')
-rw-r--r--src/test/ui/closures/issue-82438-mut-without-upvar.rs28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/test/ui/closures/issue-82438-mut-without-upvar.rs b/src/test/ui/closures/issue-82438-mut-without-upvar.rs
new file mode 100644
index 000000000..5d88e1e77
--- /dev/null
+++ b/src/test/ui/closures/issue-82438-mut-without-upvar.rs
@@ -0,0 +1,28 @@
+use std::error::Error;
+struct A {
+}
+
+impl A {
+ pub fn new() -> A {
+ A {
+ }
+ }
+
+ pub fn f<'a>(
+ &'a self,
+ team_name: &'a str,
+ c: &'a mut dyn FnMut(String, String, u64, u64)
+ ) -> Result<(), Box<dyn Error>> {
+ Ok(())
+ }
+}
+
+
+fn main() {
+ let A = A::new();
+ let participant_name = "A";
+
+ let c = |a, b, c, d| {};
+
+ A.f(participant_name, &mut c); //~ ERROR cannot borrow
+}