merge from trunk r4950: _mingw.h (__int128, __SIZEOF_INT128__): Handle clang.

git-svn-id: svn+ssh://svn.code.sf.net/p/mingw-w64/code/stable/v1.x@5337 4407c894-4637-0410-b4f5-ada5f102cad1
diff --git a/mingw-w64-crt/revstamp.h b/mingw-w64-crt/revstamp.h
index 1791169..443edae 100644
--- a/mingw-w64-crt/revstamp.h
+++ b/mingw-w64-crt/revstamp.h
@@ -1,4 +1,4 @@
 /* Do not edit. Autogenerated.  */
-#define __MINGW_W64_REV	"5305"
-#define __MINGW_W64_REV_STAMP "2012-08-01"
+#define __MINGW_W64_REV	"5337"
+#define __MINGW_W64_REV_STAMP "2012-08-07"
 
diff --git a/mingw-w64-headers/include/ChangeLog b/mingw-w64-headers/include/ChangeLog
index 6ccace7..d48351a 100644
--- a/mingw-w64-headers/include/ChangeLog
+++ b/mingw-w64-headers/include/ChangeLog
@@ -34,6 +34,10 @@
 
 	* dwmapi.h: Fixed all function prototypes to be WINAPI.
 
+2012-04-10  Ozkan Sezer  <sezeroz@gmail.com>
+
+	* _mingw.h (__int128, __SIZEOF_INT128__): Handle clang.
+
 2012-01-19  Kai Tietz  <ktietz@redhat.com>
 
 	PR 3474190
diff --git a/mingw-w64-headers/include/_mingw.h b/mingw-w64-headers/include/_mingw.h
index 742acb8..f68e099 100644
--- a/mingw-w64-headers/include/_mingw.h
+++ b/mingw-w64-headers/include/_mingw.h
@@ -194,6 +194,10 @@
 #define __int32 int
 #define __int64 long long
 #ifdef _WIN64
+#if (__clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 1)) && \
+    !defined(__SIZEOF_INT128__) /* clang >= 3.1 has __int128 but no size macro */
+#define __SIZEOF_INT128__ 16
+#endif
 #ifndef __SIZEOF_INT128__
 typedef int __int128 __attribute__ ((__mode__ (TI)));
 #endif