Error Presentation

September 3rd, 2008

Certain other cool open source projects are doing cool static analysis work. In this case, here is an analysis of one of my favourite operating systems projects, DragonFly BSD.

I’m blown away by the clean UI. The error filter and the interleaving of static analysis results in the source code are drool-inducing. This is powered by the clang checker. Clang’s checker doesn’t yet do C++, doesn’t do application-specific checks and has a lot of false positives, but it’s an exciting preview of things to come.

Oh and I hope that DXR will have similar analysis awesomeness. In the future, I hope to see static analysis become almost as common as unit-testing.

2 Responses to “Error Presentation”

  1. Robert O'Callahan Says:

    Eh.

    What I really want to see in error presentation is a trace-based presentation. Construct a sample execution (could be abstract of course) which shows how the error happens. E.g.,

    Variable x may be used uninitialized along this path:

    int x;
    ***if (a)
    x = 1;
    ***foo(&a);
    ***if (a)
    *** print(x);

  2. Billigflug Says:

    Robert, this would be really awesome, as it would save so much time. Great idea, really! I even think this would be revolutionary to software developement and hence for the industry and the entire economy. So go for it!

Leave a Reply