Issue #14387: Do not include accu.h from Python.h.
diff --git a/Include/Python.h b/Include/Python.h
index 01b98f9..6affbf5 100644
--- a/Include/Python.h
+++ b/Include/Python.h
@@ -101,7 +101,6 @@
 #include "warnings.h"
 #include "weakrefobject.h"
 #include "structseq.h"
-#include "accu.h"
 
 #include "codecs.h"
 #include "pyerrors.h"
diff --git a/Misc/NEWS b/Misc/NEWS
index 85ac5c0..81c3740 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -155,6 +155,8 @@
 Build
 -----
 
+- Issue #14387: Do not include accu.h from Python.h.
+
 - Issue #14359: Only use O_CLOEXEC in _posixmodule.c if it is defined.
   Based on patch from Hervé Coatanhay.
 
diff --git a/Modules/_io/stringio.c b/Modules/_io/stringio.c
index c4794c9..a1c31c0 100644
--- a/Modules/_io/stringio.c
+++ b/Modules/_io/stringio.c
@@ -1,6 +1,7 @@
 #define PY_SSIZE_T_CLEAN
 #include "Python.h"
 #include "structmember.h"
+#include "accu.h"
 #include "_iomodule.h"
 
 /* Implementation note: the buffer is always at least one character longer
diff --git a/Modules/_json.c b/Modules/_json.c
index cafd5a9..95c658c 100644
--- a/Modules/_json.c
+++ b/Modules/_json.c
@@ -1,5 +1,7 @@
 #include "Python.h"
 #include "structmember.h"
+#include "accu.h"
+
 #if PY_VERSION_HEX < 0x02060000 && !defined(Py_TYPE)
 #define Py_TYPE(ob)     (((PyObject*)(ob))->ob_type)
 #endif
diff --git a/Objects/accu.c b/Objects/accu.c
index 88e8f08..5bd2ee4 100644
--- a/Objects/accu.c
+++ b/Objects/accu.c
@@ -1,6 +1,7 @@
 /* Accumulator struct implementation */
 
 #include "Python.h"
+#include "accu.h"
 
 static PyObject *
 join_list_unicode(PyObject *lst)
diff --git a/Objects/listobject.c b/Objects/listobject.c
index 6f1edc5..c22342b 100644
--- a/Objects/listobject.c
+++ b/Objects/listobject.c
@@ -1,6 +1,7 @@
 /* List object implementation */
 
 #include "Python.h"
+#include "accu.h"
 
 #ifdef STDC_HEADERS
 #include <stddef.h>
diff --git a/Objects/stringlib/unicode_format.h b/Objects/stringlib/unicode_format.h
index f05847a..6807088 100644
--- a/Objects/stringlib/unicode_format.h
+++ b/Objects/stringlib/unicode_format.h
@@ -2,6 +2,7 @@
     unicode_format.h -- implementation of str.format().
 */
 
+#include "accu.h"
 
 /* Defines for more efficiently reallocating the string buffer */
 #define INITIAL_SIZE_INCREMENT 100
diff --git a/Objects/tupleobject.c b/Objects/tupleobject.c
index d58839e..dde34ad 100644
--- a/Objects/tupleobject.c
+++ b/Objects/tupleobject.c
@@ -2,6 +2,7 @@
 /* Tuple object implementation */
 
 #include "Python.h"
+#include "accu.h"
 
 /* Speed optimization to avoid frequent malloc/free of small tuples */
 #ifndef PyTuple_MAXSAVESIZE