Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ulowell!apollo!r_miller From: r_miller@apollo.COM (Roger Miller) Newsgroups: comp.sys.apollo Subject: Re: Mystery Error (unable to unwind stack) Message-ID: <42d82721.8b6c@apollo.COM> Date: 25 Apr 89 14:23:00 GMT Organization: Apollo Computer, Chelmsford, MA Lines: 44 David Krowitz has correctly explained the "unwable to unwind stack" status as resulting from a trashed stack. This usually results from writing outside array bounds or through bogus pointers. Sooner or later this will generally cause a program fault, and it is during the processing of this fault that the trashed stack is noticed and reported. Unfortunately the unwinding problem hides the first fault, which is the one you are really interested in. But all is not lost. Try "tb -full": $ tb -f Process 672 (parent 450, group 0) Time 89/04/24.17:38(EDT) Program /r_miller/tb/test.bin Status 0304000B: unable to unwind stack because of invalid stack frame (process manager/process fault manager) No traceback available Proc2 Uid 42D4A42B.B0008B6C Parent Process 450 (42D2BF40.80008B6C) Process Group 0 (42D2BF40.80008B6C) Fault Status 00120011: access violation (OS/fault handler) <----- Access Addr 00000000 <----- IR C001 Acc. Info B041 User Fault PC 000081EA <----- D0-D3: FFFFFFFF 00004000 00000000 00000000 D4-D7: 031CFE00 FFFF0000 00000000 035012CC A0-A3: 000081EC 0320001C 031D8C04 03180094 A4-A7: 031CFDF4 00010000 00000000 031CF600 Supervisor ECB 00000000 Supervisor SR 0000 Supervisor PC 00000000 and, lo and behold, there is the original fault. It was an access violation at address 81EA, attempting to access address 0. Where is 81EA? Ask dde: dde> des -loc `va(81ea) statement "\\`image(1)\test\trash\15" start address: 000081E8 end address: 000081EB file: "//divali/r_miller/tb/test.pas" (89/04/24.16:59) Now you're well on your way to debugging the problem.