diff --git a/libafl/src/bolts/serdeany.rs b/libafl/src/bolts/serdeany.rs index c9ae9d4ab8..37a543093d 100644 --- a/libafl/src/bolts/serdeany.rs +++ b/libafl/src/bolts/serdeany.rs @@ -496,6 +496,7 @@ macro_rules! create_serde_registry_for_trait { create_serde_registry_for_trait!(serdeany_registry, crate::bolts::serdeany::SerdeAny); pub use serdeany_registry::*; +#[cfg(feature = "std")] #[macro_export] macro_rules! impl_serdeany { ($struct_name:ident) => { @@ -517,3 +518,19 @@ macro_rules! impl_serdeany { } }; } + +#[cfg(not(feature = "std"))] +#[macro_export] +macro_rules! impl_serdeany { + ($struct_name:ident) => { + impl $crate::bolts::serdeany::SerdeAny for $struct_name { + fn as_any(&self) -> &dyn core::any::Any { + self + } + + fn as_any_mut(&mut self) -> &mut dyn core::any::Any { + self + } + } + }; +}