Hi,
I must be honest, I'm to lazy to find out if someone has already reported this (I think) bug. I submitted a bug report to Keil:
Using uVision V4.53.0.0
I suspect that the [Call Stack + Locals] windows shows incorrect data.
I use:
struct A { B (2 enum type bytes) C (6 bytes) D E }
I fill structure A element C by passing a pointer to A->C to a structure fill function.
If I then examine the value of A->C:2 (3rd byte, byte 2) by copying it into a variable and examine it with the debugger it is correct.
The debugger [Call Stack + Locals] windows however shows the value to be in A->C:4 in stead of in A->C:2, just two bytes (sizeof(B)) memory locations further on.
The debugger shows both enumeration byte values A->B in the correct way but shows their values also as the first two bytes of A->C.
The debugger also shows the same memory address for both A->B and A->C.
I suspect that the enumerations do disturb the debugger interpretation.
Some other issues maybe already fixed:
In the find/replace window you have to tab 8 times to get from the 'find' to the 'replace' edit box. I'm used to 1 tab.
When editing: you have to press 'escape' to do a file save by Alt+f+s. So my application is littered with 'fs' strings...
Thanks for listening, ;-)
Henk
In my case F10 unfortunately not sufficient, somehow the address changes constantly by this amount of 2, and as the address is wrong then, the debug info is also completely wrong.