include: Use __typeof__ so <guiddef.h> is compatible with -std=c++11.

The typeof(...) extension is available in -std=gnu++11,
but c++11 considers it replaced by decltype(...) and off-by-default
__uuidof does need GNU __typeof__(), not decltype(), for c++03 support and
because both __uuidof(typename) and __uuidof(expression) should work,
but decltype(typename) is not accepted.

Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Puetz Kevin A 2020-07-15 13:06:28 +00:00 committed by Alexandre Julliard
parent 493e9a6164
commit ea90e1ce0d
1 changed files with 1 additions and 1 deletions

View File

@ -74,7 +74,7 @@ extern "C++" {
__WINE_UUID_ATTR const GUID __wine_uuidof<type>::uuid = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}}; \ __WINE_UUID_ATTR const GUID __wine_uuidof<type>::uuid = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}}; \
} }
#define __uuidof(type) __wine_uuidof_type<typeof(type)>::inst::uuid #define __uuidof(type) __wine_uuidof_type<__typeof__(type)>::inst::uuid
#else /* __WINE_UUID_ATTR */ #else /* __WINE_UUID_ATTR */