Merge 3.4
diff --git a/Misc/NEWS b/Misc/NEWS
index 961a4ee..ed5aedd 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -89,6 +89,8 @@
 - Issue #24044: Fix possible null pointer dereference in list.sort in out of
   memory conditions.
 
+- Issue #21354: PyCFunction_New function is exposed by python DLL again.
+
 Library
 -------
 
diff --git a/Objects/methodobject.c b/Objects/methodobject.c
index b5467a4..1817722 100644
--- a/Objects/methodobject.c
+++ b/Objects/methodobject.c
@@ -16,7 +16,7 @@
 /* undefine macro trampoline to PyCFunction_NewEx */
 #undef PyCFunction_New
 
-PyObject *
+PyAPI_FUNC(PyObject *)
 PyCFunction_New(PyMethodDef *ml, PyObject *self)
 {
     return PyCFunction_NewEx(ml, self, NULL);