e Solaris for development at the moment, but
I would definitely recommend running any portable C program through SPARC
Solaris dbx with the above checks before release, if a suitable computer
is to hand. Of course, use lclint and/or other tests as well.
--
Daniel Barker
One very dangerous thing about your code is you have an unqualified
"char *" pointing to a string literal. String literals must never be
modified. so it would be better to declare the struct member as
const char *Foo;
or alternatively, leave it un-const but have it point to the start of a
"norma
t; instead of "a -
b", or "if (a < 3)" instead of "if (a > 3)".
The problem with dynamic checking is, of course, few or no test suites are
that good and you have to develop one for each program or library.
--
Daniel Barker.
something, but I can't see how static
analysis would have helped find this specific bug.
--
Daniel Barker.