Debug fails on interface variables
Original Reporter info from Mantis: nanobit @nanobit
-
Reporter name:
Original Reporter info from Mantis: nanobit @nanobit
- Reporter name:
Description:
local IUnknown variables confuse the debugger at function entry:
- if GNU debugger (with fpdebug): cannot step into function
- if GNU debugger (gdb): creates debugger message:
"While executing the command:
"TGDBMIDebuggerInstruction: "-stack-list-locals 1",
[ifRequiresThread, ifRequiresStackFrame, ifRequiresMemLimit, ifRequiresArrayLimit]
Thr=1 Frm=0" gdb reported: "&"gdbtypes.c:2151: internal-error:
type* resolve_dynamic_struct(type*, property_addr_info*):
Assertion `TYPE_NFIELDS (type) > 0' failed.\n
A problem internal to GDB has been detected,\n
further debugging may prove unreliable.\n""
Steps to reproduce:
program project1;
{$mode objfpc}
uses
Classes;
procedure fpDebug_stepIn_failure( unk: IUnknown);
// debugFreeze if "GNU debugger (with fpdebug)"
begin
unk := nil;
end;
procedure testInterface;
// starts with debugFailureMsg if "GNU debugger (gdb)"
var unk: IUnknown;
begin
unk := nil;
fpDebug_stepIn_failure( unk);
end;
begin
testInterface;
end.
Mantis conversion info:
- Mantis ID: 35129
- OS: Windows
- OS Build: 10
- Platform: win32
- Version: 2.0
- Fixed in version: 2.0.2
- Fixed in revision: 60474 (#1a62240d)
- Target version: 2.0.2