{"record":{"id":"04604ca61c259c31","repo":"zed-industries/zed","slug":"invalid-path-argument","errorCode":null,"errorMessage":"invalid path argument","messagePattern":"invalid path argument","errorType":"validation","errorClass":"syn::Error","httpStatus":null,"severity":"error","filePath":"crates/gpui_macros/src/test.rs","lineNumber":35,"sourceCode":"    on_failure_fn_name: proc_macro2::TokenStream,\n}\n\nimpl Parse for Args {\n    fn parse(input: ParseStream) -> Result<Self, syn::Error> {\n        let mut seeds = Vec::<u64>::new();\n        let mut max_retries = 0;\n        let mut max_iterations = 1;\n        let mut on_failure_fn_name = quote!(None);\n\n        let metas = Punctuated::<Meta, Token![,]>::parse_terminated(input)?;\n\n        for meta in metas {\n            let ident = {\n                let meta_path = match &meta {\n                    Meta::NameValue(meta) => &meta.path,\n                    Meta::List(list) => &list.path,\n                    Meta::Path(path) => {\n                        return Err(syn::Error::new(path.span(), \"invalid path argument\"));\n                    }\n                };\n                let Some(ident) = meta_path.get_ident() else {\n                    return Err(syn::Error::new(meta_path.span(), \"unexpected path\"));\n                };\n                ident.to_string()\n            };\n\n            match (&meta, ident.as_str()) {\n                (Meta::NameValue(meta), \"retries\") => {\n                    max_retries = parse_usize_from_expr(&meta.value)?\n                }\n                (Meta::NameValue(meta), \"iterations\") => {\n                    max_iterations = parse_usize_from_expr(&meta.value)?\n                }\n                (Meta::NameValue(meta), \"on_failure\") => {\n                    let Expr::Lit(ExprLit {\n                        lit: Lit::Str(name),","sourceCodeStart":17,"sourceCodeEnd":53,"githubUrl":"https://github.com/zed-industries/zed/blob/f4178619acd0d47ea1f76a2025c42962c6d6638c/crates/gpui_macros/src/test.rs#L17-L53","documentation":"Returned by the syn parser for #[gpui::test] macro arguments when a bare path meta (a path with no value or list) is encountered where a named argument like retries = N, seed = [...], or on_failure = \"...\" was expected. The invalid path argument is the macro input at fault.","triggerScenarios":"Thrown at crates/gpui_macros/src/test.rs:35 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use only supported simple option names (retries, iterations, seed, seeds, on_failure, ...)","Fix the malformed attribute syntax"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"f4178619acd0d47ea1f76a2025c42962c6d6638c","analyzedAt":"2026-08-20T19:29:52.058Z","contentChangedAt":"2026-08-20T19:29:52.058Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}