|  | error[E0005]: refutable pattern in local binding | 
|  | --> $DIR/empty-never-array.rs:12:9 | 
|  | | | 
|  | LL |     let Helper::U(u) = Helper::T(t, []); | 
|  | |         ^^^^^^^^^^^^ pattern `Helper::T(_, _)` not covered | 
|  | | | 
|  | = note: `let` bindings require an "irrefutable pattern", like a `struct` or an `enum` with only one variant | 
|  | = note: for more information, visit https://doc.rust-lang.org/book/ch19-02-refutability.html | 
|  | note: `Helper<T, U>` defined here | 
|  | --> $DIR/empty-never-array.rs:5:6 | 
|  | | | 
|  | LL | enum Helper<T, U> { | 
|  | |      ^^^^^^ | 
|  | LL |     T(T, [!; 0]), | 
|  | |     - not covered | 
|  | = note: the matched value is of type `Helper<T, U>` | 
|  | help: you might want to use `let else` to handle the variant that isn't matched | 
|  | | | 
|  | LL |     let Helper::U(u) = Helper::T(t, []) else { todo!() }; | 
|  | |                                         ++++++++++++++++ | 
|  |  | 
|  | error: aborting due to 1 previous error | 
|  |  | 
|  | For more information about this error, try `rustc --explain E0005`. |