Keil C does not support this line:
typedef const UINT32 volatile xdata *PCVX32;
typedef const volatile UINT32 xdata *PCVX32;
No ANSI C compiler supports UINT32 or xdata. Those have to be either something you have defined as being meaningful to you, or something they have defined as a language extension (or some combination).
The position of "volatile" is the aim.You can try
typedef const long volatile *PVLONG;
typedef const volatile long *PVLONG;
And if there is no "const", it's also OK.