Debugger can't step into Interface method calls
Original Reporter info from Mantis: ggeldenhuys
-
Reporter name: Graeme Geldenhuys
Original Reporter info from Mantis: ggeldenhuys
- Reporter name: Graeme Geldenhuys
Description:
Try and step into the l.debugln() calls at the end of the program. The debugger simply steps over them instead of into them.
=======================================
program interfacetest;
{$mode objfpc}{$h+}
{$ifdef mswindows}{$apptype console}{$endif}
uses
Classes, SysUtils;
type
ILogger = interface
procedure debugln(const t: string);
end;
TtiLogger = class(TInterfacedObject, ILogger)
private
// ILogger interface
procedure debugln(const t: string);
end;
{ TtiLogger }
procedure TtiLogger.debugln(const t: string);
begin
writeln(FormatDateTime('yyyy-mm-dd hh:nn:ss ', Now) + t);
end;
var
l: ILogger;
begin
l := TtiLogger.Create;
// You can't step in these calls!!
l.debugln('Some text goes here');
l.debugln('More text here');
end.
=======================================
Mantis conversion info:
- Mantis ID: 30541
- OS: FreeBSD
- OS Build: 10.1
- Platform: x86_64
- Version: 1.7 (SVN)
- Monitored by: » luizamerico (Luiz Americo), » ggeldenhuys (Graeme Geldenhuys)