de0b511daa
macros: diagnostic derive on enums Part of #100717. Extends `#[derive(Diagnostic)]` to work on enums too where each variant acts like a distinct diagnostic - being able to represent diagnostics this way can be quite a bit simpler for some parts of the compiler. r? `@compiler-errors` cc `@Xiretza`