DOCUMENT ID:  1263-02

SYNOPSIS:     What to do when debuggers can't reconstruct programs from "core"

OS RELEASE:   2.x 

PRODUCT:      Solaris 

KEYWORDS:     core dbx dbxtool adb error


SYMPTOMS:

You see an error message "core_scan_regs()" Assertion


DESCRIPTION:

The core file resulting from a program malfunction destroys the program
to such an extent that reconstruction is impossible.  The program will
fail without the "-G" compile option and sometimes work with the symbol
data.  Sometimes there is no hope of reconstruction.  These errors a
typical of a destroyed stack area.  The cause is usually due to
allocating a table too small in a called function.  Subscripting into
the table using program code or a function like "strcpy" will certainly
do the trick.  Another cause for core file corruption is two processes
dying and writing to the same core file.  Several bugs 1156454, 1163718,
and 1164902 have been filed requesting a cure.  The text of these bugs
indicate there is not a fix. 


SOLUTION:

There are approximately three ways to find the problem:

1) Inspect the program and allocate all table to some huge value.

2) Write your own small dump function and insert freely in the program.

3) Single step with the debugger of your choice.


DATE APPROVED: 01/05/95