Rollup merge of #53558 - davidtwco:issue-53547, r=estebank
Normalize source line and column numbers. Fixes #53547. r? @eddyb
This commit is contained in:
commit
95bdc6589b
@ -2,13 +2,13 @@ error[E0391]: cycle detected when computing layout of `Foo`
|
||||
|
|
||||
note: ...which requires normalizing `ParamEnvAnd { param_env: ParamEnv { caller_bounds: [], reveal: All }, value: [u8; _] }`...
|
||||
note: ...which requires const-evaluating `Foo::bytes::{{constant}}`...
|
||||
--> $SRC_DIR/libcore/mem.rs:323:14
|
||||
--> $SRC_DIR/libcore/mem.rs:LL:COL
|
||||
|
|
||||
LL | unsafe { intrinsics::size_of::<T>() }
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
= note: ...which again requires computing layout of `Foo`, completing the cycle
|
||||
note: cycle used when const-evaluating `Foo::bytes::{{constant}}`
|
||||
--> $SRC_DIR/libcore/mem.rs:323:14
|
||||
--> $SRC_DIR/libcore/mem.rs:LL:COL
|
||||
|
|
||||
LL | unsafe { intrinsics::size_of::<T>() }
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -30,7 +30,7 @@ error[E0643]: method `hash` has incompatible signature for trait
|
||||
LL | fn hash(&self, hasher: &mut impl Hasher) {}
|
||||
| ^^^^^^^^^^^ expected generic parameter, found `impl Trait`
|
||||
|
|
||||
::: $SRC_DIR/libcore/hash/mod.rs:185:13
|
||||
::: $SRC_DIR/libcore/hash/mod.rs:LL:COL
|
||||
|
|
||||
LL | fn hash<H: Hasher>(&self, state: &mut H);
|
||||
| - declaration in trait here
|
||||
|
@ -2963,6 +2963,13 @@ impl<'test> TestCx<'test> {
|
||||
normalized = normalized.replace("\\n", "\n");
|
||||
}
|
||||
|
||||
// If there are `$SRC_DIR` normalizations with line and column numbers, then replace them
|
||||
// with placeholders as we do not want tests needing updated when compiler source code
|
||||
// changes.
|
||||
// eg. $SRC_DIR/libcore/mem.rs:323:14 becomes $SRC_DIR/libcore/mem.rs:LL:COL
|
||||
normalized = Regex::new("SRC_DIR(.+):\\d+:\\d+").unwrap()
|
||||
.replace_all(&normalized, "SRC_DIR$1:LL:COL").into_owned();
|
||||
|
||||
normalized = normalized.replace("\\\\", "\\") // denormalize for paths on windows
|
||||
.replace("\\", "/") // normalize for paths on windows
|
||||
.replace("\r\n", "\n") // normalize for linebreaks on windows
|
||||
|
Loading…
x
Reference in New Issue
Block a user