Internal error in GDB
Daniel Jacobowitz
drow@mvista.com
Thu Nov 14 07:14:00 GMT 2002
On Thu, Nov 14, 2002 at 05:34:05PM +1000, Steven Johnson wrote:
> Im getting the error:
>
> Internal error: pc 0x0 in read in psymtab, but not in symtab.
>
> from a very recent CVS build of GDB (As of 11th November).
>
> It happens when I set breakpoints in an assembler file, that has been
> assembled through GCC, using the C Preprocessor (.S file, not .s file).
>
> It does nothing wrong, except pop up all the time and hence interfere
> with debugging significantly. (Im using insight and have to keep
> pressing OK to continue).
>
> I searched the code and it seems to be coming from
> symtab.c:find_pc_sect_symtab (last if in the function)
>
> The comment in the code indicates that this error may want to stop GDB
> cold. Thankfully it isn't, cause I seem to be getting it in error.
>
> Also, the code here seems to be wrong, it prints the error, and then
> proceeds to look it up anyway. As in:
>
> if (ps->readin)
> warning("Internal error: pc 0x%s in read in psymtab, but not in
> symtab.",paddr_nz(pc));
>
> s = PSYMTAB_TO_SYMTAB(s)
>
> I would have expected, from the error, it not to try and
> PSYMTAB_TO_SYMTAB, as it is saying it isn't in the SYMTAB. as in:
>
> if (ps->readin)
> warning("Internal error: pc 0x%s in read in psymtab, but not in
> symtab.",paddr_nz(pc));
> else
> s = PSYMTAB_TO_SYMTAB(s)
>
> Anyway, what is going on here? What do i need to do to my assembler
> file to prevent this warning?
Do you have an assembler file you can post that triggers the warning?
I'd like to see it.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
More information about the Gdb
mailing list