|
1 | | -// aux-build:proc_macro_with_span.rs |
2 | 1 | // run-rustfix |
3 | | -#![feature(custom_inner_attributes)] |
4 | 2 | #![warn(clippy::uninlined_format_args)] |
5 | | -#![allow(named_arguments_used_positionally, unused_imports, unused_macros, unused_variables)] |
6 | | -#![allow(clippy::eq_op, clippy::format_in_format_args, clippy::print_literal)] |
7 | 3 |
|
8 | | -extern crate proc_macro_with_span; |
9 | | -use proc_macro_with_span::with_span; |
10 | | - |
11 | | -macro_rules! no_param_str { |
12 | | - () => { |
13 | | - "{}" |
14 | | - }; |
15 | | -} |
16 | | - |
17 | | -macro_rules! my_println { |
18 | | - ($($args:tt),*) => {{ |
19 | | - println!($($args),*) |
20 | | - }}; |
21 | | -} |
22 | | - |
23 | | -macro_rules! my_println_args { |
24 | | - ($($args:tt),*) => {{ |
25 | | - println!("foo: {}", format_args!($($args),*)) |
26 | | - }}; |
27 | | -} |
28 | | - |
29 | | -fn tester(fn_arg: i32) { |
| 4 | +fn main() { |
30 | 5 | let local_i32 = 1; |
31 | 6 | let local_f64 = 2.0; |
32 | 7 | let local_opt: Option<i32> = Some(3); |
33 | | - let width = 4; |
34 | | - let prec = 5; |
35 | | - let val = 6; |
36 | | - |
37 | | - // make sure this file hasn't been corrupted with tabs converted to spaces |
38 | | - // let _ = ' '; // <- this is a single tab character |
39 | | - let _: &[u8; 3] = b" "; // <- <tab><space><tab> |
40 | 8 |
|
41 | 9 | println!("val='{local_i32}'"); |
42 | | - println!("val='{local_i32}'"); // 3 spaces |
43 | | - println!("val='{local_i32}'"); // tab |
44 | | - println!("val='{local_i32}'"); // space+tab |
45 | | - println!("val='{local_i32}'"); // tab+space |
46 | | - println!( |
47 | | - "val='{local_i32}'" |
48 | | - ); |
49 | | - println!("{local_i32}"); |
50 | | - println!("{fn_arg}"); |
51 | | - println!("{local_i32:?}"); |
52 | | - println!("{local_i32:#?}"); |
53 | | - println!("{local_i32:4}"); |
54 | | - println!("{local_i32:04}"); |
55 | | - println!("{local_i32:<3}"); |
56 | | - println!("{local_i32:#010x}"); |
57 | | - println!("{local_f64:.1}"); |
58 | | - println!("Hello {} is {local_f64:.local_i32$}", "x"); |
| 10 | + println!("Hello x is {local_f64:.local_i32$}"); |
59 | 11 | println!("Hello {local_i32} is {local_f64:.*}", 5); |
60 | 12 | println!("Hello {local_i32} is {local_f64:.*}", 5); |
61 | | - println!("{local_i32} {local_f64}"); |
62 | 13 | println!("{local_i32}, {}", local_opt.unwrap()); |
63 | | - println!("{val}"); |
64 | | - println!("{val}"); |
65 | | - println!("{} {1}", local_i32, 42); |
66 | | - println!("val='{local_i32}'"); |
67 | | - println!("val='{local_i32}'"); |
68 | | - println!("val='{local_i32}'"); |
69 | | - println!("val='{fn_arg}'"); |
70 | | - println!("{local_i32}"); |
71 | | - println!("{local_i32:?}"); |
72 | | - println!("{local_i32:#?}"); |
73 | | - println!("{local_i32:04}"); |
74 | | - println!("{local_i32:<3}"); |
75 | | - println!("{local_i32:#010x}"); |
76 | | - println!("{local_f64:.1}"); |
77 | | - println!("{local_i32} {local_i32}"); |
78 | | - println!("{local_f64} {local_i32} {local_i32} {local_f64}"); |
79 | | - println!("{local_i32} {local_f64}"); |
80 | | - println!("{local_f64} {local_i32}"); |
81 | | - println!("{local_f64} {local_i32} {local_f64} {local_i32}"); |
82 | | - println!("{1} {0}", "str", local_i32); |
83 | | - println!("{local_i32}"); |
84 | | - println!("{local_i32:width$}"); |
85 | | - println!("{local_i32:width$}"); |
86 | | - println!("{local_i32:.prec$}"); |
87 | | - println!("{local_i32:.prec$}"); |
88 | | - println!("{val:val$}"); |
89 | | - println!("{val:val$}"); |
90 | | - println!("{val:val$.val$}"); |
91 | | - println!("{val:val$.val$}"); |
92 | | - println!("{val:val$.val$}"); |
93 | | - println!("{val:val$.val$}"); |
94 | | - println!("{val:val$.val$}"); |
95 | | - println!("{val:val$.val$}"); |
96 | | - println!("{val:val$.val$}"); |
97 | | - println!("{val:val$.val$}"); |
98 | | - println!("{width:width$}"); |
99 | | - println!("{local_i32:width$}"); |
100 | | - println!("{width:width$}"); |
101 | | - println!("{local_i32:width$}"); |
102 | | - println!("{prec:.prec$}"); |
103 | | - println!("{local_i32:.prec$}"); |
104 | | - println!("{prec:.prec$}"); |
105 | | - println!("{local_i32:.prec$}"); |
106 | | - println!("{width:width$.prec$}"); |
107 | | - println!("{width:width$.prec$}"); |
108 | | - println!("{local_f64:width$.prec$}"); |
109 | | - println!("{local_f64:width$.prec$} {local_f64} {width} {prec}"); |
110 | | - println!( |
111 | | - "{local_i32:width$.prec$} {local_i32:prec$.width$} {width:local_i32$.prec$} {width:prec$.local_i32$} {prec:local_i32$.width$} {prec:width$.local_i32$}", |
112 | | - ); |
113 | | - println!( |
114 | | - "{0:1$.2$} {0:2$.1$} {1:0$.2$} {1:2$.0$} {2:0$.1$} {2:1$.0$} {3}", |
115 | | - local_i32, |
116 | | - width, |
117 | | - prec, |
118 | | - 1 + 2 |
119 | | - ); |
120 | | - println!("Width = {local_i32}, value with width = {local_f64:local_i32$}"); |
121 | | - println!("{local_i32:width$.prec$}"); |
122 | | - println!("{width:width$.prec$}"); |
123 | | - println!("{}", format!("{local_i32}")); |
124 | | - my_println!("{}", local_i32); |
125 | | - my_println_args!("{}", local_i32); |
126 | | - |
127 | | - // these should NOT be modified by the lint |
128 | | - println!(concat!("nope ", "{}"), local_i32); |
129 | | - println!("val='{local_i32}'"); |
130 | | - println!("val='{local_i32 }'"); |
131 | | - println!("val='{local_i32 }'"); // with tab |
132 | | - println!("val='{local_i32\n}'"); |
133 | | - println!("{}", usize::MAX); |
134 | | - println!("{}", local_opt.unwrap()); |
135 | | - println!( |
136 | | - "val='{local_i32 |
137 | | - }'" |
138 | | - ); |
139 | | - println!(no_param_str!(), local_i32); |
140 | | - |
141 | | - println!( |
142 | | - "{val}", |
143 | | - ); |
144 | | - println!("{val}"); |
145 | | - |
146 | | - println!(with_span!("{0} {1}" "{1} {0}"), local_i32, local_f64); |
147 | | - println!("{}", with_span!(span val)); |
148 | | - |
149 | | - if local_i32 > 0 { |
150 | | - panic!("p1 {local_i32}"); |
151 | | - } |
152 | | - if local_i32 > 0 { |
153 | | - panic!("p2 {local_i32}"); |
154 | | - } |
155 | | - if local_i32 > 0 { |
156 | | - panic!("p3 {local_i32}"); |
157 | | - } |
158 | | - if local_i32 > 0 { |
159 | | - panic!("p4 {local_i32}"); |
160 | | - } |
161 | | -} |
162 | | - |
163 | | -fn main() { |
164 | | - tester(42); |
165 | | -} |
166 | | - |
167 | | -fn _under_msrv() { |
168 | | - #![clippy::msrv = "1.57"] |
169 | | - let local_i32 = 1; |
170 | | - println!("don't expand='{}'", local_i32); |
171 | | -} |
172 | | - |
173 | | -fn _meets_msrv() { |
174 | | - #![clippy::msrv = "1.58"] |
175 | | - let local_i32 = 1; |
176 | | - println!("expand='{local_i32}'"); |
177 | 14 | } |
0 commit comments