about summary refs log tree commit diff
path: root/src/test/ui/error-codes
diff options
context:
space:
mode:
authorMaarten de Vries <maarten@de-vri.es>2021-07-15 21:25:11 +0200
committerMaarten de Vries <maarten@de-vri.es>2021-07-28 10:04:23 +0200
commit4c0ff4db80d2c6cb4dc204f65f34ce2246e27bfe (patch)
tree54b350e1f5ec45f4c2db752ceba41f9580e74c9d /src/test/ui/error-codes
parent8b50cc9a2c408caef30a1cf950c948509b2f648e (diff)
downloadrust-4c0ff4db80d2c6cb4dc204f65f34ce2246e27bfe.tar.gz
rust-4c0ff4db80d2c6cb4dc204f65f34ce2246e27bfe.zip
Show discriminant before overflow in diagnostic.
Diffstat (limited to 'src/test/ui/error-codes')
-rw-r--r--src/test/ui/error-codes/E0081.rs11
-rw-r--r--src/test/ui/error-codes/E0081.stderr14
2 files changed, 23 insertions, 2 deletions
diff --git a/src/test/ui/error-codes/E0081.rs b/src/test/ui/error-codes/E0081.rs
index 33c8c14306b..255e05ced19 100644
--- a/src/test/ui/error-codes/E0081.rs
+++ b/src/test/ui/error-codes/E0081.rs
@@ -1,9 +1,20 @@
 enum Enum {
     P = 3,
+    //~^ NOTE first use of `3`
     X = 3,
     //~^ ERROR discriminant value `3` already exists
+    //~| NOTE enum already has `3`
     Y = 5
 }
 
+#[repr(u8)]
+enum EnumOverflowRepr {
+    P = 257,
+    //~^ NOTE first use of `1` (overflowed from `257`)
+    X = 513,
+    //~^ ERROR discriminant value `1` already exists
+    //~| NOTE enum already has `1` (overflowed from `513`)
+}
+
 fn main() {
 }
diff --git a/src/test/ui/error-codes/E0081.stderr b/src/test/ui/error-codes/E0081.stderr
index 0b3d351e1ac..9b279bb0214 100644
--- a/src/test/ui/error-codes/E0081.stderr
+++ b/src/test/ui/error-codes/E0081.stderr
@@ -1,11 +1,21 @@
 error[E0081]: discriminant value `3` already exists
-  --> $DIR/E0081.rs:3:9
+  --> $DIR/E0081.rs:4:9
    |
 LL |     P = 3,
    |         - first use of `3`
+LL |
 LL |     X = 3,
    |         ^ enum already has `3`
 
-error: aborting due to previous error
+error[E0081]: discriminant value `1` already exists
+  --> $DIR/E0081.rs:14:9
+   |
+LL |     P = 257,
+   |         --- first use of `1` (overflowed from `257`)
+LL |
+LL |     X = 513,
+   |         ^^^ enum already has `1` (overflowed from `513`)
+
+error: aborting due to 2 previous errors
 
 For more information about this error, try `rustc --explain E0081`.