This is the mail archive of the gdb-prs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug gdb/17835] New: gdb fails to find members of current object/class (this / self) / case-sensitivity issue


https://sourceware.org/bugzilla/show_bug.cgi?id=17835

            Bug ID: 17835
           Summary: gdb fails to find members of current object/class
                    (this / self) / case-sensitivity issue
           Product: gdb
           Version: 7.8
            Status: NEW
          Severity: normal
          Priority: P2
         Component: gdb
          Assignee: unassigned at sourceware dot org
          Reporter: gdb.bugs at mfriebe dot de

This issue is present in gdb 7.7 and 7.8 (it worked fine with all versions
before)

I tested on windows, 32 bit vista, but was told the issue was also present on
linux (not tested myself).

Compile the program below using fpc (freepascal). The issue occurs with stabs
(fpc -gs) or dwarf2 (fpc -gw).

Set a breakpoint on "writeln" and run.

Try to evaluate:
 ptype member1

This should return (and does with older gdb)
 type = integer

With gdb 7.7 or 7.8 it returns:
 Type TFOO has no component named member1.\n

It seems to be a case sensitivity issue:
this works:  ptype MEMBER1

But
 ptype self.member1
also works, being lowercase.



program classmember;
type
  TFoo = class
    member1: integer;
    procedure bar;
  end;

procedure TFoo.bar;
begin
  member1 := 222;
  writeln;
end;

begin
  TFoo.Create.bar;
end.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]