Debugger step-over issue (step over performs assembler step in) lazarus / 12-Debugger ---------------------------------------------------------------------- arent · 2020-10-12 12:03 On last line the debugger does not step over, but opens the assembler IDE-window. Problem remains if iniBaseName is assigned to another local string variable. Happens all the time during debugging... Is it possible to disable the assembly window altogether? Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i type  TMyComp =class(TComponent)  ...  private    FiniBaseName: string;     published    property IniBaseName: String read FIniBaseName write FIniBaseName;  ... procedure TMyComp.do();var  s: stringbegin   ...  if iniBaseName<>'' then     s := iniBbaseName + '_'           (Lazarus 2.0.10/FPC 3.2.0 svn 63662, win64) ---------------------------------------------------------------------- Martin_fr · 2020-10-12 12:36 Menu: Tools > Options Page: Debugger > General There is a property grid, find the option "FixIncorrectStepOver" and set it to true. Alternatively search the forum for "LazDebuggerFp" (a.k.a "FpDebug") and install this. ---------------------------------------------------------------------- arent · 2020-10-12 14:44 Thanks! I tried Tools|Options|Debugger|general|Debugger specific options|FixIncorrectStepOver but the assembly windows still activates, although now with Code: ASM  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i 0000000100009554 664189dc                 mov    %bx,%r12w0000000100009558 4885ff                   test   %rdi,%rdi000000010000955B 7506                     jne    0x100009563 000000010000955D 664489e3                 mov  %r12w,%bx0000000100009561 eb0b                     jmp    0x10000956e 0000000100009563 4889f9                   mov  %rdi,%rcx0000000100009566 e855190000               callq  0x10000aec0 000000010000956B 6689c3                 mov    %ax,%bx000000010000956E 6689d8                 mov    %bx,%ax0000000100009571 6685db                   test   %bx,%bx0000000100009574 7412                     je     0x100009588 0000000100009576 662d0100                 sub  $0x1,%ax000000010000957A 7514                     jne    0x100009590 000000010000957C e88f7cffff               callq  0x100001210  <__$dll$kernel32$GetOEMCP>  at line 8 instead of Code: ASM  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i fpc_ansistr_concat 0000000100009500 53                       push   %rbx0000000100009501 57                       push   %rdi0000000100009502 56                       push   %rsi0000000100009503 4154                     push   %r120000000100009505 4155                     push   %r130000000100009507 4156                     push   %r140000000100009509 4157                     push   %r15  at line 2 still jumps into assembly although a bit earlier. I'm going to look at https://wiki.freepascal.org/LazDebuggerFp ---------------------------------------------------------------------- Martin_fr · 2020-10-12 18:04 Do you compile with Optimization disabled? ---------------------------------------------------------------------- arent · 2020-10-15 19:40 QuoteDo you compile with Optimization disabled? Compiler Options | Compilation and Linking | Optimization levels = 0 (no optimization)