diff --git a/crates/bevy_ecs/src/system/builder.rs b/crates/bevy_ecs/src/system/builder.rs index ea5b070010b2d..b9734e41774e8 100644 --- a/crates/bevy_ecs/src/system/builder.rs +++ b/crates/bevy_ecs/src/system/builder.rs @@ -194,7 +194,8 @@ unsafe impl< } macro_rules! impl_system_param_builder_tuple { - ($(($param: ident, $builder: ident)),*) => { + ($(#[$meta:meta])* $(($param: ident, $builder: ident)),*) => { + $(#[$meta])* // SAFETY: implementors of each `SystemParamBuilder` in the tuple have validated their impls unsafe impl<$($param: SystemParam,)* $($builder: SystemParamBuilder<$param>,)*> SystemParamBuilder<($($param,)*)> for ($($builder,)*) { fn build(self, _world: &mut World, _meta: &mut SystemMeta) -> <($($param,)*) as SystemParam>::State { @@ -207,7 +208,14 @@ macro_rules! impl_system_param_builder_tuple { }; } -all_tuples!(impl_system_param_builder_tuple, 0, 16, P, B); +all_tuples!( + #[doc(fake_variadic)] + impl_system_param_builder_tuple, + 0, + 16, + P, + B +); // SAFETY: implementors of each `SystemParamBuilder` in the vec have validated their impls unsafe impl> SystemParamBuilder> for Vec {