about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSam Radhakrishan <sk09idm@gmail.com>2019-08-30 00:57:20 +0530
committerSam Radhakrishan <sk09idm@gmail.com>2019-08-30 00:57:20 +0530
commit378c32bc90b230d1f8feffee135942d442d2a5b7 (patch)
tree954c2ec266ec490847b0f378045d49ea08fd7cce
parentfdd8b967c180192fb74bf17f07e2fda040bb9865 (diff)
Fix test.
-rw-r--r--src/librustc_typeck/check/expr.rs9
-rw-r--r--src/test/ui/privacy/union-field-privacy-2.rs2
-rw-r--r--src/test/ui/privacy/union-field-privacy-2.stderr2
3 files changed, 8 insertions, 5 deletions
diff --git a/src/librustc_typeck/check/expr.rs b/src/librustc_typeck/check/expr.rs
index 4943270e193..a53fb12367d 100644
--- a/src/librustc_typeck/check/expr.rs
+++ b/src/librustc_typeck/check/expr.rs
@@ -1392,14 +1392,17 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
         base_did: DefId,
     ) {
         let struct_path = self.tcx().def_path_str(base_did);
+        let kind_name = match self.tcx().def_kind(base_did) {
+            Some(def_kind) => def_kind.descr(base_did),
+            _ => " ",
+        };
         let mut err = struct_span_err!(
             self.tcx().sess,
             expr.span,
             E0616,
-            "field `{}` of `{}` `{}` is private",
+            "field `{}` of {} `{}` is private",
             field,
-            if let Some(def_kind) = self.tcx().def_kind(base_did){ def_kind.descr(base_did) }
-            else { " " },
+            kind_name,
             struct_path
         );
         // Also check if an accessible method exists, which is often what is meant.
diff --git a/src/test/ui/privacy/union-field-privacy-2.rs b/src/test/ui/privacy/union-field-privacy-2.rs
index 48279630c63..c2458f74bc8 100644
--- a/src/test/ui/privacy/union-field-privacy-2.rs
+++ b/src/test/ui/privacy/union-field-privacy-2.rs
@@ -11,5 +11,5 @@ fn main() {
 
     let a = u.a; // OK
     let b = u.b; // OK
-    let c = u.c; //~ ERROR field `c` of struct `m::U` is private
+    let c = u.c; //~ ERROR field `c` of union `m::U` is private
 }
diff --git a/src/test/ui/privacy/union-field-privacy-2.stderr b/src/test/ui/privacy/union-field-privacy-2.stderr
index df054b8cff8..8789178caac 100644
--- a/src/test/ui/privacy/union-field-privacy-2.stderr
+++ b/src/test/ui/privacy/union-field-privacy-2.stderr
@@ -1,4 +1,4 @@
-error[E0616]: field `c` of struct `m::U` is private
+error[E0616]: field `c` of union `m::U` is private
   --> $DIR/union-field-privacy-2.rs:14:13
    |
 LL |     let c = u.c;