[libbluray-devel] win32: not all compiler support __typeof__.

ace20022 git at videolan.org
Fri Mar 17 12:41:39 CET 2017


libbluray | branch: master | ace20022 <ace20022 at ymail.com> | Wed Mar  8 16:45:46 2017 +0100| [b33ff65ccd6fbccea889fca7f691f4706dbd3021] | committer: hpi1

win32: not all compiler support __typeof__.

> http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=b33ff65ccd6fbccea889fca7f691f4706dbd3021
---

 src/libbluray/bdj/bdj.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/libbluray/bdj/bdj.c b/src/libbluray/bdj/bdj.c
index b68701f..96b3332 100644
--- a/src/libbluray/bdj/bdj.c
+++ b/src/libbluray/bdj/bdj.c
@@ -74,10 +74,12 @@ static void *_load_dll(const wchar_t *lib_path, const wchar_t *dll_search_path)
 {
     void *result;
 
-    PVOID WINAPI (*pAddDllDirectory)   (PCWSTR);
-    BOOL  WINAPI (*pRemoveDllDirectory)(PVOID);
-    pAddDllDirectory    = (__typeof__(pAddDllDirectory))    GetProcAddress(GetModuleHandle(TEXT("kernel32.dll")), "AddDllDirectory");
-    pRemoveDllDirectory = (__typeof__(pRemoveDllDirectory)) GetProcAddress(GetModuleHandle(TEXT("kernel32.dll")), "RemoveDllDirectory");
+    typedef PVOID(WINAPI *AddDllDirectoryF)  (PCWSTR);
+    typedef BOOL(WINAPI *RemoveDllDirectoryF)(PVOID);
+    AddDllDirectoryF pAddDllDirectory;
+    RemoveDllDirectoryF pRemoveDllDirectory;
+    pAddDllDirectory = (AddDllDirectoryF)GetProcAddress(GetModuleHandle(TEXT("kernel32.dll")), "AddDllDirectory");
+    pRemoveDllDirectory = (RemoveDllDirectoryF)GetProcAddress(GetModuleHandle(TEXT("kernel32.dll")), "RemoveDllDirectory");
 
     if (pAddDllDirectory && pRemoveDllDirectory) {
 



More information about the libbluray-devel mailing list