File mono-5.4.0.56-gc.patch of Package mingw64-mono

--- mono-5.4.0.56/libgc/include/private/gcconfig.h	2017-07-28 11:53:59.864051901 +0200
+++ mono-5.4.0.56/libgc/include/private/gcconfig.h	2017-07-28 11:16:19.808939294 +0200
@@ -454,7 +454,7 @@
 #   define CYGWIN32
 #   define mach_type_known
 # endif
-# if defined(__MINGW32__)
+# if defined(__MINGW32__) && !defined(mach_type_known)
 #   define I386
 #   define MSWIN32
 #   define mach_type_known
--- mono-5.4.0.56/libgc/mark.c	2017-06-23 12:11:07.000000000 +0200
+++ mono-5.4.0.56/libgc/mark.c	2017-07-28 11:20:04.305411009 +0200
@@ -267,7 +267,7 @@
 /* register values.					*/
 /* We hold the allocation lock.  In the case of 	*/
 /* incremental collection, the world may not be stopped.*/
-#ifdef MSWIN32
+#if defined(MSWIN32) && defined(I386)
   /* For win32, this is called after we establish a structured	*/
   /* exception handler, in case Windows unmaps one of our root	*/
   /* segments.  See below.  In either case, we acquire the 	*/
@@ -402,7 +402,7 @@
 }
 
 
-#ifdef MSWIN32
+#if defined(MSWIN32) && defined(I386)
 
 # ifdef __GNUC__
 
@@ -522,7 +522,7 @@
 
       return ret_val;
   }
-#endif /* MSWIN32 */
+#endif /* MSWIN32 && I386 */
 
 
 GC_bool GC_mark_stack_empty()
openSUSE Build Service is sponsored by