about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEsteban Küber <esteban@kuber.com.ar>2019-03-10 17:28:52 -0700
committerEsteban Küber <esteban@kuber.com.ar>2019-03-23 13:05:30 -0700
commit8e043950c8d8f8fa6df777a896286e0768f73b4a (patch)
tree2a21bd89ade21729043fb035c1c47e88733982c7
parent1b0ab0b8a9847efcf6428aa5f1db359a41fbdfed (diff)
downloadrust-8e043950c8d8f8fa6df777a896286e0768f73b4a.tar.gz
rust-8e043950c8d8f8fa6df777a896286e0768f73b4a.zip
Swap const evaluation lint spans to point at problem in primary span
-rw-r--r--src/librustc/mir/interpret/error.rs11
-rw-r--r--src/librustc_mir/const_eval.rs2
-rw-r--r--src/librustc_mir/transform/const_prop.rs1
-rw-r--r--src/test/ui/array_const_index-0.stderr4
-rw-r--r--src/test/ui/array_const_index-1.stderr4
-rw-r--r--src/test/ui/consts/const-err-early.stderr20
-rw-r--r--src/test/ui/consts/const-err-multi.stderr16
-rw-r--r--src/test/ui/consts/const-err.stderr4
-rw-r--r--src/test/ui/consts/const-eval/conditional_array_execution.stderr4
-rw-r--r--src/test/ui/consts/const-eval/const-eval-overflow2.rs24
-rw-r--r--src/test/ui/consts/const-eval/const-eval-overflow2.stderr48
-rw-r--r--src/test/ui/consts/const-eval/const-eval-overflow2b.rs24
-rw-r--r--src/test/ui/consts/const-eval/const-eval-overflow2b.stderr48
-rw-r--r--src/test/ui/consts/const-eval/const-eval-overflow2c.rs24
-rw-r--r--src/test/ui/consts/const-eval/const-eval-overflow2c.stderr48
-rw-r--r--src/test/ui/consts/const-eval/const-pointer-values-in-various-types.stderr80
-rw-r--r--src/test/ui/consts/const-eval/const_panic.stderr12
-rw-r--r--src/test/ui/consts/const-eval/const_panic_libcore.stderr12
-rw-r--r--src/test/ui/consts/const-eval/const_panic_libcore_main.stderr12
-rw-r--r--src/test/ui/consts/const-eval/const_raw_ptr_ops.stderr16
-rw-r--r--src/test/ui/consts/const-eval/issue-43197.stderr8
-rw-r--r--src/test/ui/consts/const-eval/issue-49296.stderr4
-rw-r--r--src/test/ui/consts/const-eval/issue-50814-2.stderr4
-rw-r--r--src/test/ui/consts/const-eval/issue-50814.stderr4
-rw-r--r--src/test/ui/consts/const-eval/promoted_errors.stderr8
-rw-r--r--src/test/ui/consts/const-eval/pub_const_err.stderr4
-rw-r--r--src/test/ui/consts/const-eval/pub_const_err_bin.stderr4
-rw-r--r--src/test/ui/consts/const-eval/unused-broken-const.stderr4
-rw-r--r--src/test/ui/consts/const-int-unchecked.stderr160
-rw-r--r--src/test/ui/consts/const-len-underflow-separate-spans.stderr4
-rw-r--r--src/test/ui/consts/const-slice-oob.stderr4
-rw-r--r--src/test/ui/consts/dangling-alloc-id-ice.stderr16
-rw-r--r--src/test/ui/consts/dangling_raw_ptr.stderr16
-rw-r--r--src/test/ui/error-codes/E0396-fixed.stderr4
-rw-r--r--src/test/ui/issues/issue-43105.stderr4
35 files changed, 358 insertions, 304 deletions
diff --git a/src/librustc/mir/interpret/error.rs b/src/librustc/mir/interpret/error.rs
index 819c65e2503..5cd1ced2022 100644
--- a/src/librustc/mir/interpret/error.rs
+++ b/src/librustc/mir/interpret/error.rs
@@ -100,6 +100,7 @@ impl<'a, 'gcx, 'tcx> ConstEvalErr<'tcx> {
         tcx: TyCtxtAt<'a, 'gcx, 'tcx>,
         message: &str,
         lint_root: hir::HirId,
+        span: Option<Span>,
     ) -> ErrorHandled {
         let lint = self.struct_generic(
             tcx,
@@ -108,6 +109,16 @@ impl<'a, 'gcx, 'tcx> ConstEvalErr<'tcx> {
         );
         match lint {
             Ok(mut lint) => {
+                if let Some(span) = span {
+                    let primary_spans = lint.span.primary_spans().to_vec();
+                    // point at the actual error as the primary span
+                    lint.replace_span_with(span);
+                    // point to the `const` statement as a secondary span
+                    // they don't have any label
+                    for sp in primary_spans {
+                        lint.span_label(sp, "");
+                    }
+                }
                 lint.emit();
                 ErrorHandled::Reported
             },
diff --git a/src/librustc_mir/const_eval.rs b/src/librustc_mir/const_eval.rs
index 79a3e0c5ee2..08ede2f5e80 100644
--- a/src/librustc_mir/const_eval.rs
+++ b/src/librustc_mir/const_eval.rs
@@ -668,6 +668,7 @@ pub fn const_eval_raw_provider<'a, 'tcx>(
                         tcx.at(tcx.def_span(def_id)),
                         "any use of this value will cause an error",
                         hir_id,
+                        Some(err.span),
                     )
                 },
                 // promoting runtime code is only allowed to error if it references broken constants
@@ -684,6 +685,7 @@ pub fn const_eval_raw_provider<'a, 'tcx>(
                             tcx.at(span),
                             "reaching this expression at runtime will panic or abort",
                             tcx.hir().as_local_hir_id(def_id).unwrap(),
+                            Some(err.span),
                         )
                     }
                 // anything else (array lengths, enum initializers, constant patterns) are reported
diff --git a/src/librustc_mir/transform/const_prop.rs b/src/librustc_mir/transform/const_prop.rs
index d8169684420..33672a2b774 100644
--- a/src/librustc_mir/transform/const_prop.rs
+++ b/src/librustc_mir/transform/const_prop.rs
@@ -237,6 +237,7 @@ impl<'a, 'mir, 'tcx> ConstPropagator<'a, 'mir, 'tcx> {
                             self.ecx.tcx,
                             "this expression will panic at runtime",
                             lint_root,
+                            None,
                         );
                     }
                 }
diff --git a/src/test/ui/array_const_index-0.stderr b/src/test/ui/array_const_index-0.stderr
index dfc89e0ae86..78d456d6c2e 100644
--- a/src/test/ui/array_const_index-0.stderr
+++ b/src/test/ui/array_const_index-0.stderr
@@ -1,8 +1,8 @@
 error: any use of this value will cause an error
-  --> $DIR/array_const_index-0.rs:2:1
+  --> $DIR/array_const_index-0.rs:2:16
    |
 LL | const B: i32 = (&A)[1];
-   | ^^^^^^^^^^^^^^^-------^
+   | ---------------^^^^^^^-
    |                |
    |                index out of bounds: the len is 0 but the index is 1
    |
diff --git a/src/test/ui/array_const_index-1.stderr b/src/test/ui/array_const_index-1.stderr
index 3e912fad53a..3e7360f935b 100644
--- a/src/test/ui/array_const_index-1.stderr
+++ b/src/test/ui/array_const_index-1.stderr
@@ -1,8 +1,8 @@
 error: any use of this value will cause an error
-  --> $DIR/array_const_index-1.rs:2:1
+  --> $DIR/array_const_index-1.rs:2:16
    |
 LL | const B: i32 = A[1];
-   | ^^^^^^^^^^^^^^^----^
+   | ---------------^^^^-
    |                |
    |                index out of bounds: the len is 0 but the index is 1
    |
diff --git a/src/test/ui/consts/const-err-early.stderr b/src/test/ui/consts/const-err-early.stderr
index a61f9b303aa..9b0ef94a5b8 100644
--- a/src/test/ui/consts/const-err-early.stderr
+++ b/src/test/ui/consts/const-err-early.stderr
@@ -1,8 +1,8 @@
 error: any use of this value will cause an error
-  --> $DIR/const-err-early.rs:3:1
+  --> $DIR/const-err-early.rs:3:19
    |
 LL | pub const A: i8 = -std::i8::MIN;
-   | ^^^^^^^^^^^^^^^^^^-------------^
+   | ------------------^^^^^^^^^^^^^-
    |                   |
    |                   attempt to negate with overflow
    |
@@ -13,34 +13,34 @@ LL | #![deny(const_err)]
    |         ^^^^^^^^^
 
 error: any use of this value will cause an error
-  --> $DIR/const-err-early.rs:4:1
+  --> $DIR/const-err-early.rs:4:19
    |
 LL | pub const B: u8 = 200u8 + 200u8;
-   | ^^^^^^^^^^^^^^^^^^-------------^
+   | ------------------^^^^^^^^^^^^^-
    |                   |
    |                   attempt to add with overflow
 
 error: any use of this value will cause an error
-  --> $DIR/const-err-early.rs:5:1
+  --> $DIR/const-err-early.rs:5:19
    |
 LL | pub const C: u8 = 200u8 * 4;
-   | ^^^^^^^^^^^^^^^^^^---------^
+   | ------------------^^^^^^^^^-
    |                   |
    |                   attempt to multiply with overflow
 
 error: any use of this value will cause an error
-  --> $DIR/const-err-early.rs:6:1
+  --> $DIR/const-err-early.rs:6:19
    |
 LL | pub const D: u8 = 42u8 - (42u8 + 1);
-   | ^^^^^^^^^^^^^^^^^^-----------------^
+   | ------------------^^^^^^^^^^^^^^^^^-
    |                   |
    |                   attempt to subtract with overflow
 
 error: any use of this value will cause an error
-  --> $DIR/const-err-early.rs:7:1
+  --> $DIR/const-err-early.rs:7:19
    |
 LL | pub const E: u8 = [5u8][1];
-   | ^^^^^^^^^^^^^^^^^^--------^
+   | ------------------^^^^^^^^-
    |                   |
    |                   index out of bounds: the len is 1 but the index is 1
 
diff --git a/src/test/ui/consts/const-err-multi.stderr b/src/test/ui/consts/const-err-multi.stderr
index af62665c056..c647f13fc75 100644
--- a/src/test/ui/consts/const-err-multi.stderr
+++ b/src/test/ui/consts/const-err-multi.stderr
@@ -1,8 +1,8 @@
 error: any use of this value will cause an error
-  --> $DIR/const-err-multi.rs:3:1
+  --> $DIR/const-err-multi.rs:3:19
    |
 LL | pub const A: i8 = -std::i8::MIN;
-   | ^^^^^^^^^^^^^^^^^^-------------^
+   | ------------------^^^^^^^^^^^^^-
    |                   |
    |                   attempt to negate with overflow
    |
@@ -13,26 +13,26 @@ LL | #![deny(const_err)]
    |         ^^^^^^^^^
 
 error: any use of this value will cause an error
-  --> $DIR/const-err-multi.rs:5:1
+  --> $DIR/const-err-multi.rs:5:19
    |
 LL | pub const B: i8 = A;
-   | ^^^^^^^^^^^^^^^^^^-^
+   | ------------------^-
    |                   |
    |                   referenced constant has errors
 
 error: any use of this value will cause an error
-  --> $DIR/const-err-multi.rs:7:1
+  --> $DIR/const-err-multi.rs:7:19
    |
 LL | pub const C: u8 = A as u8;
-   | ^^^^^^^^^^^^^^^^^^-------^
+   | ------------------^^^^^^^-
    |                   |
    |                   referenced constant has errors
 
 error: any use of this value will cause an error
-  --> $DIR/const-err-multi.rs:9:1
+  --> $DIR/const-err-multi.rs:9:19
    |
 LL | pub const D: i8 = 50 - A;
-   | ^^^^^^^^^^^^^^^^^^------^
+   | ------------------^^^^^^-
    |                   |
    |                   referenced constant has errors
 
diff --git a/src/test/ui/consts/const-err.stderr b/src/test/ui/consts/const-err.stderr
index 082494b43c2..0ee9ecdef45 100644
--- a/src/test/ui/consts/const-err.stderr
+++ b/src/test/ui/consts/const-err.stderr
@@ -1,8 +1,8 @@
 warning: any use of this value will cause an error
-  --> $DIR/const-err.rs:10:1
+  --> $DIR/const-err.rs:10:17
    |
 LL | const FOO: u8 = [5u8][1];
-   | ^^^^^^^^^^^^^^^^--------^
+   | ----------------^^^^^^^^-
    |                 |
    |                 index out of bounds: the len is 1 but the index is 1
    |
diff --git a/src/test/ui/consts/const-eval/conditional_array_execution.stderr b/src/test/ui/consts/const-eval/conditional_array_execution.stderr
index 7722c7423fc..7f94d849c00 100644
--- a/src/test/ui/consts/const-eval/conditional_array_execution.stderr
+++ b/src/test/ui/consts/const-eval/conditional_array_execution.stderr
@@ -1,8 +1,8 @@
 warning: any use of this value will cause an error
-  --> $DIR/conditional_array_execution.rs:5:1
+  --> $DIR/conditional_array_execution.rs:5:19
    |
 LL | const FOO: u32 = [X - Y, Y - X][(X < Y) as usize];
-   | ^^^^^^^^^^^^^^^^^^-----^^^^^^^^^^^^^^^^^^^^^^^^^^^
+   | ------------------^^^^^---------------------------
    |                   |
    |                   attempt to subtract with overflow
    |
diff --git a/src/test/ui/consts/const-eval/const-eval-overflow2.rs b/src/test/ui/consts/const-eval/const-eval-overflow2.rs
index 4700c63adbc..a0dbcc88cea 100644
--- a/src/test/ui/consts/const-eval/const-eval-overflow2.rs
+++ b/src/test/ui/consts/const-eval/const-eval-overflow2.rs
@@ -11,43 +11,51 @@ use std::fmt;
 use std::{i8, i16, i32, i64, isize};
 use std::{u8, u16, u32, u64, usize};
 
-const VALS_I8: (i8,) = //~ ERROR any use of this value will cause an error
+const VALS_I8: (i8,) =
     (
      i8::MIN - 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_I16: (i16,) = //~ ERROR any use of this value will cause an error
+const VALS_I16: (i16,) =
     (
      i16::MIN - 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_I32: (i32,) = //~ ERROR any use of this value will cause an error
+const VALS_I32: (i32,) =
     (
      i32::MIN - 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_I64: (i64,) = //~ ERROR any use of this value will cause an error
+const VALS_I64: (i64,) =
     (
      i64::MIN - 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_U8: (u8,) = //~ ERROR any use of this value will cause an error
+const VALS_U8: (u8,) =
     (
      u8::MIN - 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_U16: (u16,) = ( //~ ERROR any use of this value will cause an error
+const VALS_U16: (u16,) = (
      u16::MIN - 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_U32: (u32,) = ( //~ ERROR any use of this value will cause an error
+const VALS_U32: (u32,) = (
      u32::MIN - 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_U64: (u64,) = //~ ERROR any use of this value will cause an error
+const VALS_U64: (u64,) =
     (
      u64::MIN - 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
 fn main() {
     foo(VALS_I8);
diff --git a/src/test/ui/consts/const-eval/const-eval-overflow2.stderr b/src/test/ui/consts/const-eval/const-eval-overflow2.stderr
index 44ee8b336c8..419b3d52dbf 100644
--- a/src/test/ui/consts/const-eval/const-eval-overflow2.stderr
+++ b/src/test/ui/consts/const-eval/const-eval-overflow2.stderr
@@ -1,12 +1,12 @@
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2.rs:14:1
+  --> $DIR/const-eval-overflow2.rs:16:6
    |
 LL | / const VALS_I8: (i8,) =
 LL | |     (
 LL | |      i8::MIN - 1,
-   | |      ----------- attempt to subtract with overflow
+   | |      ^^^^^^^^^^^ attempt to subtract with overflow
 LL | |      );
-   | |_______^
+   | |_______-
    |
 note: lint level defined here
   --> $DIR/const-eval-overflow2.rs:8:9
@@ -15,72 +15,72 @@ LL | #![deny(const_err)]
    |         ^^^^^^^^^
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2.rs:19:1
+  --> $DIR/const-eval-overflow2.rs:22:6
    |
 LL | / const VALS_I16: (i16,) =
 LL | |     (
 LL | |      i16::MIN - 1,
-   | |      ------------ attempt to subtract with overflow
+   | |      ^^^^^^^^^^^^ attempt to subtract with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2.rs:24:1
+  --> $DIR/const-eval-overflow2.rs:28:6
    |
 LL | / const VALS_I32: (i32,) =
 LL | |     (
 LL | |      i32::MIN - 1,
-   | |      ------------ attempt to subtract with overflow
+   | |      ^^^^^^^^^^^^ attempt to subtract with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2.rs:29:1
+  --> $DIR/const-eval-overflow2.rs:34:6
    |
 LL | / const VALS_I64: (i64,) =
 LL | |     (
 LL | |      i64::MIN - 1,
-   | |      ------------ attempt to subtract with overflow
+   | |      ^^^^^^^^^^^^ attempt to subtract with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2.rs:34:1
+  --> $DIR/const-eval-overflow2.rs:40:6
    |
 LL | / const VALS_U8: (u8,) =
 LL | |     (
 LL | |      u8::MIN - 1,
-   | |      ----------- attempt to subtract with overflow
+   | |      ^^^^^^^^^^^ attempt to subtract with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2.rs:39:1
+  --> $DIR/const-eval-overflow2.rs:45:6
    |
 LL | / const VALS_U16: (u16,) = (
 LL | |      u16::MIN - 1,
-   | |      ------------ attempt to subtract with overflow
+   | |      ^^^^^^^^^^^^ attempt to subtract with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2.rs:43:1
+  --> $DIR/const-eval-overflow2.rs:50:6
    |
 LL | / const VALS_U32: (u32,) = (
 LL | |      u32::MIN - 1,
-   | |      ------------ attempt to subtract with overflow
+   | |      ^^^^^^^^^^^^ attempt to subtract with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2.rs:47:1
+  --> $DIR/const-eval-overflow2.rs:56:6
    |
 LL | / const VALS_U64: (u64,) =
 LL | |     (
 LL | |      u64::MIN - 1,
-   | |      ------------ attempt to subtract with overflow
+   | |      ^^^^^^^^^^^^ attempt to subtract with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: aborting due to 8 previous errors
 
diff --git a/src/test/ui/consts/const-eval/const-eval-overflow2b.rs b/src/test/ui/consts/const-eval/const-eval-overflow2b.rs
index 6bed90aa8ea..da883671a60 100644
--- a/src/test/ui/consts/const-eval/const-eval-overflow2b.rs
+++ b/src/test/ui/consts/const-eval/const-eval-overflow2b.rs
@@ -11,43 +11,51 @@ use std::fmt;
 use std::{i8, i16, i32, i64, isize};
 use std::{u8, u16, u32, u64, usize};
 
-const VALS_I8: (i8,) = //~ ERROR any use of this value will cause an error
+const VALS_I8: (i8,) =
     (
      i8::MAX + 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_I16: (i16,) = //~ ERROR any use of this value will cause an error
+const VALS_I16: (i16,) =
     (
      i16::MAX + 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_I32: (i32,) = //~ ERROR any use of this value will cause an error
+const VALS_I32: (i32,) =
     (
      i32::MAX + 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_I64: (i64,) = //~ ERROR any use of this value will cause an error
+const VALS_I64: (i64,) =
     (
      i64::MAX + 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_U8: (u8,) = //~ ERROR any use of this value will cause an error
+const VALS_U8: (u8,) =
     (
      u8::MAX + 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_U16: (u16,) = ( //~ ERROR any use of this value will cause an error
+const VALS_U16: (u16,) = (
      u16::MAX + 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_U32: (u32,) = ( //~ ERROR any use of this value will cause an error
+const VALS_U32: (u32,) = (
      u32::MAX + 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_U64: (u64,) = //~ ERROR any use of this value will cause an error
+const VALS_U64: (u64,) =
     (
      u64::MAX + 1,
      );
+ //~^^ ERROR any use of this value will cause an error
 
 fn main() {
     foo(VALS_I8);
diff --git a/src/test/ui/consts/const-eval/const-eval-overflow2b.stderr b/src/test/ui/consts/const-eval/const-eval-overflow2b.stderr
index 69e165bef4a..2cfd34c9fc3 100644
--- a/src/test/ui/consts/const-eval/const-eval-overflow2b.stderr
+++ b/src/test/ui/consts/const-eval/const-eval-overflow2b.stderr
@@ -1,12 +1,12 @@
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2b.rs:14:1
+  --> $DIR/const-eval-overflow2b.rs:16:6
    |
 LL | / const VALS_I8: (i8,) =
 LL | |     (
 LL | |      i8::MAX + 1,
-   | |      ----------- attempt to add with overflow
+   | |      ^^^^^^^^^^^ attempt to add with overflow
 LL | |      );
-   | |_______^
+   | |_______-
    |
 note: lint level defined here
   --> $DIR/const-eval-overflow2b.rs:8:9
@@ -15,72 +15,72 @@ LL | #![deny(const_err)]
    |         ^^^^^^^^^
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2b.rs:19:1
+  --> $DIR/const-eval-overflow2b.rs:22:6
    |
 LL | / const VALS_I16: (i16,) =
 LL | |     (
 LL | |      i16::MAX + 1,
-   | |      ------------ attempt to add with overflow
+   | |      ^^^^^^^^^^^^ attempt to add with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2b.rs:24:1
+  --> $DIR/const-eval-overflow2b.rs:28:6
    |
 LL | / const VALS_I32: (i32,) =
 LL | |     (
 LL | |      i32::MAX + 1,
-   | |      ------------ attempt to add with overflow
+   | |      ^^^^^^^^^^^^ attempt to add with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2b.rs:29:1
+  --> $DIR/const-eval-overflow2b.rs:34:6
    |
 LL | / const VALS_I64: (i64,) =
 LL | |     (
 LL | |      i64::MAX + 1,
-   | |      ------------ attempt to add with overflow
+   | |      ^^^^^^^^^^^^ attempt to add with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2b.rs:34:1
+  --> $DIR/const-eval-overflow2b.rs:40:6
    |
 LL | / const VALS_U8: (u8,) =
 LL | |     (
 LL | |      u8::MAX + 1,
-   | |      ----------- attempt to add with overflow
+   | |      ^^^^^^^^^^^ attempt to add with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2b.rs:39:1
+  --> $DIR/const-eval-overflow2b.rs:45:6
    |
 LL | / const VALS_U16: (u16,) = (
 LL | |      u16::MAX + 1,
-   | |      ------------ attempt to add with overflow
+   | |      ^^^^^^^^^^^^ attempt to add with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2b.rs:43:1
+  --> $DIR/const-eval-overflow2b.rs:50:6
    |
 LL | / const VALS_U32: (u32,) = (
 LL | |      u32::MAX + 1,
-   | |      ------------ attempt to add with overflow
+   | |      ^^^^^^^^^^^^ attempt to add with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2b.rs:47:1
+  --> $DIR/const-eval-overflow2b.rs:56:6
    |
 LL | / const VALS_U64: (u64,) =
 LL | |     (
 LL | |      u64::MAX + 1,
-   | |      ------------ attempt to add with overflow
+   | |      ^^^^^^^^^^^^ attempt to add with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: aborting due to 8 previous errors
 
diff --git a/src/test/ui/consts/const-eval/const-eval-overflow2c.rs b/src/test/ui/consts/const-eval/const-eval-overflow2c.rs
index 108251e4bd2..e87344405a1 100644
--- a/src/test/ui/consts/const-eval/const-eval-overflow2c.rs
+++ b/src/test/ui/consts/const-eval/const-eval-overflow2c.rs
@@ -11,43 +11,51 @@ use std::fmt;
 use std::{i8, i16, i32, i64, isize};
 use std::{u8, u16, u32, u64, usize};
 
-const VALS_I8: (i8,) = //~ ERROR any use of this value will cause an error
+const VALS_I8: (i8,) =
     (
      i8::MIN * 2,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_I16: (i16,) = //~ ERROR any use of this value will cause an error
+const VALS_I16: (i16,) =
     (
      i16::MIN * 2,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_I32: (i32,) = //~ ERROR any use of this value will cause an error
+const VALS_I32: (i32,) =
     (
      i32::MIN * 2,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_I64: (i64,) = //~ ERROR any use of this value will cause an error
+const VALS_I64: (i64,) =
     (
      i64::MIN * 2,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_U8: (u8,) = //~ ERROR any use of this value will cause an error
+const VALS_U8: (u8,) =
     (
      u8::MAX * 2,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_U16: (u16,) = ( //~ ERROR any use of this value will cause an error
+const VALS_U16: (u16,) = (
      u16::MAX * 2,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_U32: (u32,) = ( //~ ERROR any use of this value will cause an error
+const VALS_U32: (u32,) = (
      u32::MAX * 2,
      );
+ //~^^ ERROR any use of this value will cause an error
 
-const VALS_U64: (u64,) = //~ ERROR any use of this value will cause an error
+const VALS_U64: (u64,) =
     (
      u64::MAX * 2,
      );
+ //~^^ ERROR any use of this value will cause an error
 
 fn main() {
     foo(VALS_I8);
diff --git a/src/test/ui/consts/const-eval/const-eval-overflow2c.stderr b/src/test/ui/consts/const-eval/const-eval-overflow2c.stderr
index ba606f6d09d..5e63286c594 100644
--- a/src/test/ui/consts/const-eval/const-eval-overflow2c.stderr
+++ b/src/test/ui/consts/const-eval/const-eval-overflow2c.stderr
@@ -1,12 +1,12 @@
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2c.rs:14:1
+  --> $DIR/const-eval-overflow2c.rs:16:6
    |
 LL | / const VALS_I8: (i8,) =
 LL | |     (
 LL | |      i8::MIN * 2,
-   | |      ----------- attempt to multiply with overflow
+   | |      ^^^^^^^^^^^ attempt to multiply with overflow
 LL | |      );
-   | |_______^
+   | |_______-
    |
 note: lint level defined here
   --> $DIR/const-eval-overflow2c.rs:8:9
@@ -15,72 +15,72 @@ LL | #![deny(const_err)]
    |         ^^^^^^^^^
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2c.rs:19:1
+  --> $DIR/const-eval-overflow2c.rs:22:6
    |
 LL | / const VALS_I16: (i16,) =
 LL | |     (
 LL | |      i16::MIN * 2,
-   | |      ------------ attempt to multiply with overflow
+   | |      ^^^^^^^^^^^^ attempt to multiply with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2c.rs:24:1
+  --> $DIR/const-eval-overflow2c.rs:28:6
    |
 LL | / const VALS_I32: (i32,) =
 LL | |     (
 LL | |      i32::MIN * 2,
-   | |      ------------ attempt to multiply with overflow
+   | |      ^^^^^^^^^^^^ attempt to multiply with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2c.rs:29:1
+  --> $DIR/const-eval-overflow2c.rs:34:6
    |
 LL | / const VALS_I64: (i64,) =
 LL | |     (
 LL | |      i64::MIN * 2,
-   | |      ------------ attempt to multiply with overflow
+   | |      ^^^^^^^^^^^^ attempt to multiply with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2c.rs:34:1
+  --> $DIR/const-eval-overflow2c.rs:40:6
    |
 LL | / const VALS_U8: (u8,) =
 LL | |     (
 LL | |      u8::MAX * 2,
-   | |      ----------- attempt to multiply with overflow
+   | |      ^^^^^^^^^^^ attempt to multiply with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2c.rs:39:1
+  --> $DIR/const-eval-overflow2c.rs:45:6
    |
 LL | / const VALS_U16: (u16,) = (
 LL | |      u16::MAX * 2,
-   | |      ------------ attempt to multiply with overflow
+   | |      ^^^^^^^^^^^^ attempt to multiply with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2c.rs:43:1
+  --> $DIR/const-eval-overflow2c.rs:50:6
    |
 LL | / const VALS_U32: (u32,) = (
 LL | |      u32::MAX * 2,
-   | |      ------------ attempt to multiply with overflow
+   | |      ^^^^^^^^^^^^ attempt to multiply with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: any use of this value will cause an error
-  --> $DIR/const-eval-overflow2c.rs:47:1
+  --> $DIR/const-eval-overflow2c.rs:56:6
    |
 LL | / const VALS_U64: (u64,) =
 LL | |     (
 LL | |      u64::MAX * 2,
-   | |      ------------ attempt to multiply with overflow
+   | |      ^^^^^^^^^^^^ attempt to multiply with overflow
 LL | |      );
-   | |_______^
+   | |_______-
 
 error: aborting due to 8 previous errors
 
diff --git a/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.stderr b/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.stderr
index 786338222e3..284b06984a3 100644
--- a/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.stderr
+++ b/src/test/ui/consts/const-eval/const-pointer-values-in-various-types.stderr
@@ -7,28 +7,28 @@ LL |     const I32_REF_USIZE_UNION: usize = unsafe { Nonsense { int_32_ref: &3 }
    = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:27:5
+  --> $DIR/const-pointer-values-in-various-types.rs:27:43
    |
 LL |     const I32_REF_U8_UNION: u8 = unsafe { Nonsense { int_32_ref: &3 }.uint_8 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------------^^^
+   |     --------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                           |
    |                                           a raw memory access tried to access part of a pointer value as raw bytes
    |
    = note: #[deny(const_err)] on by default
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:30:5
+  --> $DIR/const-pointer-values-in-various-types.rs:30:45
    |
 LL |     const I32_REF_U16_UNION: u16 = unsafe { Nonsense { int_32_ref: &3 }.uint_16 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------------^^^
+   |     ----------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                             |
    |                                             a raw memory access tried to access part of a pointer value as raw bytes
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:33:5
+  --> $DIR/const-pointer-values-in-various-types.rs:33:45
    |
 LL |     const I32_REF_U32_UNION: u32 = unsafe { Nonsense { int_32_ref: &3 }.uint_32 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------------^^^
+   |     ----------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                             |
    |                                             a raw memory access tried to access part of a pointer value as raw bytes
 
@@ -49,26 +49,26 @@ LL |     const I32_REF_U128_UNION: u128 = unsafe { Nonsense { int_32_ref: &3 }.u
    = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:42:5
+  --> $DIR/const-pointer-values-in-various-types.rs:42:43
    |
 LL |     const I32_REF_I8_UNION: i8 = unsafe { Nonsense { int_32_ref: &3 }.int_8 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------^^^
+   |     --------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                           |
    |                                           a raw memory access tried to access part of a pointer value as raw bytes
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:45:5
+  --> $DIR/const-pointer-values-in-various-types.rs:45:45
    |
 LL |     const I32_REF_I16_UNION: i16 = unsafe { Nonsense { int_32_ref: &3 }.int_16 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------------^^^
+   |     ----------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                             |
    |                                             a raw memory access tried to access part of a pointer value as raw bytes
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:48:5
+  --> $DIR/const-pointer-values-in-various-types.rs:48:45
    |
 LL |     const I32_REF_I32_UNION: i32 = unsafe { Nonsense { int_32_ref: &3 }.int_32 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------------^^^
+   |     ----------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                             |
    |                                             a raw memory access tried to access part of a pointer value as raw bytes
 
@@ -89,10 +89,10 @@ LL |     const I32_REF_I128_UNION: i128 = unsafe { Nonsense { int_32_ref: &3 }.i
    = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:57:5
+  --> $DIR/const-pointer-values-in-various-types.rs:57:45
    |
 LL |     const I32_REF_F32_UNION: f32 = unsafe { Nonsense { int_32_ref: &3 }.float_32 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   |     ----------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                             |
    |                                             a raw memory access tried to access part of a pointer value as raw bytes
 
@@ -105,42 +105,42 @@ LL |     const I32_REF_F64_UNION: f64 = unsafe { Nonsense { int_32_ref: &3 }.flo
    = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:63:5
+  --> $DIR/const-pointer-values-in-various-types.rs:63:47
    |
 LL |     const I32_REF_BOOL_UNION: bool = unsafe { Nonsense { int_32_ref: &3 }.truthy_falsey };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------------------^^^
+   |     ------------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                               |
    |                                               a raw memory access tried to access part of a pointer value as raw bytes
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:66:5
+  --> $DIR/const-pointer-values-in-various-types.rs:66:47
    |
 LL |     const I32_REF_CHAR_UNION: char = unsafe { Nonsense { int_32_ref: &3 }.character };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------------^^^
+   |     ------------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                               |
    |                                               a raw memory access tried to access part of a pointer value as raw bytes
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:69:5
+  --> $DIR/const-pointer-values-in-various-types.rs:69:39
    |
 LL |     const STR_U8_UNION: u8 = unsafe { Nonsense { stringy: "3" }.uint_8 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------^^^
+   |     ----------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                       |
    |                                       a raw memory access tried to access part of a pointer value as raw bytes
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:72:5
+  --> $DIR/const-pointer-values-in-various-types.rs:72:41
    |
 LL |     const STR_U16_UNION: u16 = unsafe { Nonsense { stringy: "3" }.uint_16 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------^^^
+   |     ------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                         |
    |                                         a raw memory access tried to access part of a pointer value as raw bytes
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:75:5
+  --> $DIR/const-pointer-values-in-various-types.rs:75:41
    |
 LL |     const STR_U32_UNION: u32 = unsafe { Nonsense { stringy: "3" }.uint_32 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------^^^
+   |     ------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                         |
    |                                         a raw memory access tried to access part of a pointer value as raw bytes
 
@@ -153,34 +153,34 @@ LL |     const STR_U64_UNION: u64 = unsafe { Nonsense { stringy: "3" }.uint_64 }
    = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:81:5
+  --> $DIR/const-pointer-values-in-various-types.rs:81:43
    |
 LL |     const STR_U128_UNION: u128 = unsafe { Nonsense { stringy: "3" }.uint_128 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------------^^^
+   |     --------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                           |
    |                                           a raw memory access tried to access part of a pointer value as raw bytes
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:84:5
+  --> $DIR/const-pointer-values-in-various-types.rs:84:39
    |
 LL |     const STR_I8_UNION: i8 = unsafe { Nonsense { stringy: "3" }.int_8 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------^^^
+   |     ----------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                       |
    |                                       a raw memory access tried to access part of a pointer value as raw bytes
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:87:5
+  --> $DIR/const-pointer-values-in-various-types.rs:87:41
    |
 LL |     const STR_I16_UNION: i16 = unsafe { Nonsense { stringy: "3" }.int_16 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------^^^
+   |     ------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                         |
    |                                         a raw memory access tried to access part of a pointer value as raw bytes
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:90:5
+  --> $DIR/const-pointer-values-in-various-types.rs:90:41
    |
 LL |     const STR_I32_UNION: i32 = unsafe { Nonsense { stringy: "3" }.int_32 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------^^^
+   |     ------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                         |
    |                                         a raw memory access tried to access part of a pointer value as raw bytes
 
@@ -193,18 +193,18 @@ LL |     const STR_I64_UNION: i64 = unsafe { Nonsense { stringy: "3" }.int_64 };
    = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:96:5
+  --> $DIR/const-pointer-values-in-various-types.rs:96:43
    |
 LL |     const STR_I128_UNION: i128 = unsafe { Nonsense { stringy: "3" }.int_128 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------^^^
+   |     --------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                           |
    |                                           a raw memory access tried to access part of a pointer value as raw bytes
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:99:5
+  --> $DIR/const-pointer-values-in-various-types.rs:99:41
    |
 LL |     const STR_F32_UNION: f32 = unsafe { Nonsense { stringy: "3" }.float_32 };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------------^^^
+   |     ------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                         |
    |                                         a raw memory access tried to access part of a pointer value as raw bytes
 
@@ -217,18 +217,18 @@ LL |     const STR_F64_UNION: f64 = unsafe { Nonsense { stringy: "3" }.float_64
    = note: The rules on what exactly is undefined behavior aren't clear, so this check might be overzealous. Please open an issue on the rust compiler repository if you believe it should not be considered undefined behavior
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:105:5
+  --> $DIR/const-pointer-values-in-various-types.rs:105:43
    |
 LL |     const STR_BOOL_UNION: bool = unsafe { Nonsense { stringy: "3" }.truthy_falsey };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------------^^^
+   |     --------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                           |
    |                                           a raw memory access tried to access part of a pointer value as raw bytes
 
 error: any use of this value will cause an error
-  --> $DIR/const-pointer-values-in-various-types.rs:108:5
+  --> $DIR/const-pointer-values-in-various-types.rs:108:43
    |
 LL |     const STR_CHAR_UNION: char = unsafe { Nonsense { stringy: "3" }.character };
-   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------------^^^
+   |     --------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                           |
    |                                           a raw memory access tried to access part of a pointer value as raw bytes
 
diff --git a/src/test/ui/consts/const-eval/const_panic.stderr b/src/test/ui/consts/const-eval/const_panic.stderr
index eecac7c7107..12c7e3d34ab 100644
--- a/src/test/ui/consts/const-eval/const_panic.stderr
+++ b/src/test/ui/consts/const-eval/const_panic.stderr
@@ -1,8 +1,8 @@
 error: any use of this value will cause an error
-  --> $DIR/const_panic.rs:4:1
+  --> $DIR/const_panic.rs:4:19
    |
 LL | pub const Z: () = panic!("cheese");
-   | ^^^^^^^^^^^^^^^^^^----------------^
+   | ------------------^^^^^^^^^^^^^^^^-
    |                   |
    |                   the evaluated program panicked at 'cheese', $DIR/const_panic.rs:4:19
    |
@@ -10,20 +10,20 @@ LL | pub const Z: () = panic!("cheese");
    = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
 
 error: any use of this value will cause an error
-  --> $DIR/const_panic.rs:7:1
+  --> $DIR/const_panic.rs:7:19
    |
 LL | pub const Y: () = unreachable!();
-   | ^^^^^^^^^^^^^^^^^^--------------^
+   | ------------------^^^^^^^^^^^^^^-
    |                   |
    |                   the evaluated program panicked at 'internal error: entered unreachable code', $DIR/const_panic.rs:7:19
    |
    = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
 
 error: any use of this value will cause an error
-  --> $DIR/const_panic.rs:10:1
+  --> $DIR/const_panic.rs:10:19
    |
 LL | pub const X: () = unimplemented!();
-   | ^^^^^^^^^^^^^^^^^^----------------^
+   | ------------------^^^^^^^^^^^^^^^^-
    |                   |
    |                   the evaluated program panicked at 'not yet implemented', $DIR/const_panic.rs:10:19
    |
diff --git a/src/test/ui/consts/const-eval/const_panic_libcore.stderr b/src/test/ui/consts/const-eval/const_panic_libcore.stderr
index 83c89c329dc..9dddac49c92 100644
--- a/src/test/ui/consts/const-eval/const_panic_libcore.stderr
+++ b/src/test/ui/consts/const-eval/const_panic_libcore.stderr
@@ -1,8 +1,8 @@
 error: any use of this value will cause an error
-  --> $DIR/const_panic_libcore.rs:5:1
+  --> $DIR/const_panic_libcore.rs:5:15
    |
 LL | const Z: () = panic!("cheese");
-   | ^^^^^^^^^^^^^^----------------^
+   | --------------^^^^^^^^^^^^^^^^-
    |               |
    |               the evaluated program panicked at 'cheese', $DIR/const_panic_libcore.rs:5:15
    |
@@ -10,20 +10,20 @@ LL | const Z: () = panic!("cheese");
    = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
 
 error: any use of this value will cause an error
-  --> $DIR/const_panic_libcore.rs:8:1
+  --> $DIR/const_panic_libcore.rs:8:15
    |
 LL | const Y: () = unreachable!();
-   | ^^^^^^^^^^^^^^--------------^
+   | --------------^^^^^^^^^^^^^^-
    |               |
    |               the evaluated program panicked at 'internal error: entered unreachable code', $DIR/const_panic_libcore.rs:8:15
    |
    = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
 
 error: any use of this value will cause an error
-  --> $DIR/const_panic_libcore.rs:11:1
+  --> $DIR/const_panic_libcore.rs:11:15
    |
 LL | const X: () = unimplemented!();
-   | ^^^^^^^^^^^^^^----------------^
+   | --------------^^^^^^^^^^^^^^^^-
    |               |
    |               the evaluated program panicked at 'not yet implemented', $DIR/const_panic_libcore.rs:11:15
    |
diff --git a/src/test/ui/consts/const-eval/const_panic_libcore_main.stderr b/src/test/ui/consts/const-eval/const_panic_libcore_main.stderr
index 4cc48618e32..df04a036811 100644
--- a/src/test/ui/consts/const-eval/const_panic_libcore_main.stderr
+++ b/src/test/ui/consts/const-eval/const_panic_libcore_main.stderr
@@ -1,8 +1,8 @@
 error: any use of this value will cause an error
-  --> $DIR/const_panic_libcore_main.rs:9:1
+  --> $DIR/const_panic_libcore_main.rs:9:15
    |
 LL | const Z: () = panic!("cheese");
-   | ^^^^^^^^^^^^^^----------------^
+   | --------------^^^^^^^^^^^^^^^^-
    |               |
    |               the evaluated program panicked at 'cheese', $DIR/const_panic_libcore_main.rs:9:15
    |
@@ -10,20 +10,20 @@ LL | const Z: () = panic!("cheese");
    = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
 
 error: any use of this value will cause an error
-  --> $DIR/const_panic_libcore_main.rs:12:1
+  --> $DIR/const_panic_libcore_main.rs:12:15
    |
 LL | const Y: () = unreachable!();
-   | ^^^^^^^^^^^^^^--------------^
+   | --------------^^^^^^^^^^^^^^-
    |               |
    |               the evaluated program panicked at 'internal error: entered unreachable code', $DIR/const_panic_libcore_main.rs:12:15
    |
    = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
 
 error: any use of this value will cause an error
-  --> $DIR/const_panic_libcore_main.rs:15:1
+  --> $DIR/const_panic_libcore_main.rs:15:15
    |
 LL | const X: () = unimplemented!();
-   | ^^^^^^^^^^^^^^----------------^
+   | --------------^^^^^^^^^^^^^^^^-
    |               |
    |               the evaluated program panicked at 'not yet implemented', $DIR/const_panic_libcore_main.rs:15:15
    |
diff --git a/src/test/ui/consts/const-eval/const_raw_ptr_ops.stderr b/src/test/ui/consts/const-eval/const_raw_ptr_ops.stderr
index 773441182b4..0d4c0b98879 100644
--- a/src/test/ui/consts/const-eval/const_raw_ptr_ops.stderr
+++ b/src/test/ui/consts/const-eval/const_raw_ptr_ops.stderr
@@ -1,34 +1,34 @@
 error: any use of this value will cause an error
-  --> $DIR/const_raw_ptr_ops.rs:6:1
+  --> $DIR/const_raw_ptr_ops.rs:6:26
    |
 LL | const X: bool = unsafe { &1 as *const i32 == &2 as *const i32 };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | -------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                          |
    |                          "pointer arithmetic or comparison" needs an rfc before being allowed inside constants
    |
    = note: #[deny(const_err)] on by default
 
 error: any use of this value will cause an error
-  --> $DIR/const_raw_ptr_ops.rs:12:1
+  --> $DIR/const_raw_ptr_ops.rs:12:28
    |
 LL | const Y2: usize = unsafe { &1 as *const i32 as usize + 1 };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------^^^
+   | ---------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                            |
    |                            "pointer arithmetic or comparison" needs an rfc before being allowed inside constants
 
 error: any use of this value will cause an error
-  --> $DIR/const_raw_ptr_ops.rs:16:1
+  --> $DIR/const_raw_ptr_ops.rs:16:26
    |
 LL | const Z2: i32 = unsafe { *(42 as *const i32) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^-------------------^^^
+   | -------------------------^^^^^^^^^^^^^^^^^^^---
    |                          |
    |                          a memory access tried to interpret some bytes as a pointer
 
 error: any use of this value will cause an error
-  --> $DIR/const_raw_ptr_ops.rs:17:1
+  --> $DIR/const_raw_ptr_ops.rs:17:26
    |
 LL | const Z3: i32 = unsafe { *(44 as *const i32) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^-------------------^^^
+   | -------------------------^^^^^^^^^^^^^^^^^^^---
    |                          |
    |                          a memory access tried to interpret some bytes as a pointer
 
diff --git a/src/test/ui/consts/const-eval/issue-43197.stderr b/src/test/ui/consts/const-eval/issue-43197.stderr
index 84c68610260..478e453fe08 100644
--- a/src/test/ui/consts/const-eval/issue-43197.stderr
+++ b/src/test/ui/consts/const-eval/issue-43197.stderr
@@ -1,8 +1,8 @@
 warning: any use of this value will cause an error
-  --> $DIR/issue-43197.rs:8:5
+  --> $DIR/issue-43197.rs:8:20
    |
 LL |     const X: u32 = 0-1;
-   |     ^^^^^^^^^^^^^^^---^
+   |     ---------------^^^-
    |                    |
    |                    attempt to subtract with overflow
    |
@@ -13,10 +13,10 @@ LL | #![warn(const_err)]
    |         ^^^^^^^^^
 
 warning: any use of this value will cause an error
-  --> $DIR/issue-43197.rs:10:5
+  --> $DIR/issue-43197.rs:10:24
    |
 LL |     const Y: u32 = foo(0-1);
-   |     ^^^^^^^^^^^^^^^^^^^---^^
+   |     -------------------^^^--
    |                        |
    |                        attempt to subtract with overflow
 
diff --git a/src/test/ui/consts/const-eval/issue-49296.stderr b/src/test/ui/consts/const-eval/issue-49296.stderr
index 37462db4c96..5a59a8b2dff 100644
--- a/src/test/ui/consts/const-eval/issue-49296.stderr
+++ b/src/test/ui/consts/const-eval/issue-49296.stderr
@@ -1,8 +1,8 @@
 error: any use of this value will cause an error
-  --> $DIR/issue-49296.rs:18:1
+  --> $DIR/issue-49296.rs:18:16
    |
 LL | const X: u64 = *wat(42);
-   | ^^^^^^^^^^^^^^^--------^
+   | ---------------^^^^^^^^-
    |                |
    |                dangling pointer was dereferenced
    |
diff --git a/src/test/ui/consts/const-eval/issue-50814-2.stderr b/src/test/ui/consts/const-eval/issue-50814-2.stderr
index 29ebc31b634..da560046c54 100644
--- a/src/test/ui/consts/const-eval/issue-50814-2.stderr
+++ b/src/test/ui/consts/const-eval/issue-50814-2.stderr
@@ -1,8 +1,8 @@
 error: any use of this value will cause an error
-  --> $DIR/issue-50814-2.rs:12:5
+  --> $DIR/issue-50814-2.rs:12:24
    |
 LL |     const BAR: usize = [5, 6, 7][T::BOO];
-   |     ^^^^^^^^^^^^^^^^^^^-----------------^
+   |     -------------------^^^^^^^^^^^^^^^^^-
    |                        |
    |                        index out of bounds: the len is 3 but the index is 42
    |
diff --git a/src/test/ui/consts/const-eval/issue-50814.stderr b/src/test/ui/consts/const-eval/issue-50814.stderr
index 6fbfb4d11fe..bc9443b26f5 100644
--- a/src/test/ui/consts/const-eval/issue-50814.stderr
+++ b/src/test/ui/consts/const-eval/issue-50814.stderr
@@ -1,8 +1,8 @@
 error: any use of this value will cause an error
-  --> $DIR/issue-50814.rs:13:5
+  --> $DIR/issue-50814.rs:13:21
    |
 LL |     const MAX: u8 = A::MAX + B::MAX;
-   |     ^^^^^^^^^^^^^^^^---------------^
+   |     ----------------^^^^^^^^^^^^^^^-
    |                     |
    |                     attempt to add with overflow
    |
diff --git a/src/test/ui/consts/const-eval/promoted_errors.stderr b/src/test/ui/consts/const-eval/promoted_errors.stderr
index c9d5ede61ad..ca870c649f5 100644
--- a/src/test/ui/consts/const-eval/promoted_errors.stderr
+++ b/src/test/ui/consts/const-eval/promoted_errors.stderr
@@ -50,11 +50,15 @@ warning: reaching this expression at runtime will panic or abort
   --> $DIR/promoted_errors.rs:14:20
    |
 LL |     println!("{}", 1/(false as u32));
-   |                    ^^^^^^^^^^^^^^^^ attempt to divide by zero
+   |                    ^^^^^^^^^^^^^^^^
+   |                    |
+   |                    attempt to divide by zero
 
 warning: reaching this expression at runtime will panic or abort
   --> $DIR/promoted_errors.rs:9:20
    |
 LL |     println!("{}", 1/(1-1));
-   |                    ^^^^^^^ attempt to divide by zero
+   |                    ^^^^^^^
+   |                    |
+   |                    attempt to divide by zero
 
diff --git a/src/test/ui/consts/const-eval/pub_const_err.stderr b/src/test/ui/consts/const-eval/pub_const_err.stderr
index 9395832108d..bd262b69da8 100644
--- a/src/test/ui/consts/const-eval/pub_const_err.stderr
+++ b/src/test/ui/consts/const-eval/pub_const_err.stderr
@@ -1,8 +1,8 @@
 warning: any use of this value will cause an error
-  --> $DIR/pub_const_err.rs:6:1
+  --> $DIR/pub_const_err.rs:6:20
    |
 LL | pub const Z: u32 = 0 - 1;
-   | ^^^^^^^^^^^^^^^^^^^-----^
+   | -------------------^^^^^-
    |                    |
    |                    attempt to subtract with overflow
    |
diff --git a/src/test/ui/consts/const-eval/pub_const_err_bin.stderr b/src/test/ui/consts/const-eval/pub_const_err_bin.stderr
index 6716f337f41..866d1753edb 100644
--- a/src/test/ui/consts/const-eval/pub_const_err_bin.stderr
+++ b/src/test/ui/consts/const-eval/pub_const_err_bin.stderr
@@ -1,8 +1,8 @@
 warning: any use of this value will cause an error
-  --> $DIR/pub_const_err_bin.rs:4:1
+  --> $DIR/pub_const_err_bin.rs:4:20
    |
 LL | pub const Z: u32 = 0 - 1;
-   | ^^^^^^^^^^^^^^^^^^^-----^
+   | -------------------^^^^^-
    |                    |
    |                    attempt to subtract with overflow
    |
diff --git a/src/test/ui/consts/const-eval/unused-broken-const.stderr b/src/test/ui/consts/const-eval/unused-broken-const.stderr
index c0061f8b30c..603efe449f1 100644
--- a/src/test/ui/consts/const-eval/unused-broken-const.stderr
+++ b/src/test/ui/consts/const-eval/unused-broken-const.stderr
@@ -1,10 +1,10 @@
 warning: due to multiple output types requested, the explicitly specified output file name will be adapted for each output type
 
 error: any use of this value will cause an error
-  --> $DIR/unused-broken-const.rs:5:1
+  --> $DIR/unused-broken-const.rs:5:18
    |
 LL | const FOO: i32 = [][0];
-   | ^^^^^^^^^^^^^^^^^-----^
+   | -----------------^^^^^-
    |                  |
    |                  index out of bounds: the len is 0 but the index is 0
    |
diff --git a/src/test/ui/consts/const-int-unchecked.stderr b/src/test/ui/consts/const-int-unchecked.stderr
index 4382d9174b7..0fa82008711 100644
--- a/src/test/ui/consts/const-int-unchecked.stderr
+++ b/src/test/ui/consts/const-int-unchecked.stderr
@@ -1,322 +1,322 @@
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:14:1
+  --> $DIR/const-int-unchecked.rs:14:29
    |
 LL | const SHL_U8: u8 = unsafe { intrinsics::unchecked_shl(5_u8, 8) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------------^^^
+   | ----------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                             |
    |                             Overflowing shift by 8 in unchecked_shl
    |
    = note: #[deny(const_err)] on by default
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:16:1
+  --> $DIR/const-int-unchecked.rs:16:31
    |
 LL | const SHL_U16: u16 = unsafe { intrinsics::unchecked_shl(5_u16, 16) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | ------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                               |
    |                               Overflowing shift by 16 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:18:1
+  --> $DIR/const-int-unchecked.rs:18:31
    |
 LL | const SHL_U32: u32 = unsafe { intrinsics::unchecked_shl(5_u32, 32) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | ------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                               |
    |                               Overflowing shift by 32 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:20:1
+  --> $DIR/const-int-unchecked.rs:20:31
    |
 LL | const SHL_U64: u64 = unsafe { intrinsics::unchecked_shl(5_u64, 64) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | ------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                               |
    |                               Overflowing shift by 64 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:22:1
+  --> $DIR/const-int-unchecked.rs:22:33
    |
 LL | const SHL_U128: u128 = unsafe { intrinsics::unchecked_shl(5_u128, 128) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------------^^^
+   | --------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                 |
    |                                 Overflowing shift by 128 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:27:1
+  --> $DIR/const-int-unchecked.rs:27:29
    |
 LL | const SHL_I8: i8 = unsafe { intrinsics::unchecked_shl(5_i8, 8) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------------^^^
+   | ----------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                             |
    |                             Overflowing shift by 8 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:29:1
+  --> $DIR/const-int-unchecked.rs:29:31
    |
 LL | const SHL_I16: i16 = unsafe { intrinsics::unchecked_shl(5_16, 16) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------------^^^
+   | ------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                               |
    |                               Overflowing shift by 16 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:31:1
+  --> $DIR/const-int-unchecked.rs:31:31
    |
 LL | const SHL_I32: i32 = unsafe { intrinsics::unchecked_shl(5_i32, 32) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | ------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                               |
    |                               Overflowing shift by 32 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:33:1
+  --> $DIR/const-int-unchecked.rs:33:31
    |
 LL | const SHL_I64: i64 = unsafe { intrinsics::unchecked_shl(5_i64, 64) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | ------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                               |
    |                               Overflowing shift by 64 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:35:1
+  --> $DIR/const-int-unchecked.rs:35:33
    |
 LL | const SHL_I128: i128 = unsafe { intrinsics::unchecked_shl(5_i128, 128) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------------^^^
+   | --------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                 |
    |                                 Overflowing shift by 128 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:40:1
+  --> $DIR/const-int-unchecked.rs:40:33
    |
 LL | const SHL_I8_NEG: i8 = unsafe { intrinsics::unchecked_shl(5_i8, -1) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------------^^^
+   | --------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                 |
    |                                 Overflowing shift by 255 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:42:1
+  --> $DIR/const-int-unchecked.rs:42:35
    |
 LL | const SHL_I16_NEG: i16 = unsafe { intrinsics::unchecked_shl(5_16, -1) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------------^^^
+   | ----------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                   |
    |                                   Overflowing shift by 65535 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:44:1
+  --> $DIR/const-int-unchecked.rs:44:35
    |
 LL | const SHL_I32_NEG: i32 = unsafe { intrinsics::unchecked_shl(5_i32, -1) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | ----------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                   |
    |                                   Overflowing shift by 4294967295 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:46:1
+  --> $DIR/const-int-unchecked.rs:46:35
    |
 LL | const SHL_I64_NEG: i64 = unsafe { intrinsics::unchecked_shl(5_i64, -1) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | ----------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                   |
    |                                   Overflowing shift by 18446744073709551615 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:48:1
+  --> $DIR/const-int-unchecked.rs:48:37
    |
 LL | const SHL_I128_NEG: i128 = unsafe { intrinsics::unchecked_shl(5_i128, -1) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------------^^^
+   | ------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                     |
    |                                     Overflowing shift by 340282366920938463463374607431768211455 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:54:1
+  --> $DIR/const-int-unchecked.rs:54:40
    |
 LL | const SHL_I8_NEG_RANDOM: i8 = unsafe { intrinsics::unchecked_shl(5_i8, -6) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------------^^^
+   | ---------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                        |
    |                                        Overflowing shift by 250 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:56:1
+  --> $DIR/const-int-unchecked.rs:56:42
    |
 LL | const SHL_I16_NEG_RANDOM: i16 = unsafe { intrinsics::unchecked_shl(5_16, -13) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | -----------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                          |
    |                                          Overflowing shift by 65523 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:58:1
+  --> $DIR/const-int-unchecked.rs:58:42
    |
 LL | const SHL_I32_NEG_RANDOM: i32 = unsafe { intrinsics::unchecked_shl(5_i32, -25) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------------^^^
+   | -----------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                          |
    |                                          Overflowing shift by 4294967271 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:60:1
+  --> $DIR/const-int-unchecked.rs:60:42
    |
 LL | const SHL_I64_NEG_RANDOM: i64 = unsafe { intrinsics::unchecked_shl(5_i64, -30) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------------^^^
+   | -----------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                          |
    |                                          Overflowing shift by 18446744073709551586 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:62:1
+  --> $DIR/const-int-unchecked.rs:62:44
    |
 LL | const SHL_I128_NEG_RANDOM: i128 = unsafe { intrinsics::unchecked_shl(5_i128, -93) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------------^^^
+   | -------------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                            |
    |                                            Overflowing shift by 340282366920938463463374607431768211363 in unchecked_shl
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:69:1
+  --> $DIR/const-int-unchecked.rs:69:29
    |
 LL | const SHR_U8: u8 = unsafe { intrinsics::unchecked_shr(5_u8, 8) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------------^^^
+   | ----------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                             |
    |                             Overflowing shift by 8 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:71:1
+  --> $DIR/const-int-unchecked.rs:71:31
    |
 LL | const SHR_U16: u16 = unsafe { intrinsics::unchecked_shr(5_u16, 16) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | ------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                               |
    |                               Overflowing shift by 16 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:73:1
+  --> $DIR/const-int-unchecked.rs:73:31
    |
 LL | const SHR_U32: u32 = unsafe { intrinsics::unchecked_shr(5_u32, 32) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | ------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                               |
    |                               Overflowing shift by 32 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:75:1
+  --> $DIR/const-int-unchecked.rs:75:31
    |
 LL | const SHR_U64: u64 = unsafe { intrinsics::unchecked_shr(5_u64, 64) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | ------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                               |
    |                               Overflowing shift by 64 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:77:1
+  --> $DIR/const-int-unchecked.rs:77:33
    |
 LL | const SHR_U128: u128 = unsafe { intrinsics::unchecked_shr(5_u128, 128) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------------^^^
+   | --------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                 |
    |                                 Overflowing shift by 128 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:82:1
+  --> $DIR/const-int-unchecked.rs:82:29
    |
 LL | const SHR_I8: i8 = unsafe { intrinsics::unchecked_shr(5_i8, 8) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------------^^^
+   | ----------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                             |
    |                             Overflowing shift by 8 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:84:1
+  --> $DIR/const-int-unchecked.rs:84:31
    |
 LL | const SHR_I16: i16 = unsafe { intrinsics::unchecked_shr(5_16, 16) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------------^^^
+   | ------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                               |
    |                               Overflowing shift by 16 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:86:1
+  --> $DIR/const-int-unchecked.rs:86:31
    |
 LL | const SHR_I32: i32 = unsafe { intrinsics::unchecked_shr(5_i32, 32) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | ------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                               |
    |                               Overflowing shift by 32 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:88:1
+  --> $DIR/const-int-unchecked.rs:88:31
    |
 LL | const SHR_I64: i64 = unsafe { intrinsics::unchecked_shr(5_i64, 64) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | ------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                               |
    |                               Overflowing shift by 64 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:90:1
+  --> $DIR/const-int-unchecked.rs:90:33
    |
 LL | const SHR_I128: i128 = unsafe { intrinsics::unchecked_shr(5_i128, 128) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------------^^^
+   | --------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                 |
    |                                 Overflowing shift by 128 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:95:1
+  --> $DIR/const-int-unchecked.rs:95:33
    |
 LL | const SHR_I8_NEG: i8 = unsafe { intrinsics::unchecked_shr(5_i8, -1) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------------^^^
+   | --------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                 |
    |                                 Overflowing shift by 255 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:97:1
+  --> $DIR/const-int-unchecked.rs:97:35
    |
 LL | const SHR_I16_NEG: i16 = unsafe { intrinsics::unchecked_shr(5_16, -1) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------------^^^
+   | ----------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                   |
    |                                   Overflowing shift by 65535 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:99:1
+  --> $DIR/const-int-unchecked.rs:99:35
    |
 LL | const SHR_I32_NEG: i32 = unsafe { intrinsics::unchecked_shr(5_i32, -1) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | ----------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                   |
    |                                   Overflowing shift by 4294967295 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:101:1
+  --> $DIR/const-int-unchecked.rs:101:35
    |
 LL | const SHR_I64_NEG: i64 = unsafe { intrinsics::unchecked_shr(5_i64, -1) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | ----------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                   |
    |                                   Overflowing shift by 18446744073709551615 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:103:1
+  --> $DIR/const-int-unchecked.rs:103:37
    |
 LL | const SHR_I128_NEG: i128 = unsafe { intrinsics::unchecked_shr(5_i128, -1) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------------^^^
+   | ------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                     |
    |                                     Overflowing shift by 340282366920938463463374607431768211455 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:109:1
+  --> $DIR/const-int-unchecked.rs:109:40
    |
 LL | const SHR_I8_NEG_RANDOM: i8 = unsafe { intrinsics::unchecked_shr(5_i8, -6) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------------^^^
+   | ---------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                        |
    |                                        Overflowing shift by 250 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:111:1
+  --> $DIR/const-int-unchecked.rs:111:42
    |
 LL | const SHR_I16_NEG_RANDOM: i16 = unsafe { intrinsics::unchecked_shr(5_16, -13) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------^^^
+   | -----------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                          |
    |                                          Overflowing shift by 65523 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:113:1
+  --> $DIR/const-int-unchecked.rs:113:42
    |
 LL | const SHR_I32_NEG_RANDOM: i32 = unsafe { intrinsics::unchecked_shr(5_i32, -25) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------------^^^
+   | -----------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                          |
    |                                          Overflowing shift by 4294967271 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:115:1
+  --> $DIR/const-int-unchecked.rs:115:42
    |
 LL | const SHR_I64_NEG_RANDOM: i64 = unsafe { intrinsics::unchecked_shr(5_i64, -30) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------------^^^
+   | -----------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                          |
    |                                          Overflowing shift by 18446744073709551586 in unchecked_shr
 
 error: any use of this value will cause an error
-  --> $DIR/const-int-unchecked.rs:117:1
+  --> $DIR/const-int-unchecked.rs:117:44
    |
 LL | const SHR_I128_NEG_RANDOM: i128 = unsafe { intrinsics::unchecked_shr(5_i128, -93) };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------------^^^
+   | -------------------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---
    |                                            |
    |                                            Overflowing shift by 340282366920938463463374607431768211363 in unchecked_shr
 
diff --git a/src/test/ui/consts/const-len-underflow-separate-spans.stderr b/src/test/ui/consts/const-len-underflow-separate-spans.stderr
index 6ee92032bd7..ef4fa126dca 100644
--- a/src/test/ui/consts/const-len-underflow-separate-spans.stderr
+++ b/src/test/ui/consts/const-len-underflow-separate-spans.stderr
@@ -1,8 +1,8 @@
 error: any use of this value will cause an error
-  --> $DIR/const-len-underflow-separate-spans.rs:7:1
+  --> $DIR/const-len-underflow-separate-spans.rs:7:20
    |
 LL | const LEN: usize = ONE - TWO;
-   | ^^^^^^^^^^^^^^^^^^^---------^
+   | -------------------^^^^^^^^^-
    |                    |
    |                    attempt to subtract with overflow
    |
diff --git a/src/test/ui/consts/const-slice-oob.stderr b/src/test/ui/consts/const-slice-oob.stderr
index 1122665cf8e..c90cdbcb269 100644
--- a/src/test/ui/consts/const-slice-oob.stderr
+++ b/src/test/ui/consts/const-slice-oob.stderr
@@ -1,8 +1,8 @@
 error: any use of this value will cause an error
-  --> $DIR/const-slice-oob.rs:4:1
+  --> $DIR/const-slice-oob.rs:4:18
    |
 LL | const BAR: u32 = FOO[5];
-   | ^^^^^^^^^^^^^^^^^------^
+   | -----------------^^^^^^-
    |                  |
    |                  index out of bounds: the len is 3 but the index is 5
    |
diff --git a/src/test/ui/consts/dangling-alloc-id-ice.stderr b/src/test/ui/consts/dangling-alloc-id-ice.stderr
index 87f84480bf6..ba640b90e7d 100644
--- a/src/test/ui/consts/dangling-alloc-id-ice.stderr
+++ b/src/test/ui/consts/dangling-alloc-id-ice.stderr
@@ -1,11 +1,17 @@
 error: any use of this value will cause an error
   --> $DIR/dangling-alloc-id-ice.rs:8:1
    |
-LL | / const FOO: &() = {
-LL | |     let y = ();
-LL | |     unsafe { Foo { y: &y }.long_live_the_unit }
-LL | | };
-   | |__^ type validation failed: encountered dangling pointer in final constant
+LL |    const FOO: &() = {
+   |   _^
+   |  |_|
+   | ||
+LL | ||     let y = ();
+LL | ||     unsafe { Foo { y: &y }.long_live_the_unit }
+LL | || };
+   | ||  ^
+   | ||__|
+   | |___type validation failed: encountered dangling pointer in final constant
+   | 
    |
    = note: #[deny(const_err)] on by default
 
diff --git a/src/test/ui/consts/dangling_raw_ptr.stderr b/src/test/ui/consts/dangling_raw_ptr.stderr
index 0168c08f011..cedcbf819e2 100644
--- a/src/test/ui/consts/dangling_raw_ptr.stderr
+++ b/src/test/ui/consts/dangling_raw_ptr.stderr
@@ -1,11 +1,17 @@
 error: any use of this value will cause an error
   --> $DIR/dangling_raw_ptr.rs:1:1
    |
-LL | / const FOO: *const u32 = {
-LL | |     let x = 42;
-LL | |     &x
-LL | | };
-   | |__^ type validation failed: encountered dangling pointer in final constant
+LL |    const FOO: *const u32 = {
+   |   _^
+   |  |_|
+   | ||
+LL | ||     let x = 42;
+LL | ||     &x
+LL | || };
+   | ||  ^
+   | ||__|
+   | |___type validation failed: encountered dangling pointer in final constant
+   | 
    |
    = note: #[deny(const_err)] on by default
 
diff --git a/src/test/ui/error-codes/E0396-fixed.stderr b/src/test/ui/error-codes/E0396-fixed.stderr
index 2923d976628..4b7f1fa82c2 100644
--- a/src/test/ui/error-codes/E0396-fixed.stderr
+++ b/src/test/ui/error-codes/E0396-fixed.stderr
@@ -1,8 +1,8 @@
 error: any use of this value will cause an error
-  --> $DIR/E0396-fixed.rs:5:1
+  --> $DIR/E0396-fixed.rs:5:28
    |
 LL | const VALUE: u8 = unsafe { *REG_ADDR };
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^---------^^^
+   | ---------------------------^^^^^^^^^---
    |                            |
    |                            a memory access tried to interpret some bytes as a pointer
    |
diff --git a/src/test/ui/issues/issue-43105.stderr b/src/test/ui/issues/issue-43105.stderr
index 3cc0440d2c7..378fbe6d5c4 100644
--- a/src/test/ui/issues/issue-43105.stderr
+++ b/src/test/ui/issues/issue-43105.stderr
@@ -5,10 +5,10 @@ LL | const NUM: u8 = xyz();
    |                 ^^^^^
 
 error: any use of this value will cause an error
-  --> $DIR/issue-43105.rs:3:1
+  --> $DIR/issue-43105.rs:3:17
    |
 LL | const NUM: u8 = xyz();
-   | ^^^^^^^^^^^^^^^^-----^
+   | ----------------^^^^^-
    |                 |
    |                 calling non-const function `xyz`
    |