Issue #21124: Fix building _struct on Cygwin.

Patch by Masayuki Yamamoto.
diff --git a/Misc/NEWS b/Misc/NEWS
index 96a5c90..b7fc2ae 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -175,6 +175,10 @@
 Build
 -----
 
+- Issue #21124: Fix building the _struct module on Cygwin by passing ``NULL``
+  instead of ``&PyType_Type`` to PyVarObject_HEAD_INIT.  Patch by Masayuki
+  Yamamoto.
+
 - Issue #13756: Fix building extensions modules on Cygwin.  Patch by Roumen
   Petrov, based on original patch by Jason Tishler.
 
diff --git a/Modules/_struct.c b/Modules/_struct.c
index 796d168..9d48691 100644
--- a/Modules/_struct.c
+++ b/Modules/_struct.c
@@ -1650,7 +1650,7 @@
 }
 
 static PyTypeObject unpackiter_type = {
-    PyVarObject_HEAD_INIT(&PyType_Type, 0)
+    PyVarObject_HEAD_INIT(NULL, 0)
     "unpack_iterator",                          /* tp_name */
     sizeof(unpackiterobject),                   /* tp_basicsize */
     0,                                          /* tp_itemsize */