| #### Note: this error code is no longer emitted by the compiler. |
| |
| This error indicates that an empty match expression is invalid because the type |
| it is matching on is non-empty (there exist values of this type). In safe code |
| it is impossible to create an instance of an empty type, so empty match |
| expressions are almost never desired. This error is typically fixed by adding |
| one or more cases to the match expression. |
| |
| An example of an empty type is `enum Empty { }`. So, the following will work: |
| |
| ``` |
| enum Empty {} |
| |
| fn foo(x: Empty) { |
| match x { |
| // empty |
| } |
| } |
| ``` |
| |
| However, this won't: |
| |
| ```compile_fail |
| fn foo(x: Option<String>) { |
| match x { |
| // empty |
| } |
| } |
| ``` |