-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
Description
We should be able to parse any .fildesh script without crashing, deadlocking, or entering an infinite loop.
- No more bailouts in parse phase! Part of No more bailouts! #35.
- Create
//src:fildesh_builtin_lib
that's everything but the real main(). We'll have to split main() out to a main.c. - Parse scripts into an AST-like structure before interpreting their contents #86
- Give fildesh a main function that has FildeshX** and FildeshO** arrays alongside argv. We can use it to pass in data without actually doing file i/o.
- Add
-parse
flag that just parses the script. Includes are not exercised. - Fuzz test
fildesh -parse input.fildesh
by calling the main function directly, using a FildeshX to hold the input.fildesh fuzz bytes. - Make the fuzzer run cleanly. The parse phase doesn't actually do much, so hopefully this isn't much trouble.