Do we need to provide a 32 bit number for the last entity of the enum? in order to get it aligned to word boundary?
I see that if this entry is not present then I see corruption for variables before or after.
The Pragma PACK directive can be of service in your case.
However, can you provide an example of your code to clarify your issue.
A rogue pointer is more likely to be the cause of your trouble.