diff --git a/Cargo.toml b/Cargo.toml index ccbd02c313c..bf3d7dc07f3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -49,7 +49,7 @@ memchr = "2.1.3" num_cpus = "1.0" opener = "0.4" percent-encoding = "2.0" -rustfix = "0.5.0" +rustfix = "0.6.0" semver = { version = "1.0.3", features = ["serde"] } serde = { version = "1.0.123", features = ["derive"] } serde_ignored = "0.1.0" diff --git a/tests/testsuite/fix.rs b/tests/testsuite/fix.rs index e6a733a6539..177d3ea11a4 100644 --- a/tests/testsuite/fix.rs +++ b/tests/testsuite/fix.rs @@ -1495,3 +1495,23 @@ The following differences were detected with the current configuration: ") .run(); } + +#[cargo_test] +fn rustfix_handles_multi_spans() { + // Checks that rustfix handles a single diagnostic with multiple + // suggestion spans (non_fmt_panic in this case). + let p = project() + .file("Cargo.toml", &basic_manifest("foo", "0.1.0")) + .file( + "src/lib.rs", + r#" + pub fn foo() { + panic!(format!("hey")); + } + "#, + ) + .build(); + + p.cargo("fix --allow-no-vcs").run(); + assert!(p.read_file("src/lib.rs").contains(r#"panic!("hey");"#)); +}