arbitrary icon indicating copy to clipboard operation
arbitrary copied to clipboard

#![no_std] Support

Open zer0x64 opened this issue 5 years ago • 2 comments

The Arbitrary crate isn't #[no_std], which prevent fuzzing #![no_std] crates. For now can be worked around by using #![cfg_attr(not(feature = "fuzzing), no_std)] at the top of the fuzzed crate instead of #![no_std], but it would be better not to need this workaround.

Although I don't really see a use case of doing the actual fuzzing in a #![no_std] environment, is would be nice not to need any reference to std in the fuzzed crate.

AFAIK, the arbitrary crate doesn't really rely on std features and pretty much everything required can be fetched from the alloc create.

I forked the crate and started to try to make the change. The first roadbump I encountered is the quote crate used in arbitrary-derive, so I might need to open a simillar issue over there.

zer0x64 avatar Apr 24 '20 14:04 zer0x64

Thanks for opening this issue. We'd accept a PR for this if someone makes the necessary changes, but it doesn't seem high enough priority at this time to keep this GitHub Issue open.

frewsxcv avatar Nov 22 '20 02:11 frewsxcv

After https://github.com/rust-fuzz/arbitrary/pull/63 merges, this will actually be a bit easier

frewsxcv avatar Nov 23 '20 23:11 frewsxcv