merge from trunk revs. 4475, 4476, 4500 (ktietz) :
rpc.h: include _mingw.h in order to make sure we have internals defined
basetyps.h, rpc.h, objbase.h: undefine interface and define unconditionally
as struct

git-svn-id: svn+ssh://svn.code.sf.net/p/mingw-w64/code/stable/v2.x@4502 4407c894-4637-0410-b4f5-ada5f102cad1
diff --git a/mingw-w64-headers/include/basetyps.h b/mingw-w64-headers/include/basetyps.h
index 4498948..6c74d76 100644
--- a/mingw-w64-headers/include/basetyps.h
+++ b/mingw-w64-headers/include/basetyps.h
@@ -33,6 +33,7 @@
 #if defined(__cplusplus) && !defined(CINTERFACE)
 
 #ifndef __OBJC__
+#undef interface
 #define interface struct
 #endif
 
@@ -51,6 +52,7 @@
 #else
 
 #ifndef __OBJC__
+#undef interface
 #define interface struct
 #endif
 
diff --git a/mingw-w64-headers/include/objbase.h b/mingw-w64-headers/include/objbase.h
index 0b4a5b9..0378a9d 100644
--- a/mingw-w64-headers/include/objbase.h
+++ b/mingw-w64-headers/include/objbase.h
@@ -17,6 +17,7 @@
 #if defined(__cplusplus) && !defined(CINTERFACE)
 
 #ifndef __OBJC__
+#undef interface
 #define interface struct
 #endif
 
@@ -39,6 +40,7 @@
 #else
 
 #ifndef __OBJC__
+#undef interface
 #define interface struct
 #endif
 
diff --git a/mingw-w64-headers/include/rpc.h b/mingw-w64-headers/include/rpc.h
index 6620f52..d1de6e9 100644
--- a/mingw-w64-headers/include/rpc.h
+++ b/mingw-w64-headers/include/rpc.h
@@ -3,6 +3,15 @@
  * This file is part of the w64 mingw-runtime package.
  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  */
+
+/* Make sure we have internals defined.  */
+#include <_mingw.h>
+
+#ifndef __OBJC__
+#undef interface
+#define interface struct
+#endif
+
 #ifndef RPC_NO_WINDOWS_H
 #include <windows.h>
 #endif