On Tue, 13 Nov 2001, Henrik Stuart wrote:
> Two other, quite more expensive ways, is by using either Numega
> Boundschecker or Rational Purify, which are both commercial
> programs for Windows. Personally, I prefer using Numega's
> Boundschecker for both memory validation, stack validation, heap
> validation, api call validation and array bounds access validation
> (to name a few of its' functions). It's both well-written and
> integrates seamlessly into Visual C++. It not only makes
> programming in C++ less of a fuss it helps you pinpoint where the
> actual corruption takes place too.
GCC is getting (or has) support for that as well:
-fbounds-check Generate code to check bounds before
dereferencing pointers and arrays
-fcheck-memory-usage Generate code to check every memory access
-fstack-check Insert stack checking code into the program
These are _slow_ (in compiling, unknown for running) in case you wondered.
I seem to hit a glibc2 problem when using 'check-memory-usage' though. It
doesn't like 'asm' being used, which some header pulled in.
> Now, electric fence is ok if you do not have the money, of course.
> Or are an avid speaker against Microsoft and anything that even
> might consider to run on their operating system.
>
> Anyway, for you people looking for something slightly more advanced
> to help deal with your bugs. :o)
More advanced? Probably.
More helpful? Maybe.
More expensive? Definitely.
Drifting off-topic...
--
George Greer
greerga@circlemud.org
--
+---------------------------------------------------------------+
| FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
| Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
+---------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/06/01 PST