Martin Schreiber wrote 5 lines
On Thursday 18 December 2014 14:43:42 Pierre Free Pascal wrote:
> Did you try to use 7.7 or later release?
gdb compiled from git gdb-7.8-branch
84aa7422f440868fea3359fde953c8375ca3409c works, thanks.
No, it is not OK. FPC fixes_2_6 i386-linux -gl -O-:
With the MSEgui demo program
https://gitorious.org/mseide-msegui/mseide-msegui/source/apps/demo
gdb-7.8-branch (7.8.1):
"
[...]
Reading symbols from ./demo...done.
(gdb) break main.pas:25
Breakpoint 1 at 0x8099a5f: file main.pas, line 25. (gdb) run
Starting program: /home/mse/packs/standard/git/mseide-msegui/apps/demo/demo warning: Could not load shared library symbols for linux-gate.so.1. Do you need "set solib-search-path" or "set sysroot"? [Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
Breakpoint 1, TMAINFO__EXITONEXECUTE (SENDER=0xb7a6a000, this=<error reading variable>) at main.pas:25
25 application.terminated:= true;
(gdb) print ftag
Type TMAINFO has no component named ftag.
(gdb) print self.ftag
warning: can't find linker symbol for virtual table for `TMAINFO' value $1 = 0
(gdb)
"
gdb-7.7-branch (7.7.1):
"
Reading symbols from ./demo...done.
(gdb) break main.pas:25
Breakpoint 1 at 0x8099a5f: file main.pas, line 25. (gdb) run
Starting program: /home/mse/packs/standard/git/mseide-msegui/apps/demo/demo warning: Could not load shared library symbols for linux-gate.so.1. Do you need "set solib-search-path" or "set sysroot"? [Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
Breakpoint 1, TMAINFO__EXITONEXECUTE (SENDER=0xb7a6a000, this=<error reading variable>) at main.pas:25
25 application.terminated:= true;
(gdb) print ftag
Type TMAINFO has no component named ftag.
(gdb) print self.ftag
warning: can't find linker symbol for virtual table for `TMAINFO' value $1 = 0
(gdb)
"
gdb_7_6-branch (7.6.2):
"
Reading symbols
from /home/mse/packs/standard/git/mseide-msegui/apps/demo/demo...done. (gdb) break main.pas:25
Breakpoint 1 at 0x8099a5f: file main.pas, line 25. (gdb) run
Starting program: /home/mse/packs/standard/git/mseide-msegui/apps/demo/./demo warning: Could not load shared library symbols for linux-gate.so.1. Do you need "set solib-search-path" or "set sysroot"? [Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
Python Exception <type 'exceptions.AttributeError'> 'gdb.Type' object has no attribute 'name':
Breakpoint 1, TMAINFO__EXITONEXECUTE (SENDER=0xb7a6a000, this=<error reading variable>) at main.pas:25
25 application.terminated:= true;
(gdb) print ftag
warning: can't find linker symbol for virtual table for `TMAINFO' value Python Exception <type 'exceptions.AttributeError'> 'gdb.Type' object has no attribute 'name':
Python Exception <type 'exceptions.AttributeError'> 'gdb.Type' object has no attribute 'name':
$1 = 0
(gdb) print self.ftag
warning: can't find linker symbol for virtual table for `TMAINFO' value Python Exception <type 'exceptions.AttributeError'> 'gdb.Type' object has no attribute 'name':
Python Exception <type 'exceptions.AttributeError'> 'gdb.Type' object has no attribute 'name':
$2 = 0
(gdb)
"
gdb_7_5-branch (7.5.1):
"
Reading symbols
from /home/mse/packs/standard/git/mseide-msegui/apps/demo/demo...done. (gdb) break main.pas:25
Breakpoint 1 at 0x8099a5f: file main.pas, line 25. (gdb) run
Starting program: /home/mse/packs/standard/git/mseide-msegui/apps/demo/demo warning: Could not load shared library symbols for linux-gate.so.1. Do you need "set solib-search-path" or "set sysroot"? [Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
Breakpoint 1, TMAINFO__EXITONEXECUTE (SENDER=0xb7a6a000, this=<error reading variable>) at main.pas:25
25 application.terminated:= true;
(gdb) print ftag
$1 = 0
(gdb) print self.ftag
$2 = 0
(gdb)
"
With the "assertion crash" program
https://gitorious.org/mseuniverse/mseuniverse/source/testcase/gdb/assertioncrash/invalidvar.pas
gdb-7.8-branch (7.8.1):
"
Reading symbols from ./invalidvar...Reading symbols from /home/mse/packs/standard/git/mseuniverse/testcase/gdb/assertioncrash/invalidvar.dbg...done. done.
(gdb) print po1^.c
Type RECTY has no component named c.
(gdb)
"
gdb-7.7-branch (7.7.1):
"
Reading symbols from ./invalidvar...Reading symbols from /home/mse/packs/standard/git/mseuniverse/testcase/gdb/assertioncrash/invalidvar.dbg...done. done.
(gdb) print po1^.c
Type RECTY has no component named c.
(gdb)
"
gdb_7_6-branch (7.6.2):
"
Reading symbols
from /home/mse/packs/standard/git/mseuniverse/testcase/gdb/assertioncrash/invalidvar...Reading symbols
from /home/mse/packs/standard/git/mseuniverse/testcase/gdb/assertioncrash/invalidvar.dbg...done. done.
(gdb) print po1^.c
parse.c:588: internal-error: mark_struct_expression: Assertion `parse_completion && expout_tag_completion_type == TYPE_CODE_UNDEF' failed. A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n)
"
gdb_7_5-branch (7.5.1):
"
Reading symbols
from /home/mse/packs/standard/git/mseuniverse/testcase/gdb/assertioncrash/invalidvar...Reading symbols
from /home/mse/packs/standard/git/mseuniverse/testcase/gdb/assertioncrash/invalidvar.dbg...done. done.
(gdb) print po1^.c
Type RECTY has no component named c.
(gdb)
"
So the last working gdb with FPC is 7.5.1.
Martin