Tracking down Access Violations

Jeremy Jeremy_member at pathlink.com
Thu May 18 17:19:43 PDT 2006


My program is starting to get fairly large, and all seems to be going fairly
well...

UNTIL this "Error: Access Violation" started popping up. I'm not sure where it
is coming from, and I've been having a hard time tracking it down.

What is the best way to track these down? In some C/C++ applications, I could
actually get one of those 'Illegal Operation' windows from Windows XP, which
would tell me the instruction address, and then I could do an object dump to see
which assembly instruction messed it up: but D just says "Error: Access
violation" and that's it :(

The "-g" option gives me "forward reference" errors so I cannot run it through a
debugger and get good results (correct?).

It seems like the only good way to do this is to keep commenting out code until
it doesn't happen anymore (but the error is hard to reproduce, so it's hard to
know if it just hasnt happened yet or not). Or -- add in debug writefln's
everywhere and see when they stop.

There should be a better way I hope?





More information about the Digitalmars-d mailing list