[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Running BoundsChecker on 5.0.2
- From: Dario Accornero <adario@...>
- Date: Sun, 26 Feb 2006 19:55:18 +0100
On 25 Feb 2006, at 22:30, Mike Pall wrote:
Several similar errors are reported in luaK_posfix() (line 653 of
lcode)
and other lines of the same module; in luaV_execute(), lines 496
and others
of lvm, BoundsChecker also reports some pointer arithmetic range
errors.
None of these are errors. This is just copying uninitialized
memory. Either without using it or by overwriting it later with
valid data.
Good to know, Mike, thanks.
Modern memory checkers do validity bit propagation. They should
only report _uses_ of uninitialized data, not the mere act of
accessing or copying it. E.g. valgrind does this (but it's not
available for Windows). Maybe you need to turn on some option in
BoundsChecker?
I'll look for a similar option but at first glance hadn't found it.
Now, most of these problems might just be BoundsChecker's own
fault, but
there are other, potentially more worrisome reports: a few
dangling pointer
errors ("Pointer 0x..., allocated by realloc, has already been
freed")
which might actually be real problems.
These should be investigated. But I guess you have to reduce the
number of false alarms first. Maybe you need a different tool or
just a newer version.
I'll try to reduce the number of reports first, but after a quick try
with the latest version (8.0 on another machine as opposed to the 7.2
I have installed on my machine) I couldn't test my code at all...
The reason being that my "app" is actually an ActiveX control packed
in a regular .dll, and DevPartner 8.x refuses to start Explorer/
ActiveX Test/etc. as the target application. Perhaps I've missed
something but certainly I couldn't get it to work.
Thank you,
Dario