Fuzzed - a program to find DMDFE parser crash
Basile B.
b2.temp at gmx.com
Sat Dec 15 11:29:45 UTC 2018
Fuzzed [1] is a simple fuzzer for the D programming language. It
allows to detect sequences of tokens that crash the parser. While
the D front end is not yet used to make tools, if this ever
happens the parser will have to accept invalid code. As
experienced with dparse, invalid code tend to crash more a parser
because of a cognitive bias that lead us, "hoomans", to prove
that things work rather than the opposite.
You can run it on one your core, report the crasher programs to
the project issue tracker or fix them yourself:
> gdb dmd
> run <the_crasher>
> bt
And then try to see what happens in the parser at the location
pointed on top of the back trace. Note that you'll need to build
dmd debug version.
The time to write this announce, already 5 "crashers" found.
[1] https://github.com/BBasile/fuzzed
More information about the Digitalmars-d-announce
mailing list