| #### Note: this error code is no longer emitted by the compiler. | |
| A `while let` pattern attempts to match the pattern, and enters the body if the | |
| match was successful. If the match is irrefutable (when it cannot fail to | |
| match), use a regular `let`-binding inside a `loop` instead. For instance: | |
| ```no_run | |
| struct Irrefutable(i32); | |
| let irr = Irrefutable(0); | |
| // This fails to compile because the match is irrefutable. | |
| while let Irrefutable(x) = irr { | |
| // ... | |
| } | |
| ``` | |
| Try this instead: | |
| ```no_run | |
| struct Irrefutable(i32); | |
| let irr = Irrefutable(0); | |
| loop { | |
| let Irrefutable(x) = irr; | |
| // ... | |
| } | |
| ``` |