On Mon, 2011-01-10 at 20:43 +0000, Martin wrote: > On 10/01/2011 20:26, Joost van der Sluis wrote: > > On Mon, 2011-01-10 at 01:12 +0000, Martin wrote: > >> On 03/01/2011 11:30, Joost van der Sluis wrote: > >>> I also promised to build a Windows-gdb binary with the latest Dwarf-3 > >>> patches from the Archer-project. This can be downloaded here: > >>> > >>> http://www.lazarussupport.com/downloads/gdb_win32_fedora15_with_pascal_patches.zip > >>> > >> That one just crashed, when I tested with stabs > > Works here. Do you have an example program? > > The latest version of my testcase. > > Running the TTEstExceptionOne with > fpc 2.4.2 stabs > the above gdb > > and other combinations too
I'll try. But I have a little problem with git again, so it can take a few hours until I have the source in a valid state again. > ------------------- > btw, does that version also include full support for all string types > already? It should, yes. > did you see my question in the other mail? is -gw = dwarf2, or is there > a diff between -gw and -gw2 ? I think not, if -gw would create dwarf-1 info, it woudn't contain classes... So the default Dwarf format is probably -gw2. > Is the decission on how classes are encoded (no pointer deref any > longer) final, or still just consideration? > (if it is final, I need to fix, getting exception msg... > >> TCmdLineDebugger.SendCmdLn "x/s ^Exception($eax)^.FMessage" > << TCmdLineDebugger.ReadLn "&"x/s ^Exception($eax)^.FMessage\n"" > << TCmdLineDebugger.ReadLn "&"A syntax error in expression, near > `FMessage'.\n"" > obviously the ^ has to go.... I think it will stay as it is, now. Until something new pops-up. (that is, an implicit pointer will be added) > Also need to find why it breaks: > >> TCmdLineDebugger.SendCmdLn "-data-evaluate-expression > ^^shortstring(^POINTER($eax)^+12)^^" > << TCmdLineDebugger.ReadLn "^error,msg="A syntax error in expression, > near `shortstring(^POINTER($eax)^+12)^^'."" > TGDBMIDebugger.ProcessResult Error: ,msg="A syntax error in > expression, near `shortstring(^POINTER($eax)^+12)^^'." I've never really understood why this is necessary? > but the alternative seems to work: > >> TCmdLineDebugger.SendCmdLn "-data-evaluate-expression > ^char(^pointer(^POINTER($eax)^+12)^+1)" > << TCmdLineDebugger.ReadLn "^done,value="0x410821 'Exception'"" > << TCmdLineDebugger.ReadLn "(gdb) " We should fix fpc so that it is possible to compile the rtl in such a way that debug-info is added for TException. Joost. _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel