about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorYuki Okushi <huyuumi.dev@gmail.com>2019-07-26 17:39:58 +0900
committerYuki Okushi <huyuumi.dev@gmail.com>2019-07-26 17:39:58 +0900
commit328447279d8247dcf3341fb1ed58fc39ba871ae3 (patch)
tree46387b26df60b1e23966ea5bcc42c71b28133cb0 /src
parenteedf6ce4ef54bb03818ab21d714f1b9f13a6b31c (diff)
Add test for issue-54062
Diffstat (limited to 'src')
-rw-r--r--src/test/ui/issues/issue-54062.rs13
-rw-r--r--src/test/ui/issues/issue-54062.stderr16
2 files changed, 29 insertions, 0 deletions
diff --git a/src/test/ui/issues/issue-54062.rs b/src/test/ui/issues/issue-54062.rs
new file mode 100644
index 00000000000..495b7343f20
--- /dev/null
+++ b/src/test/ui/issues/issue-54062.rs
@@ -0,0 +1,13 @@
+use std::sync::Mutex;
+
+struct Test {
+    comps: Mutex<String>,
+}
+
+fn main() {}
+
+fn testing(test: Test) {
+    let _ = test.comps.inner.lock().unwrap();
+    //~^ ERROR: field `inner` of struct `std::sync::Mutex` is private
+    //~| ERROR: no method named `unwrap` found
+}
diff --git a/src/test/ui/issues/issue-54062.stderr b/src/test/ui/issues/issue-54062.stderr
new file mode 100644
index 00000000000..082ac91edb1
--- /dev/null
+++ b/src/test/ui/issues/issue-54062.stderr
@@ -0,0 +1,16 @@
+error[E0616]: field `inner` of struct `std::sync::Mutex` is private
+  --> $DIR/issue-54062.rs:10:13
+   |
+LL |     let _ = test.comps.inner.lock().unwrap();
+   |             ^^^^^^^^^^^^^^^^
+
+error[E0599]: no method named `unwrap` found for type `std::sys_common::mutex::MutexGuard<'_>` in the current scope
+  --> $DIR/issue-54062.rs:10:37
+   |
+LL |     let _ = test.comps.inner.lock().unwrap();
+   |                                     ^^^^^^
+
+error: aborting due to 2 previous errors
+
+Some errors have detailed explanations: E0599, E0616.
+For more information about an error, try `rustc --explain E0599`.