hand-holding? no thanks, if I wanted a compiler that assumes I'm stupid, I'll use javac.
To test out the last bit of your theory:
Code:
#include <cstdlib>
#include <cstring>
int main(){ memset(0, (int)(long)(int)NULL, 0);}
this compiles fine, so if it were overloading (int), it would have caught it there as well.
I guess I should take this up with the gnu/mingw mailing threads... I mean what possibly logical explanation could explain why
Code:
memset(0, (int)(long)(int)NULL, 0); // this works
memset(0, (int)NULL, 0); // and this does not