Article: Finding memory bugs in D code with AddressSanitizer

Johan Engelen j at j.nl
Mon Dec 25 23:17:42 UTC 2017


On Monday, 25 December 2017 at 20:31:18 UTC, Walter Bright wrote:
>
> Thanks for the great article! Some suggestions:

Thanks for your comments, I've incorporated them (to my liking).

> 1. The gray-on-white text is not very legible.

Looks great here, I like it, sorry. (made it completely black 
now, can't see the difference here though)

Snips:
> This comes across as unduly negative.

> This is a contrived example, and implies that normal D code is 
> written like C++ code.

> It would be nice to add a paragraph mentioning things about D 
> that make it a more memory safe language.

> This code should be rejected by the compiler if using -dip1000. 
> It is not, so I filed a bug report

> I'd rather use examples that didn't rely on compiler/library 
> bugs.

You're right, the examples are (of course) contrived. However, I 
didn't want to write a marketing article, and I also want to show 
examples found in the wild. I think one of the use cases of ASan 
is exactly that it can help discover bugs whereever they are, 
even in the compiler / standard library.
I've added bits and pieces to indicate some facilities of D to 
mitigate these kinds of bugs, but the reality is that a lot of D 
code is not idiomatic and does not use the safety features (for 
diverse reasons).
The article is not meant as a marketing piece (only for ASan), 
but also shouldn't be  overly critical of D. Hope that the 
balance is a bit better now with the modifications.

-Johan



More information about the Digitalmars-d-announce mailing list