headers: fix enum declaration
diff --git a/mingw-w64-headers/include/windows.system.threading.h b/mingw-w64-headers/include/windows.system.threading.h
index 69e6d7a..c0a4d0a 100644
--- a/mingw-w64-headers/include/windows.system.threading.h
+++ b/mingw-w64-headers/include/windows.system.threading.h
@@ -151,38 +151,6 @@
 struct __x_ABI_CWindows_CFoundation_CTimeSpan;
 #endif
 
-#ifdef __cplusplus
-} /* extern "C" */
-namespace ABI {
-    namespace Windows {
-        namespace System {
-            namespace Threading {
-                enum WorkItemPriority;
-            }
-        }
-    }
-}
-extern "C" {
-#else
-enum __x_ABI_CWindows_CSystem_CThreading_CWorkItemPriority;
-#endif
-
-#ifdef __cplusplus
-} /* extern "C" */
-namespace ABI {
-    namespace Windows {
-        namespace System {
-            namespace Threading {
-                enum WorkItemOptions;
-            }
-        }
-    }
-}
-extern "C" {
-#else
-enum __x_ABI_CWindows_CSystem_CThreading_CWorkItemOptions;
-#endif
-
 #ifndef ____x_ABI_CWindows_CSystem_CThreading_CTimerElapsedHandler_FWD_DEFINED__
 #define ____x_ABI_CWindows_CSystem_CThreading_CTimerElapsedHandler_FWD_DEFINED__
 typedef interface __x_ABI_CWindows_CSystem_CThreading_CTimerElapsedHandler __x_ABI_CWindows_CSystem_CThreading_CTimerElapsedHandler;
@@ -279,6 +247,52 @@
 #endif /* __cplusplus */
 #endif
 
+#ifdef __cplusplus
+} /* extern "C" */
+namespace ABI {
+    namespace Windows {
+        namespace System {
+            namespace Threading {
+                enum WorkItemPriority {
+                    WorkItemPriority_Low = -1,
+                    WorkItemPriority_Normal = 0,
+                    WorkItemPriority_High = 1
+                };
+            }
+        }
+    }
+}
+extern "C" {
+#else
+enum __x_ABI_CWindows_CSystem_CThreading_CWorkItemPriority {
+    WorkItemPriority_Low = -1,
+    WorkItemPriority_Normal = 0,
+    WorkItemPriority_High = 1
+};
+#endif
+
+#ifdef __cplusplus
+} /* extern "C" */
+namespace ABI {
+    namespace Windows {
+        namespace System {
+            namespace Threading {
+                enum WorkItemOptions {
+                    WorkItemOptions_None = 0,
+                    WorkItemOptions_TimeSliced = 1
+                };
+            }
+        }
+    }
+}
+extern "C" {
+#else
+enum __x_ABI_CWindows_CSystem_CThreading_CWorkItemOptions {
+    WorkItemOptions_None = 0,
+    WorkItemOptions_TimeSliced = 1
+};
+#endif
+
 /*****************************************************************************
  * TimerElapsedHandler interface
  *
diff --git a/mingw-w64-headers/include/windows.system.threading.idl b/mingw-w64-headers/include/windows.system.threading.idl
index e4e9f8c..a2dc585 100644
--- a/mingw-w64-headers/include/windows.system.threading.idl
+++ b/mingw-w64-headers/include/windows.system.threading.idl
@@ -19,8 +19,8 @@
 
     namespace System {
         namespace Threading {
-            enum WorkItemPriority;
-            enum WorkItemOptions;
+            typedef enum WorkItemPriority WorkItemPriority;
+            typedef enum WorkItemOptions WorkItemOptions;
             interface TimerElapsedHandler;   //delegate
             interface TimerDestroyedHandler; //delegate
             interface WorkItemHandler;       //delegate
@@ -35,16 +35,16 @@
     namespace System {
         namespace Threading
         {
-            typedef enum WorkItemPriority {
+            enum WorkItemPriority {
                 Low    = -1,
                 Normal = 0,
                 High   = 1
-            } WorkItemPriority;
+            };
 
-            typedef enum WorkItemOptions {
+            enum WorkItemOptions {
                 None       = 0,
                 TimeSliced = 1
-            } WorkItemOptions;
+            };
 
             typedef struct TimeSpan {
                 INT64 Duration;