On Wednesday 31 August 2005 19:10, Dmitry Timoshkov wrote: onst GUID name
PSDK has 'extern' for both C and CPP cases, just the CPP one has 'extern "C"'. We have to use the same approach.
Why? We have to get the same *result*, but that doesn't mean we have to have the same *code*.
'extern "C"' on a non-member non-function global is perfectly meaningless to most C++ compilers. As far as I am aware, only MSVC++ mangles global variables. The 'extern "C"' is thus there to deal with a broken feature of the MSVC++ compiler, and is not applicable here unless somebody wants to compile C++ for Winelib using MSVC++ without the PSDK - something which I suspect would have many more obstacles in its path than just this.
Unless there is a functional reason for doing exactly what is done in the PSDK we should actually avoid, as far as possible, doing so. We walk a fine line as it is on copyright law. Copying form that is not dictated by function takes us into more dangerous territory (see Feist Publications v Rural Telephone Service).