E0084 - Error codes index
Description: Book listing all Rust error codes

## Keyboard shortcuts

Press `←` or `→` to navigate between chapters

Press `S` or `/` to search in the book

Press `?` to show this help

Press `Esc` to hide this help

# Error code E0084

An unsupported representation was attempted on a zero-variant enum.

Erroneous code example:

    #![allow(unused)]
    fn main() {
    #[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:

    #![allow(unused)]
    fn main() {
    #[repr(i32)]
    enum NightsWatch {
        JonSnow,
        Commander,
    }
    }

or you remove the integer representation of your enum:

    #![allow(unused)]
    fn main() {
    enum NightsWatch {}
    }