diff options
Diffstat (limited to 'compiler/rustc_error_codes/src/error_codes/E0731.md')
-rw-r--r-- | compiler/rustc_error_codes/src/error_codes/E0731.md | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/compiler/rustc_error_codes/src/error_codes/E0731.md b/compiler/rustc_error_codes/src/error_codes/E0731.md new file mode 100644 index 000000000..096c053fe --- /dev/null +++ b/compiler/rustc_error_codes/src/error_codes/E0731.md @@ -0,0 +1,17 @@ +An enum with the representation hint `repr(transparent)` had zero or more than +one variants. + +Erroneous code example: + +```compile_fail,E0731 +#[repr(transparent)] +enum Status { // error: transparent enum needs exactly one variant, but has 2 + Errno(u32), + Ok, +} +``` + +Because transparent enums are represented exactly like one of their variants at +run time, said variant must be uniquely determined. If there is no variant, or +if there are multiple variants, it is not clear how the enum should be +represented. |