{"record":{"id":"cc1006dbc6ca408e","repo":"DioxusLabs/dioxus","slug":"enums-must-be-repr-u","errorCode":null,"errorMessage":"Enums must be repr(u*)","messagePattern":"Enums must be repr\\(u\\*\\)","errorType":"validation","errorClass":"syn::Error","httpStatus":null,"severity":"error","filePath":"packages/const-serialize-macro/src/lib.rs","lineNumber":156,"sourceCode":"                            Err(meta.error(\"unrecognized repr\"))\n                        })\n                    {\n                        return err.to_compile_error().into();\n                    }\n                }\n\n                let variants_have_fields = data\n                    .variants\n                    .iter()\n                    .any(|variant| !variant.fields.is_empty());\n                if !repr_c && variants_have_fields {\n                    return syn::Error::new(input.ident.span(), \"Enums must be repr(C, u*)\")\n                        .to_compile_error()\n                        .into();\n                }\n\n                if discriminant_size.is_none() {\n                    return syn::Error::new(input.ident.span(), \"Enums must be repr(u*)\")\n                        .to_compile_error()\n                        .into();\n                }\n\n                let ty = &input.ident;\n                let (impl_generics, ty_generics, where_clause) = input.generics.split_for_impl();\n                let mut where_clause = where_clause.cloned();\n                add_bounds(&mut where_clause, &input.generics, &krate);\n                let mut last_discriminant = None;\n                let variants = data.variants.iter().map(|variant| {\n                    let discriminant = variant\n                        .discriminant\n                        .as_ref()\n                        .map(|(_, discriminant)| discriminant.to_token_stream())\n                        .unwrap_or_else(|| match &last_discriminant {\n                            Some(discriminant) => quote! { #discriminant + 1 },\n                            None => {\n                                quote! { 0 }","sourceCodeStart":138,"sourceCodeEnd":174,"githubUrl":"https://github.com/DioxusLabs/dioxus/blob/393d190a801ccb441d41923e232289b4f8a5c669/packages/const-serialize-macro/src/lib.rs#L138-L174","documentation":"Error \"Enums must be repr(u*)\" thrown in DioxusLabs/dioxus.","triggerScenarios":"Thrown at packages/const-serialize-macro/src/lib.rs:156 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"393d190a801ccb441d41923e232289b4f8a5c669","analyzedAt":"2026-08-16T11:27:45.815Z","schemaVersion":2},"datasetVersion":"2026-08-16T13:17:31.715Z"}