{"record":{"id":"ae72bd440b85aa17","repo":"DioxusLabs/dioxus","slug":"illegal-setting-field-is-already-already","errorCode":null,"errorMessage":"Illegal setting - field is already ${already}","messagePattern":"Illegal setting - field is already (.+?)","errorType":"validation","errorClass":"syn::Error","httpStatus":null,"severity":"error","filePath":"packages/core-macro/src/props/mod.rs","lineNumber":431,"sourceCode":"                                    .unwrap(),\n                            );\n                            self.strip_option = true;\n                            Ok(())\n                        }\n\n                        \"extend\" => {\n                            self.extends.push(path.path);\n                            Ok(())\n                        }\n\n                        _ => {\n                            macro_rules! handle_fields {\n                                ( $( $flag:expr, $field:ident, $already:expr; )* ) => {\n                                    match name.as_str() {\n                                        $(\n                                            $flag => {\n                                                if self.$field {\n                                                    Err(Error::new(path.span(), concat!(\"Illegal setting - field is already \", $already)))\n                                                } else {\n                                                    self.$field = true;\n                                                    Ok(())\n                                                }\n                                            }\n                                        )*\n                                        _ => Err(Error::new_spanned(\n                                                &path,\n                                                format!(\"Unknown setter parameter {:?}\", name),\n                                        ))\n                                    }\n                                }\n                            }\n                            handle_fields!(\n                                \"skip\", skip, \"skipped\";\n                                \"into\", auto_into, \"calling into() on the argument\";\n                                \"displayable\", from_displayable, \"calling to_string() on the argument\";\n                                \"strip_option\", strip_option, \"putting the argument in Some(...)\";","sourceCodeStart":413,"sourceCodeEnd":449,"githubUrl":"https://github.com/DioxusLabs/dioxus/blob/24f6a829df0dfa203961a98ea4cae21c2ff27e28/packages/core-macro/src/props/mod.rs#L413-L449","documentation":"Guard in FieldInfo::apply_meta (builder attribute parsing): a field received a second conflicting builder attribute (e.g. two of default/optional/strip_option or a flag already set by `extend` handling). The faulting input is the duplicate #[props(...)] flag on the same field; remove one of the conflicting attributes.","triggerScenarios":"Thrown at packages/core-macro/src/props/mod.rs:431 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Remove the duplicate or conflicting field attribute; the field already has the indicated setting applied, so keep only one of them."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"24f6a829df0dfa203961a98ea4cae21c2ff27e28","analyzedAt":"2026-08-23T07:10:14.078Z","contentChangedAt":"2026-08-23T07:10:14.078Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}