https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112582
--- Comment #2 from Anonymous <iamanonymous.cs at gmail dot com> --- (In reply to Andrew Pinski from comment #1) > .cfi_def_cfa_offset 32 > .loc 1 27 5 view .LVU27 > movl $-5, %eax > .loc 1 28 5 view .LVU28 > movl $-10, %edx > .loc 1 29 3 view .LVU29 // point where after `si`'s is located > leaq 14(%rsp), %rsi > leaq 12(%rsp), %rdi > .loc 1 27 5 view .LVU30 > movw %ax, 12(%rsp) > .loc 1 28 3 is_stmt 1 view .LVU31 > .loc 1 28 5 is_stmt 0 view .LVU32 > movw %dx, 14(%rsp) > .loc 1 29 3 is_stmt 1 view .LVU33 // point where step is > call foo > ... > .ascii "x\0" # DW_AT_name > # DW_AT_decl_file (1, /app/example.c) > # DW_AT_decl_line (0x1a) > .byte 0x16 # DW_AT_decl_column > .long 0x9e # DW_AT_type > .uleb128 0x2 # DW_AT_location > .byte 0x91 # DW_OP_fbreg > .sleb128 -20 > .uleb128 0x3 # (DIE (0x78) DW_TAG_variable) > .ascii "y\0" # DW_AT_name > # DW_AT_decl_file (1, /app/example.c) > # DW_AT_decl_line (0x1a) > .byte 0x19 # DW_AT_decl_column > .long 0x9e # DW_AT_type > .uleb128 0x2 # DW_AT_location > .byte 0x91 # DW_OP_fbreg > .sleb128 -18 > > Not a bug. Thank you, Andrew, for your response. I have concerns regarding the information provided by the debugger, as it may be somewhat misleading. Although the debugger indicates that lines 27 and 28 have been executed, a closer examination reveals that the assigned values of the x and y variables do not align with expected results. From the user's perspective, it appears that lines 27 and 28 have indeed been executed, yet the variable values remain unchanged. Therefore, I was wondering whether there are any guarantees from the compiler or debugger.