Couple of other things that can be done.
1) Run the IDE
lazarus.exe --debug-log=c:\path\to\log.txt --debug-enable=
DBG_VERBOSE,DBG_WARNINGS,DBG_ERRORS,DBG_VERBOSE_BRKPOINT,DBG_STATE,DBG_EVENTS,DBG_COMMAND_ECHO,DBG_FPDEBUG_VERBOSE,FPDBG_BREAKPOINTS,FPDBG_COMMANDS,FPDBG_THREADS,FPDBG_QUEUE
Slight chance the logfile will have something.
Additional an exe (or objdump) may help. Either would allow me to see the actual debug info for the local var, and from that check if I can figure something out.
With that I would need
- name of the unit and function
- name of the local var
A compiled exe can be send to my private email.
Or you can run objdump on it yourself (and zip the result)
/objdump.exe --dwarf=info project1.exe > dwarf.txt
EDIT
The data will be huge, but you can also check yourself
<2><13e18f>: Abbrev Number: 7 (DW_TAG_subprogram)
<13e190> DW_AT_name : FormCreate
...
<3><13e1e0>: Abbrev Number: 10 (DW_TAG_variable)
<13e1e1> DW_AT_name : value
<13e1e7> DW_AT_location : 2 byte block: 90 19 (DW_OP_regx: 25 (xmm8))
<13e1ea> DW_AT_type : <0x13eb91>
Here the variable is called "value"
And if location contains DW_OP_regx then that is not currently supported (not sure if gdb does / gdb 12 seems to do it)
Usually I would not expect that with -O- or -O1
(unless you enable -ooregvar or have a directive to enable it in the code)