From: ao950 AT FreeNet DOT Carleton DOT CA (Paul Derbyshire) Newsgroups: comp.os.msdos.djgpp Subject: Re: Debugging with DJGPP Date: 29 Jan 1998 11:42:17 GMT Organization: The National Capital FreeNet Lines: 36 Message-ID: <6appup$pop@freenet-news.carleton.ca> References: <34c8017e DOT 36688673 AT news DOT freenet DOT hut DOT fi> Reply-To: ao950 AT FreeNet DOT Carleton DOT CA (Paul Derbyshire) NNTP-Posting-Host: freenet5.carleton.ca To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk If you ever get more tracebacks, while not using GDB, run "symify foo.exe" immediately after the crash, and nice useful function names will be printed by the hex codes in the traceback. One of these is the problem site usually. The "symify" program is one of a half-hundred little utilities put in your Bin dir when you installed; its express purpose is debugging tracebacks. Note that if you use C++, the names may be mangled, so your "foo" function might show up as something like: foo__Fv (means foo(void) crashed) foo__Fii (means foo(int, int) crashed) foo__FPi (means foo(int *) crashed) foo__FcPc (means foo(char, char *) crashed) The mangling scheme seems to be two underscores, 'F' on a function, then v for void, or else a sequence of parameter type words each of which is either a single lowercase letter (i is int, c is char, d is double, f is float, b is bool, s short, llong, x long long, and r long double) possibly prefixed with P (which means "pointer to") or 'PC' ("pointer to constant") or many of these (multiple indirection). User defined types named Foo or Bar seem to show up as 3Foo or G3Bar... the name of the type with a seemingly random prefix. pointers with 'P' prefixed, pointers to constants with 'PC' prefixed. All these seem to be in the order the parameters appear in the function. All of this I got by experimenting with various overloaded functions compiled to .o's and 'nm'ed. Oddly enough, the sample class Foo I made didn't show up, nor any of its methods, in the 'nm' output... -- .*. Friendship, companionship, love, and having fun are the reasons for -() < life. All else; sex, money, fame, etc.; are just to get/express these. `*' Send any and all mail with attachments to the hotmail address please. Paul Derbyshire ao950 AT freenet DOT carleton DOT ca pgd73 AT hotmail DOT com