rust/tests/ui/macros/issue-99265.fixed
2024-02-16 20:02:50 +00:00

140 lines
7.9 KiB
Rust

//@ check-pass
//@ run-rustfix
fn main() {
println!("{b} {a}", a=1, b=2);
//~^ WARNING named argument `a` is not used by name [named_arguments_used_positionally]
//~| HELP use the named argument by name to avoid ambiguity
println!("{} {a} {b} {c} {d}", 0, a=1, b=2, c=3, d=4);
//~^ WARNING named argument `a` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `b` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `c` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `d` is not used by name [named_arguments_used_positionally]
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
println!("Hello {:width$}!", "x", width = 5);
//~^ WARNING named argument `width` is not used by name [named_arguments_used_positionally
//~| HELP use the named argument by name to avoid ambiguity
println!("Hello {f:width$.precision$}!", f = 0.02f32, width = 5, precision = 2);
//~^ WARNING named argument `width` is not used by name [named_arguments_used_positionally
//~| WARNING named argument `precision` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `f` is not used by name [named_arguments_used_positionally]
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
println!("Hello {f:width$.precision$}!", f = 0.02f32, width = 5, precision = 2);
//~^ WARNING named argument `width` is not used by name [named_arguments_used_positionally
//~| WARNING named argument `precision` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `f` is not used by name [named_arguments_used_positionally]
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
println!(
"{}, Hello {f:width$.precision$} {g:width2$.precision2$}! {f}",
//~^ HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
1,
f = 0.02f32,
//~^ WARNING named argument `f` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `f` is not used by name [named_arguments_used_positionally]
width = 5,
//~^ WARNING named argument `width` is not used by name [named_arguments_used_positionally
precision = 2,
//~^ WARNING named argument `precision` is not used by name [named_arguments_used_positionally]
g = 0.02f32,
//~^ WARNING named argument `g` is not used by name [named_arguments_used_positionally]
width2 = 5,
//~^ WARNING named argument `width2` is not used by name [named_arguments_used_positionally
precision2 = 2
//~^ WARNING named argument `precision2` is not used by name [named_arguments_used_positionally]
);
println!("Hello {f:0.1}!", f = 0.02f32);
//~^ WARNING named argument `f` is not used by name [named_arguments_used_positionally]
//~| HELP use the named argument by name to avoid ambiguity
println!("Hello {f:0.1}!", f = 0.02f32);
//~^ WARNING named argument `f` is not used by name [named_arguments_used_positionally]
//~| HELP use the named argument by name to avoid ambiguity
println!("Hello {f:width$.precision$}!", f = 0.02f32, width = 5, precision = 2);
let width = 5;
let precision = 2;
println!("Hello {f:width$.precision$}!", f = 0.02f32);
let val = 5;
println!("{v:v$}", v = val);
//~^ WARNING named argument `v` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `v` is not used by name [named_arguments_used_positionally]
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
println!("{v:v$}", v = val);
//~^ WARNING named argument `v` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `v` is not used by name [named_arguments_used_positionally]
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
println!("{v:v$.v$}", v = val);
//~^ WARNING named argument `v` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `v` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `v` is not used by name [named_arguments_used_positionally]
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
println!("{v:v$.v$}", v = val);
//~^ WARNING named argument `v` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `v` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `v` is not used by name [named_arguments_used_positionally]
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
println!("{a} {a} {a}", a = 1);
//~^ WARNING named argument `a` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `a` is not used by name [named_arguments_used_positionally]
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
println!("aaaaaaaaaaaaaaa\
{a:b$.c$}",
//~^ HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
a = 1.0, b = 1, c = 2,
//~^ WARNING named argument `a` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `b` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `c` is not used by name [named_arguments_used_positionally]
);
println!("aaaaaaaaaaaaaaa\
{a:b$.c$}",
//~^ HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
a = 1.0, b = 1, c = 2,
//~^ WARNING named argument `a` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `b` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `c` is not used by name [named_arguments_used_positionally]
);
println!("{{{x:width$.precision$}}}", x = 1.0, width = 3, precision = 2);
//~^ WARNING named argument `x` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `width` is not used by name [named_arguments_used_positionally]
//~| WARNING named argument `precision` is not used by name [named_arguments_used_positionally]
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
//~| HELP use the named argument by name to avoid ambiguity
}