well d'oh !! I didn't know VC++ treats *.c files as code written in C I mean, it's pretty incorrect to *identify* files by its extension ... there are better ways, such as headers e.g., of course this is not a binary file ... but if it's VC++ then it must treat the whole code as C++ unless explicitly specified by some #define or something... That's why I said some erors did not make any sense, I thought "why would it yield about simple overloading...everything's all right there", but I didn't think the problem was in the extension, so I didn't rename. Furthermore, how could he write this code with this .c extension if it should not have compiled this way? And also I see no point in renaming it to .c to make confusion. Anyway, odd. But thanks again, at least it complies now. I've already noticed errors too, I will see if I can fix them.

Regards,
Oleg