Issue #16761: Raise TypeError when int() called with base argument only.
diff --git a/Objects/longobject.c b/Objects/longobject.c
index 49e9d5d..5a50f24 100644
--- a/Objects/longobject.c
+++ b/Objects/longobject.c
@@ -4255,13 +4255,19 @@
     if (!PyArg_ParseTupleAndKeywords(args, kwds, "|OO:int", kwlist,
                                      &x, &obase))
         return NULL;
-    if (x == NULL)
+    if (x == NULL) {
+        if (obase != NULL) {
+            PyErr_SetString(PyExc_TypeError,
+                            "int() missing string argument");
+            return NULL;
+        }
         return PyLong_FromLong(0L);
+    }
     if (obase == NULL)
         return PyNumber_Long(x);
     if (!PyLong_Check(obase)) {
         PyErr_SetString(PyExc_TypeError,
-                        "int() arg 2 must be an integer.");
+                        "int() base must be an integer.");
         return NULL;
     }
 
@@ -4270,7 +4276,7 @@
         return NULL;
     if ((base != 0 && base < 2) || base > 36) {
         PyErr_SetString(PyExc_ValueError,
-                        "int() arg 2 must be >= 2 and <= 36");
+                        "int() base must be >= 2 and <= 36");
         return NULL;
     }