Changing local variable's datatype is denied, causing Unable to use type for symbol ...
message
#6908
Labels
Unable to use type for symbol ...
message
#6908
Describe the bug
With a structure defined in the application's data segment (
DS
) and members of said structure also defined, accessing a defined member is causing an incorrect datatype to be assigned to the local variable that cannot be changed. I.e.:lVar1 = *(long *)&DgnInter_1028_0000_0x61_t_1078_11be.field2_0x6;
where
field2_0x6
is of typeDgnInter_1018_0d46_0x?_t *32
and the assembly is:1018:0d55 66 a1 c4 11 012 MOV EAX,DS:[0x11c4]
Note the use of a single 32-bit register instead of two 16-bit ones.
To Reproduce
Steps to reproduce the behavior:
Decompile:
PanelsDebug Function Decompilation
menu)lVar1
else if
statement (line 30) is still malformedExpected behavior
The size of the register to load an address shouldn't:
Screenshots
N/A
Attachments
dgninter_FUN_1018_0d46.zip
Environment (please complete the following information):
Additional context
This is a Protected-Mode 16-bit Windows NE EXE from a Borland C/C++ v 4.?? compiler.
The text was updated successfully, but these errors were encountered: