mean_adv's w_term_ma_zt_lhs takes weights_zt2zm(ngrdcol,nzm,t_above:t_below) where t_above = 1, t_below = 2 are private parameters of the same module. The generated adapter declares real(8), intent(in) :: weights_zt2zm(ngrdcol, nzm, t_below) and f2py's C emits weights_zt2zm_Dims[2]=t_below, which fails to compile (use of undeclared identifier 't_below'). The plan should fold a parameter of the unit (or of a constants module) in a declared bound to its value, or the adapter should use <unit>, only: t_below -- and a non-unit lower bound (t_above:t_below) should become an extent, not the upper-bound name.
Found 2026-09-03 running the recast-clubb extension's tier-0 units (CLUBB_core of larson-group/clubb_release at 8ab3902, double precision, statistics off).
mean_adv's
w_term_ma_zt_lhstakesweights_zt2zm(ngrdcol,nzm,t_above:t_below)wheret_above = 1, t_below = 2are private parameters of the same module. The generated adapter declaresreal(8), intent(in) :: weights_zt2zm(ngrdcol, nzm, t_below)and f2py's C emitsweights_zt2zm_Dims[2]=t_below, which fails to compile (use of undeclared identifier 't_below'). The plan should fold a parameter of the unit (or of a constants module) in a declared bound to its value, or the adapter shoulduse <unit>, only: t_below-- and a non-unit lower bound (t_above:t_below) should become an extent, not the upper-bound name.Found 2026-09-03 running the recast-clubb extension's tier-0 units (CLUBB_core of larson-group/clubb_release at 8ab3902, double precision, statistics off).