Proposal: User Code Bug Tracking

dsimcha dsimcha at yahoo.com
Wed Nov 24 17:32:36 PST 2010


There's been a lot of discussion on this newsgroup about improvements that can
be made to D to prevent bugs.  The problem is that noone really has stepped
back and looked at what the biggest causes of bugs in D are.

I therefore propose that we create a website where people can post a few basic
details about non-trivial bugs they encountered and fixed in their D2 code.
(Non-trivial bugs are defined as bugs that took more than a few minutes worth
of effort to discover, diagnose and fix.)  The simplest version might just be
something like:

The root cause of my last D2 bug was closest to:

Integer overflow

Signed/unsigned comparison

Null pointers

Floating point precision issues

Unsafe casts

Memory corruption

Violation of implicit function preconditions

Violation of explicit (using contracts) function preconditions

Violation of implicit struct/class invariants

Violation of explicit (using contracts) struct/class invariants

Off-by-one errors

Misunderstanding of Phobos/druntime API

Misunderstanding of a third-party library API

Concurrency issues

Otherwise incorrect function calls (arguments in wrong order, wrong overload
called, etc.)

User input cases I hadn't considered

Other high-level logic errors not related to any of the above


More information about the Digitalmars-d mailing list