commctrl.h: Add WC_STATIC

Felix Nawothnig felix.nawothnig at t-online.de
Tue Jul 12 10:38:49 CDT 2005


Dmitry Timoshkov wrote:
>>> +#define WC_STATICA "Static"
>>> +#if defined(__GNUC__)
>>> +# define WC_STATICW (const WCHAR []){ 'S','t','a', 't','i','c',0 }
>>> +#elif defined(_MSC_VER)
>>> +# define WC_STATICW L"Static"
>>> +#else
>>> +static const WCHAR WC_STATICW[] = { 'S','t','a','t','i','c',0 };
>>> +#endif
>>> +#define WC_STATIC WINELIB_NAME_AW(WC_STATIC)
>>> +
>> I'm curious, what is the reason for the special case handling for MSVC 
>> and GCC when we have to do the portable way anyway?
> (const WCHAR []) cast is not portable (gcc only) and L"string" syntax 
> produces
> different results on different platforms depending on the compiler's 
> builtin
> wchar_t size.

I'm aware of that, my question remains: Why do we _additionally_ provide 
two unportable ways when there is a portable one?

Felix



More information about the wine-devel mailing list