roc/crates/compiler/parse/fuzz
Joshua Warner 5f29402297
Give parser fuzzing some TLC
* The header + expr fuzzers can both be run again (header fuzzer had regressed).
* I ran the expr fuzzer for ~60 seconds with no additional panics uncovered
* "tab_crash" hit supposedly unreachable code in blankspace.rs - and I went to the liberty of dramatically simplifying all that code, rather than just trying to fix the bug
* Other failures were straight-forward error cases that should have been handled (and passed up the chain) instead of panicking
2022-12-11 08:39:52 -08:00
..
fuzz_targets moved all crates into seperate folder + related path fixes 2022-07-01 17:37:43 +02:00
.gitignore moved all crates into seperate folder + related path fixes 2022-07-01 17:37:43 +02:00
Cargo.lock Give parser fuzzing some TLC 2022-12-11 08:39:52 -08:00
Cargo.toml moved all crates into seperate folder + related path fixes 2022-07-01 17:37:43 +02:00
dict.txt Parse and format dbg 2022-11-22 21:08:26 -05:00
README.md Add missing h1s 2022-09-09 01:12:32 -06:00

fuzz

To setup fuzzing you will need to install cargo-fuzz and run with rust nightly:

$ cargo install cargo-fuzz
$ cargo +nightly fuzz run -j<cores> <target> -- -dict=dict.txt

The different targets can be found by running cargo fuzz list.

When a bug is found, it will be reported with commands to run it again and look for a minimized version. If you are going to file a bug, please minimize the input before filing the bug.