Compiler Warning (level 4) C4213
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
// C4213.c
// compile with: /W4
void *a;
void f()
{
int i[3];
a = &i;
*(( int * )a )++ = 3; // C4213
}
int main()
{
}
Such casts are invalid under ANSI compatibility (/Za).