On 03/27/2015 02:17 PM, Joost van der Sluis wrote: > On 03/27/2015 01:45 PM, JuuS wrote: >> procedure BreakIf( b : Boolean ); >> begin >> if b then >> asm >> INT 3 <======debugger would then stop here >> and one could then F8 step to the offending >> routine based on the boolean condition passed >> end; >> end; >> >> I believe this is windows specific (?) and I'm now working on Linux >> machines. >> >> The question is: >> >> This does not work in Linux and I wonder if there is a similar way to >> achieve this in Linux environment? > > Wow.. that's a nasty trick....
Mmmm, nasty maybe...but cool! Just tried it again and it won't compile "INT 3" line because "invalid reference syntax". I will look into your suggestions in the next days and report back if I find anything, thanks Joost. > > And it should still work, also on Linux. > > But I think that debuggers nowadays are more clever, they detect that > the breakpoint is actually self-inflicted, and so they decide to > continue. After all: the developer can have it's reasons to call this > interrupt, and the debugger should not influence normal execution. > > I don't know if fpdebug has this same check. (I think it has, though, > but I'm not sure) If you are using a development Lazarus version you can > try to install the LazDebuggerFp package, and choose the 'Fpdebug > internal Dwarf-debugger' as debugger in the debugger-options. See what > happens if you do that... > > Regards, > > Joost. > > -- > _______________________________________________ > Lazarus mailing list > [email protected] > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- _______________________________________________ Lazarus mailing list [email protected] http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
