The Delphi Bug List

Entry No.
252
Debugger
If you have a conditional breakpoint in your source and you are stepping through the program (with F8), when you step to the line where the conditional breakpoint is, it acts as a 'debugging boobytrap': the program doesn't stop on that line and also not on the next line; it just starts running again.
1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02 4.03 5.0 5.01 6.0 6.01 6.02 Kylix 1.0
UnknownUnknownUnknownUnknownUnknownExistsExistsExistsExistsExistsExistsFixedFixedFixedExists
Description
Checked by Reinier Sterkenburg
Comment from checker, 10 June 2001
Apparently the bug does not 'happen' all the time (see also Anders Melander's remark below).
At the moment, I cannot reproduce the bug under Delphi either on my own PC. But I have seen this happening at least with Delphi 4 and Delphi 5, and there was also an independent confirmation by somebody else.

Under Kylix, the behaviour is not exactly the same as under Delphi but still something odd happens (goes wrong).
To reproduce:

  • Create a new application
  • Place a button on the form and attach the following code to the event handler
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      Caption := Button1.Caption;
      Button1.Caption := 'tralala';
      Button1.Left := Button1.Left + 10;
    end;
  • Set an unconditional breakpoint on the first line (Caption := Button1.Caption;)
  • Set a conditional breakpoint on the second line, with the condition Caption='Button1'
  • Run the program
  • press Button1: the program stops at the first line, with the unconditional breakpoint
  • Press F8 (Step): the following error appears: Internal Eror XEV-1444
User-contributed comments
Anders Melander
06 Apr 2001  11:00 AM GMT
I can't reproduce this problem with Delphi 5.01. Here's what I did:

Suppose I have the following code:

begin
a := 1; // #1) Set unconditional break point here
b := 2; // #2) Set conditional break point here. Condition: a=b
c := 3; // #3) This line should be skipped
end;

When stepping through the above the debuger behaves as expected; It breaks on line #1 and steps on to line #2 and then line #3.

Btw, this entry (and others) is listed in the "what's new" as "still exists in 5.01" but according to the version grid it hasn't been reported for versions earlier than 5.01.
Latest update of this entry: 2002-04-03

Post a comment on this bug


Index page
Delphi Bug List home page
The Delphi Bug Lists are presently maintained by Jordan Russell, who has taken over this task from Reinier Sterkenburg since August 2000.
All feedback is appreciated. See also the feedback section of the Delphi Bug List home page.