After migrating our project from Delphi 10 to Delphi 11.3, we are experiencing a critical issue with the debugger functionality. The debugger is unable to correctly evaluate and display the result values when breakpoints are set.
Steps to Reproduce:
Migrate a project from Delphi 10 to Delphi 11.3.
Set a breakpoint on a function that returns a result, e.g., idx := IndexText('3', ['1', '2', '3']);.
Run the code in the Delphi 11.3 IDE.
Attempt to evaluate the return value of the function where the breakpoint is set, either by using a Watch or by hovering the mouse cursor over the function.
program DelphiStrings;
{$APPTYPE CONSOLE}
{$R *.res}
uses
System.SysUtils,
strutils;
var idx : integer;
begin
try
{ TODO -oUser -cConsole Main : Insert code here }
idx := IndexText('3',['1', '2', '3']);
WriteLn( idx.ToString);
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
end.
The debugger should correctly display the return value of the function at the breakpoint.
Actual Result: The debugger displays random large integer numbers instead of the correct return value. This issue has been replicated on two different machines (see the screenshot for more details).
Windows 11 64-bit Pro, Delphi 11.3 64-bit