]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-36282: Improved error message for too much positional arguments. (GH-12310)
authorSerhiy Storchaka <storchaka@gmail.com>
Wed, 13 Mar 2019 21:03:22 +0000 (23:03 +0200)
committerGitHub <noreply@github.com>
Wed, 13 Mar 2019 21:03:22 +0000 (23:03 +0200)
Lib/test/test_call.py
Misc/NEWS.d/next/Core and Builtins/2019-03-13-22-47-28.bpo-36282.zs7RKP.rst [new file with mode: 0644]
Python/getargs.c

index 75a4a9ff812345959c6beb0605cef36080636a8c..0da0719457f55be810529b40670f1d8b46b4a320 100644 (file)
@@ -157,7 +157,7 @@ class CFunctionCallsErrorMessages(unittest.TestCase):
         self.assertRaisesRegex(TypeError, msg, {}.__contains__, 0, 1)
 
     def test_varargs3(self):
-        msg = r"^from_bytes\(\) takes at most 2 positional arguments \(3 given\)"
+        msg = r"^from_bytes\(\) takes exactly 2 positional arguments \(3 given\)"
         self.assertRaisesRegex(TypeError, msg, int.from_bytes, b'a', 'little', False)
 
     def test_varargs1min(self):
diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-03-13-22-47-28.bpo-36282.zs7RKP.rst b/Misc/NEWS.d/next/Core and Builtins/2019-03-13-22-47-28.bpo-36282.zs7RKP.rst
new file mode 100644 (file)
index 0000000..f9ec51e
--- /dev/null
@@ -0,0 +1,2 @@
+Improved error message for too much positional arguments in some builtin
+functions.
index 876f5c76d20b52536c9cea82fe45422aef1199e7..77ded609eea951b7d67170c1435ad796cb24e556 100644 (file)
@@ -2137,7 +2137,7 @@ vgetargskeywordsfast_impl(PyObject *const *args, Py_ssize_t nargs,
                          "%.200s%s takes %s %d positional argument%s (%d given)",
                          (parser->fname == NULL) ? "function" : parser->fname,
                          (parser->fname == NULL) ? "" : "()",
-                         (parser->min != INT_MAX) ? "at most" : "exactly",
+                         (parser->min < parser->max) ? "at most" : "exactly",
                          parser->max,
                          parser->max == 1 ? "" : "s",
                          nargs);