Yep. There are similar cases, and in general the choice was to prepend or append a "_", like this:
_cx equ <lx>
IMAGELISTDRADWORDS STRUCT
cbSize DWORD ?
himl DWORD ?
i DWORD ?
hdcDst DWORD ?
x DWORD ?
y DWORD ?
_cx DWORD ?
cy DWORD ?
xBitmap DWORD ?
yBitmap DWORD ?
rgbBk DWORD ?
rgbFg DWORD ?
fStyle DWORD ?
dwRop DWORD ?
IMAGELISTDRADWORDS ENDS
And there are worse cases like this:
IMediaControl STRUCT
QueryInterface dd ?
AddRef dd ?
Release dd ?
GetTypeInfoCount dd ?
GetTypeInfo dd ?
GetIDsOfNames dd ?
Invoke_ dd ?
Run dd ?
Pause_ dd ?
Stop dd ?
GetState dd ?
RenderFile dd ?
AddSourceFilter dd ?
get_FilterCollection dd ?
get_RegFilterCollection dd ?
StopWhenReady dd ?
IMediaControl ENDS
You can't avoid naming conflicts, compromises are needed, and "correcting" old errors would break existing code. It would have been great, of course, if over 20 years ago Hutch had been wise enough to establish a crystal clear Avoid Naming Conflicts Convention (ANCC). But he was a young man then, maybe we should pardon him ;)