View Issue Details

IDProjectCategoryView StatusLast Update
0014399FPCDebuggerpublic2019-10-05 02:35
ReporterSven Barth Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionreopened 
Summary0014399: "Step Over" steps into method of an interface
DescriptionWhen I debug an application that uses interfaces and I want to step over a call to a method of such an interface, the debugger always steps into them.
Additional InformationAttached is an example program. Put a breakpoint on "test.DoSomething" and run the application. When it breaks do a "Step Over" and now the marked line is "begin" of "ITest.DoSomething".
TagsNo tags attached.
Fixed in Revision
FPCOldBugId
FPCTarget
Attached Files

Relationships

has duplicate 0033009 resolvedJonas Maebe FPC gdb does not step into interface procedures 
related to 0030541 resolvedMartin Friebe Lazarus Debugger can't step into Interface method calls 

Activities

2009-08-21 11:04

 

interfacetest.zip (1,223 bytes)

Paul Ishenin

2009-08-21 11:41

developer   ~0030047

I think it is either fpc or gdb issue. Lazarus only passes a command to step.

Sven Barth

2009-08-26 11:53

manager   ~0030158

In that case, what do you suggest to test whether it's fpc or gdb? I can check on Windows and Linux (both x86). The issue itself was discovered on Windows (I didn't check Linux).

Jonas Maebe

2009-08-26 12:35

reporter   ~0030159

It requires a change in gdb. See the full thread that starts at http://sourceware.org/ml/gdb/2009-04/msg00008.html

Sven Barth

2009-08-26 13:40

manager   ~0030164

Ah, I see.

Did you post any patches regarding this change? (I didn't found any more messages on the list besides those five)

Jonas Maebe

2009-08-26 14:10

reporter   ~0030166

No, I haven't.

Sven Barth

2009-08-26 14:29

manager   ~0030169

Do you still plan to do so? On the mailing list you sounded eager to do so...
But don't get me wrong: I don't need this to happen now, I just want to know whether you're still plannung to fix this (sometime).

Jonas Maebe

2009-08-26 14:40

reporter   ~0030171

> Do you still plan to do so?

Yes.

Paul Ishenin

2009-08-26 15:45

developer   ~0030172

Hey, what should we do with this bug report? Close?

Juha Manninen

2013-04-29 14:05

reporter   ~0067265

Issue is about GDB and FPC, Not Lazarus.

Sven Barth

2013-05-02 11:29

manager   ~0067343

Last edited: 2013-05-02 11:31

View 2 revisions

It would be better to move it over to FPC instead of closing it, so that it does not get forgotten.

Edit: Would someone with enough right move it, please? :)

Regards,
Sven

Martin Friebe

2013-05-02 14:12

manager   ~0067355

According to the linked mail (by Jonas) this can either be fixed in FPC (though apparently that would be a rough workaround / hack) or in GDB.

For fpc team to decide, if they plan any steps on this, or if the issue should be closed (as not fixable)

Martin Schreiber

2018-01-13 07:58

reporter   ~0105727

On 64 bit it is even worse, there it is not possible to step into interface functions, see
https://bugs.freepascal.org/view.php?id=33009
Maybe it is time now to find a solution?

Jonas Maebe

2018-01-13 17:59

manager   ~0105747

Last edited: 2018-01-13 18:14

View 2 revisions

I've submitted a temporary workaround. The compiler will now generate debug info for the stubs. The line will be the declaration of the method to which the wrapper redirects if it's in the current unit, and otherwise it will be the first line of the unit/program in which the wrapper is generated. The next "step into" will take you to the method itself in both cases.

So very often the line will be bogus, but you should always be able to step into or step over interface methods now.

Do-wan Kim

2018-01-14 04:58

reporter   ~0105766

r37961 raise internal error 2005091810 on lazarus unit.

C:\development\lazarus\components\lazutils\lazfreetypefontcollection.pas(1068,1) Fatal: Internal error 2005091810
Fatal: (1018) Compilation aborted
Error: C:\development\fpc\bin\i386-win32\ppc386.exe returned an error exitcode
make.exe[1]: *** [lazutils.ppu] Error 1
make.exe[1]: Leaving directory `C:/development/lazarus/components/lazutils'

Jonas Maebe

2018-01-14 13:56

manager   ~0105790

Seems like a bug in the internal assembler.

Jonas Maebe

2018-01-14 22:09

manager   ~0105817

I've fixed that error in r37970

Joost van der Sluis

2018-12-19 17:54

manager   ~0112699

Last edited: 2018-12-19 17:54

View 2 revisions

Btw: this works with fpdebug

Issue History

Date Modified Username Field Change
2009-08-21 11:04 Sven Barth New Issue
2009-08-21 11:04 Sven Barth Status new => assigned
2009-08-21 11:04 Sven Barth Assigned To => Marc Weustink
2009-08-21 11:04 Sven Barth File Added: interfacetest.zip
2009-08-21 11:41 Paul Ishenin Note Added: 0030047
2009-08-26 11:53 Sven Barth Note Added: 0030158
2009-08-26 12:35 Jonas Maebe Note Added: 0030159
2009-08-26 13:40 Sven Barth Note Added: 0030164
2009-08-26 14:10 Jonas Maebe Note Added: 0030166
2009-08-26 14:29 Sven Barth Note Added: 0030169
2009-08-26 14:40 Jonas Maebe Note Added: 0030171
2009-08-26 15:45 Paul Ishenin Note Added: 0030172
2013-04-29 14:05 Juha Manninen LazTarget => -
2013-04-29 14:05 Juha Manninen Note Added: 0067265
2013-04-29 14:05 Juha Manninen Status assigned => resolved
2013-04-29 14:05 Juha Manninen Resolution open => no change required
2013-05-02 11:29 Sven Barth Assigned To Marc Weustink =>
2013-05-02 11:29 Sven Barth Note Added: 0067343
2013-05-02 11:29 Sven Barth Status resolved => assigned
2013-05-02 11:29 Sven Barth Resolution no change required => reopened
2013-05-02 11:30 Sven Barth Status assigned => new
2013-05-02 11:31 Sven Barth Note Edited: 0067343 View Revisions
2013-05-02 14:09 Martin Friebe Project Lazarus => FPC
2013-05-02 14:12 Martin Friebe Note Added: 0067355
2018-01-12 17:57 Jonas Maebe Relationship added has duplicate 0033009
2018-01-13 07:58 Martin Schreiber Note Added: 0105727
2018-01-13 17:59 Jonas Maebe Note Added: 0105747
2018-01-13 18:14 Jonas Maebe Note Edited: 0105747 View Revisions
2018-01-14 04:58 Do-wan Kim Note Added: 0105766
2018-01-14 13:56 Jonas Maebe Note Added: 0105790
2018-01-14 22:09 Jonas Maebe Note Added: 0105817
2018-12-19 17:54 Joost van der Sluis Note Added: 0112699
2018-12-19 17:54 Joost van der Sluis Note Edited: 0112699 View Revisions
2019-10-05 02:35 Martin Friebe Relationship added related to 0030541