zed-industries/zed · error · syn::Error

#[gpui::bench] `group` requires `inputs`

Error message

#[gpui::bench] `group` requires `inputs`

What it means

Compile-time error from the #[gpui::bench] macro: the `group` option was given without `inputs`, but named benchmark groups only make sense for input-driven benchmarks. Fix by adding `inputs` or removing `group`.

Source

Thrown at crates/gpui_macros/src/bench.rs:120

                            report.clone(),
                        );
                        #inner_fn_name(input, &mut cx);
                        cx.teardown();
                    }
                });
            }
            group.finish();
            report.print(Some(stringify!(#outer_fn_name)));
        }
    } else {
        if let Some(input_name) = input_name {
            return error_to_stream(syn::Error::new(
                input_name.span(),
                "#[gpui::bench] `input_name` requires `inputs`",
            ));
        }
        if let Some(group_name) = group_name {
            return error_to_stream(syn::Error::new(
                group_name.span(),
                "#[gpui::bench] `group` requires `inputs`",
            ));
        }
        if sample_size.is_some() {
            return error_to_stream(syn::Error::new(
                proc_macro2::Span::call_site(),
                "#[gpui::bench] `sample_size` requires `inputs`",
            ));
        }
        quote! {
            let report = #report_expr;
            criterion.bench_function(stringify!(#outer_fn_name), {
                let report = report.clone();
                move |bencher| {
                    let mut cx = gpui::BenchAppContext::new_with_platform_and_report(
                        gpui::bench_platform(
                            Some(Box::new(|| {

View on GitHub (pinned to f4178619ac)

Solutions

  1. Add the inputs = [...] argument to the attribute
  2. Remove the group option
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at crates/gpui_macros/src/bench.rs:120 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of zed-industries/zed@f4178619ac (2026-08-20). Data as JSON: /api/errors/359822b5a3cc84ac. Report an issue: GitHub.