GCC2 merging (was "native language support now available")

Richard Kenner kenner@vlsi1.ultra.nyu.edu
Tue Oct 13 19:22:00 GMT 1998


    I agree with this.  But from a practical viewpoint, frequently running 
    regression tests on a variety of host/targets is important even if you
    have unit tests.

Of course!  I don't think anybody would disagree with that.

    I think it would be interesting to see how these standards could be
    applied to such a distributed, volunteer based development effort.

I do too, but I suspect such efforts would rate very poorly.

    There are certainly benefits to ISO 9000 and SEI levels.  Both require
    some administrative infrastructure and controls which would be
    challenging to have in a distributed environment.  Interesting.

I agree.

    > It is possible to derive *some* information from bugs, but what you
    > have to look at is not the number of bugs but the nature of each in
    > detail.  I'm not that familiar with the work that's been done in that
    > area.

    Yes.  If you get 12 reports of the same bug, only one good test case
    should enter the regression tests.

Right.

    On a related note, bugs should be tracked by subsystem or module so a
    piece of the implementation with high defect rates can be redesigned.
    I have seen a handful of articles which claim this type analysis and
    replacement of problem code can be highly beneficial.

Yes, this is the sort of thing I mean.  Also, when you see bugs that relate
to what the valid range of operands a function can have, it's important
to see whether the documentation is accurate since one of the most critical
ways in which you rate the robustness of a large program is how accurate
the documentation is and how well it provides a tight specification.

So a bug that's isolated to one routine is not one I'd count against
the reliability of a program nearly as much as one that's caused by a confusion
of what's expected between two parts of the program.

One of the major weaknesses of GCC has always been that it has very poor
documentation, especially of the interfaces between functions.  Most of
the discussions of what the valid ranges of arguments are live in people's
heads and not in the comments in the code.  I've been trying to improve
that as I change things and have been increasingly strict in recent years to
make sure that this is placed in all new code.



More information about the Gcc mailing list