PyUnicode_New() and unicode_putchar() check for MAX_UNICODE maximum (U+10FFFF)
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index a42aad9..afe7a9f 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -998,6 +998,7 @@
             is_sharing = 1;
     }
     else {
+        assert(maxchar <= MAX_UNICODE);
         kind_state = PyUnicode_4BYTE_KIND;
         char_size = 4;
         if (sizeof(wchar_t) == 4)
@@ -1627,6 +1628,7 @@
 unicode_putchar(PyObject **p_unicode, Py_ssize_t *pos,
                 Py_UCS4 ch)
 {
+    assert(ch <= MAX_UNICODE);
     if (unicode_widen(p_unicode, ch) < 0)
         return -1;
     PyUnicode_WRITE(PyUnicode_KIND(*p_unicode),