Re: Fuzzed - a program to find DMDFE parser crash

2018-12-15 Thread Basile B. via Digitalmars-d-announce
On Saturday, 15 December 2018 at 21:09:12 UTC, Sebastiaan Koppe wrote: On Saturday, 15 December 2018 at 15:37:19 UTC, Basile B. wrote: I think this is what Walter calls "AST poisoning" (never understood how it worked before today). And the whole parser is like this. This poisoning kills the

Re: Fuzzed - a program to find DMDFE parser crash

2018-12-15 Thread Basile B. via Digitalmars-d-announce
On Sunday, 16 December 2018 at 01:57:17 UTC, Walter Bright wrote: On 12/15/2018 2:48 PM, Neia Neutuladh wrote: The way to fix this is to replace the entire parser and get rid of the idea of AST poisoning; at the first error, you give up on parsing the entire file. From there, you can try

Re: Fuzzed - a program to find DMDFE parser crash

2018-12-15 Thread Basile B. via Digitalmars-d-announce
On Saturday, 15 December 2018 at 22:48:01 UTC, Neia Neutuladh wrote: The way to fix this is to replace the entire parser and get rid of the idea of AST poisoning; at the first error, you give up on parsing the entire file. From there, you can try recovering from specific errors with proper

Re: Fuzzed - a program to find DMDFE parser crash

2018-12-15 Thread Walter Bright via Digitalmars-d-announce
On 12/15/2018 2:48 PM, Neia Neutuladh wrote: The way to fix this is to replace the entire parser and get rid of the idea of AST poisoning; at the first error, you give up on parsing the entire file. From there, you can try recovering from specific errors with proper testing. DMD tries to

Re: Fuzzed - a program to find DMDFE parser crash

2018-12-15 Thread Walter Bright via Digitalmars-d-announce
On 12/15/2018 3:29 AM, Basile B. wrote: The time to write this announce, already 5 "crashers" found. Great! Please post them to bugzilla.

Re: A brief survey of build tools, focused on D

2018-12-15 Thread Neia Neutuladh via Digitalmars-d-announce
On Sun, 16 Dec 2018 00:17:55 +, Paul Backus wrote: > On Wednesday, 12 December 2018 at 22:41:50 UTC, H. S. Teoh wrote: >> It's time we came back to the essentials. Current monolithic build >> systems ought to be split into two parts: [...] > You're missing (0) the package manager, which is

Re: A brief survey of build tools, focused on D

2018-12-15 Thread Paul Backus via Digitalmars-d-announce
On Wednesday, 12 December 2018 at 22:41:50 UTC, H. S. Teoh wrote: It's time we came back to the essentials. Current monolithic build systems ought to be split into two parts: (1) Dependency detector / DAG generator. Do whatever you need to do here: dub-style scanning of .d imports, scan

Re: Fuzzed - a program to find DMDFE parser crash

2018-12-15 Thread Neia Neutuladh via Digitalmars-d-announce
On Sat, 15 Dec 2018 21:09:12 +, Sebastiaan Koppe wrote: > On Saturday, 15 December 2018 at 15:37:19 UTC, Basile B. wrote: >> I think this is what Walter calls "AST poisoning" (never understood how >> it worked before today). And the whole parser is like this. >> >> This poisoning kills the

Re: Fuzzed - a program to find DMDFE parser crash

2018-12-15 Thread Sebastiaan Koppe via Digitalmars-d-announce
On Saturday, 15 December 2018 at 15:37:19 UTC, Basile B. wrote: I think this is what Walter calls "AST poisoning" (never understood how it worked before today). And the whole parser is like this. This poisoning kills the interest of using a fuzzer. 99% of the crashes will be in hdrgen. As

Re: Blog post: What D got wrong

2018-12-15 Thread Atila Neves via Digitalmars-d-announce
On Saturday, 15 December 2018 at 02:16:36 UTC, Nathan S. wrote: On Thursday, 13 December 2018 at 10:14:45 UTC, Atila Neves wrote: My impression is that it's a consensus that it _should_, but it's not going to happen due to breaking existing code. I think it would be a bad idea for `immutable`

Re: Fuzzed - a program to find DMDFE parser crash

2018-12-15 Thread Basile B. via Digitalmars-d-announce
On Saturday, 15 December 2018 at 14:22:48 UTC, Johan Engelen wrote: On Saturday, 15 December 2018 at 11:29:45 UTC, Basile B. wrote: Fuzzed [1] is a simple fuzzer for the D programming language. Are you familiar with libFuzzer and LDC's integration?

Re: Fuzzed - a program to find DMDFE parser crash

2018-12-15 Thread Sebastiaan Koppe via Digitalmars-d-announce
On Saturday, 15 December 2018 at 11:29:45 UTC, Basile B. wrote: 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

Re: Fuzzed - a program to find DMDFE parser crash

2018-12-15 Thread Johan Engelen via Digitalmars-d-announce
On Saturday, 15 December 2018 at 11:29:45 UTC, Basile B. wrote: Fuzzed [1] is a simple fuzzer for the D programming language. Are you familiar with libFuzzer and LDC's integration? https://johanengelen.github.io/ldc/2018/01/14/Fuzzing-with-LDC.html You can feed libFuzzer with a dictionary of

Fuzzed - a program to find DMDFE parser crash

2018-12-15 Thread Basile B. via Digitalmars-d-announce
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