nonstandard extension used : cast on l-value
With the default Microsoft extensions (/Ze), you can use casts on the left side of an assignment statement.
Example
void *a; void f() { int i[3]; a = &i; *(( int * )a )++ = 3; // warning }
Such casts are illegal under ANSI compatibility (/Za).