Commit 1451099
authored
Rollup merge of #157033 - anoshyn:issue-116572-irrefutable-while-let-note, r=Nadrieril
Note irrefutable while let in loop type errors
When a while-let loop is used where a non-unit value is expected, rustc already notes that while loops evaluate to unit. For simple irrefutable while-let patterns, add an extra note explaining that the pattern always matches and the loop condition never fails. Covers binding, wildcard, and tuples made from those patterns.
Fixes #116572.
Tested with: ```./x test tests/ui/coercion/coerce-loop-issue-122561.rs --bless```3 files changed
Lines changed: 97 additions & 7 deletions
File tree
- compiler/rustc_hir_typeck/src
- tests/ui/coercion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1881 | 1881 | | |
1882 | 1882 | | |
1883 | 1883 | | |
1884 | | - | |
| 1884 | + | |
1885 | 1885 | | |
1886 | 1886 | | |
1887 | 1887 | | |
| |||
1894 | 1894 | | |
1895 | 1895 | | |
1896 | 1896 | | |
| 1897 | + | |
| 1898 | + | |
| 1899 | + | |
| 1900 | + | |
| 1901 | + | |
| 1902 | + | |
| 1903 | + | |
| 1904 | + | |
1897 | 1905 | | |
1898 | 1906 | | |
1899 | 1907 | | |
| |||
2126 | 2134 | | |
2127 | 2135 | | |
2128 | 2136 | | |
| 2137 | + | |
| 2138 | + | |
| 2139 | + | |
| 2140 | + | |
| 2141 | + | |
| 2142 | + | |
| 2143 | + | |
| 2144 | + | |
| 2145 | + | |
| 2146 | + | |
| 2147 | + | |
| 2148 | + | |
| 2149 | + | |
| 2150 | + | |
| 2151 | + | |
| 2152 | + | |
| 2153 | + | |
| 2154 | + | |
2129 | 2155 | | |
2130 | 2156 | | |
2131 | 2157 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
69 | 69 | | |
70 | 70 | | |
71 | 71 | | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
72 | 90 | | |
73 | 91 | | |
74 | 92 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| |||
171 | 171 | | |
172 | 172 | | |
173 | 173 | | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
174 | 220 | | |
175 | 221 | | |
176 | 222 | | |
| |||
188 | 234 | | |
189 | 235 | | |
190 | 236 | | |
191 | | - | |
| 237 | + | |
192 | 238 | | |
193 | 239 | | |
194 | 240 | | |
| |||
203 | 249 | | |
204 | 250 | | |
205 | 251 | | |
206 | | - | |
| 252 | + | |
207 | 253 | | |
208 | 254 | | |
209 | 255 | | |
| |||
218 | 264 | | |
219 | 265 | | |
220 | 266 | | |
221 | | - | |
| 267 | + | |
222 | 268 | | |
223 | 269 | | |
224 | 270 | | |
| |||
233 | 279 | | |
234 | 280 | | |
235 | 281 | | |
236 | | - | |
| 282 | + | |
237 | 283 | | |
238 | 284 | | |
239 | 285 | | |
| |||
244 | 290 | | |
245 | 291 | | |
246 | 292 | | |
247 | | - | |
| 293 | + | |
248 | 294 | | |
249 | 295 | | |
0 commit comments