--- Include/pyport.h.old	2014-10-12 08:52:01.000000000 +0200
+++ Include/pyport.h	2016-08-01 06:22:09.000000000 +0200
@@ -697,6 +697,12 @@ extern pid_t forkpty(int *, char *, stru
 #endif
 
 #ifdef _PY_PORT_CTYPE_UTF8_ISSUE
+#ifndef __cplusplus
+   /* The workaround below is unsafe in C++ because
+    * the <locale> defines these symbols as real functions,
+    * with a slightly different signature.
+    * See issue #10910
+    */
 #include <ctype.h>
 #include <wctype.h>
 #undef isalnum
@@ -714,6 +720,7 @@ extern pid_t forkpty(int *, char *, stru
 #undef toupper
 #define toupper(c) towupper(btowc(c))
 #endif
+#endif
 
 
 /* Declarations for symbol visibility.
