Fuzzing on MacOS (i.e. actual fuzzing not just running the inputs through the fuzz binary) is known to be brittle and we’ve had plenty of issues reported to us showcasing this:
The solution usually involves something along the lines of waiting for a brew llvm update or adding macOS specific hints to our documentation. These issues can however also depend on specific macOS versions, and our hints might not be accurate for every version or get stale with time.
I usually don’t chime in on these issues because I don’t have a Mac and afaik, all serious fuzzing (at scale & automated) for us (and most other projects) happens on Linux.
I think there are two options:
- Keep the current approach and fix/document as issues are reported.
- Deprecate “official” support for fuzzing on macOS and add a section to the docs about using Linux instead (e.g. to use a VM or VPS). MacOS users will still be able to fuzz on a their Mac but it won’t be on us to triage the issues for their specific setup.
I’d prefer option 2).