This is the mail archive of the
archer@sourceware.org
mailing list for the Archer project.
Re: Fixes for Mac OS X/x86 building/running
On 12 Mar 2009, at 21:54, Tom Tromey wrote:
"Jonas" == Jonas Maebe <jonas.maebe@elis.ugent.be> writes:
Do you have a gdb copyright assignment in place?
For non-trivial patches we have to get this... I can get you started
on the process if you aren't already set up.
No, I don't have one. I never needed it because until now I've only
written fairly small patches to FSF source code. However, it indeed
might not be a bad idea to finally go through with it, because I may
start getting more involved in brushing up GDB's support for Pascal.
So yes, please.
Does starting the process entail anything besides filling out http://git.savannah.gnu.org/cgit/gnulib.git/tree/doc/Copyright/request-assign.future
and mailing it in?
Jonas> * machoread.c.patch fixes a crash caused by a missing
function pointer
Jonas> field (sym_read_psymbols) initializer in the middle of
macho's struct
Jonas> sym_fns (so the subsequent function pointer initializers were
all
Jonas> shifted). I've simply copied the elfread.c implementation of
Jonas> read_psyms (because it appeared to be generic) and it seems
to work
Jonas> fine (if it's called at all).
I've appended the corresponding change from elfread.c.
You probably want something a bit more like this. The delayed symfile
stuff only works if you also arrange to create the quick addrmap.
Thanks. I've now adjusted the machoread.c code in a similar way, but
there's no change in the behaviour. I'll take it to the main gdb
mailing list, with a CC to Tristan Gingold.
Or, you can just set the new field to NULL. All this means is that
you won't get lazy loading of debug info.
That causes a crash when symfile.c:897 calls this function
unconditionally:
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000000
0x00000000 in ?? ()
(gdb) bt
#0 0x00000000 in ?? ()
#1 0x000b865b in syms_from_objfile (objfile=0x5f7000, addrs=0x63b810,
offsets=0x0, num_offsets=0, mainline=1, verbo=0) at symfile.c:897
#2 0x000b897b in symbol_file_add_with_addrs_or_offsets (abfd=0x0,
from_tty=0, addrs=0x0, offsets=0x0, num_offsets=0, mainline=1,
flags=0) at symfile.c:1013
#3 0x000b9996 in symbol_file_add_main_1 (args=<value temporarily
unavailable, due to optimizations>, from_tty=<value temporarily
unavailable, due to optimizations>, flags=<value temporarily
unavailable, due to optimizations>) at symfile.c:1156
#4 0x000d8be9 in catch_command_errors (command=0xb9af0
<symbol_file_add_main>, arg=0xbffff3e9 "dynarr", from_tty=0,
mask=2692864) at exceptions.c:531
#5 0x000da753 in captured_main (data=0xbffff2b0) at .././gdb/main.c:878
#6 0x000d8b42 in catch_errors (func=0xd9c00 <captured_main>,
func_args=0xbffff2b0, errstring=0x246eec "", mask=2692864) at
exceptions.c:516
#7 0x000db28f in gdb_main (args=0x8534a8) at .././gdb/main.c:998
#8 0x00001dc4 in main (argc=2692864, argv=0x291700) at gdb.c:33
Jonas