| An unsupported representation was attempted on a zero-variant enum. |
| |
| Erroneous code example: |
| |
| ```compile_fail,E0084 |
| #[repr(i32)] |
| enum NightsWatch {} // error: unsupported representation for zero-variant enum |
| ``` |
| |
| It is impossible to define an integer type to be used to represent zero-variant |
| enum values because there are no zero-variant enum values. There is no way to |
| construct an instance of the following type using only safe code. So you have |
| two solutions. Either you add variants in your enum: |
| |
| ``` |
| #[repr(i32)] |
| enum NightsWatch { |
| JonSnow, |
| Commander, |
| } |
| ``` |
| |
| or you remove the integer representation of your enum: |
| |
| ``` |
| enum NightsWatch {} |
| ``` |