summaryrefslogtreecommitdiffstats
path: root/Objects
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2017-03-05 22:53:39 (GMT)
committerGitHub <noreply@github.com>2017-03-05 22:53:39 (GMT)
commit58d23e68068996c76cac78887ec67dee68cdbc72 (patch)
tree08c445d38282d71be01f109d459d7448364aec0e /Objects
parentd31b28e16a2387d0251df948ef5d1b33d4357652 (diff)
downloadcpython-58d23e68068996c76cac78887ec67dee68cdbc72.zip
cpython-58d23e68068996c76cac78887ec67dee68cdbc72.tar.gz
cpython-58d23e68068996c76cac78887ec67dee68cdbc72.tar.bz2
bpo-29695: Deprecated using bad named keyword arguments in builtings: (#486)
int(), bool(), float(), list() and tuple(). Specify the value as a positional argument instead.
Diffstat (limited to 'Objects')
-rw-r--r--Objects/boolobject.c6
-rw-r--r--Objects/floatobject.c6
-rw-r--r--Objects/listobject.c6
-rw-r--r--Objects/longobject.c6
-rw-r--r--Objects/tupleobject.c6
5 files changed, 30 insertions, 0 deletions
diff --git a/Objects/boolobject.c b/Objects/boolobject.c
index 31510bb..b54b052 100644
--- a/Objects/boolobject.c
+++ b/Objects/boolobject.c
@@ -48,6 +48,12 @@ bool_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
if (!PyArg_ParseTupleAndKeywords(args, kwds, "|O:bool", kwlist, &x))
return NULL;
+ if (kwds != NULL && PyDict_GET_SIZE(kwds) != 0) {
+ if (PyErr_Warn(PyExc_DeprecationWarning,
+ "Using 'x' as a keyword argument is deprecated; "
+ "specify the value as a positional argument instead") < 0)
+ return NULL;
+ }
ok = PyObject_IsTrue(x);
if (ok < 0)
return NULL;
diff --git a/Objects/floatobject.c b/Objects/floatobject.c
index 17a55dd..3a881c3 100644
--- a/Objects/floatobject.c
+++ b/Objects/floatobject.c
@@ -1569,6 +1569,12 @@ float_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
return float_subtype_new(type, args, kwds); /* Wimp out */
if (!PyArg_ParseTupleAndKeywords(args, kwds, "|O:float", kwlist, &x))
return NULL;
+ if (kwds != NULL && PyDict_GET_SIZE(kwds) != 0) {
+ if (PyErr_Warn(PyExc_DeprecationWarning,
+ "Using 'x' as a keyword argument is deprecated; "
+ "specify the value as a positional argument instead") < 0)
+ return NULL;
+ }
/* If it's a string, but not a string subclass, use
PyFloat_FromString. */
if (PyUnicode_CheckExact(x))
diff --git a/Objects/listobject.c b/Objects/listobject.c
index edd4a15..59f6881 100644
--- a/Objects/listobject.c
+++ b/Objects/listobject.c
@@ -2297,6 +2297,12 @@ list_init(PyListObject *self, PyObject *args, PyObject *kw)
if (!PyArg_ParseTupleAndKeywords(args, kw, "|O:list", kwlist, &arg))
return -1;
+ if (arg != NULL && PyTuple_GET_SIZE(args) == 0) {
+ if (PyErr_Warn(PyExc_DeprecationWarning,
+ "Using 'sequence' as a keyword argument is deprecated; "
+ "specify the value as a positional argument instead") < 0)
+ return -1;
+ }
/* Verify list invariants established by PyType_GenericAlloc() */
assert(0 <= Py_SIZE(self));
diff --git a/Objects/longobject.c b/Objects/longobject.c
index 0bf6cee..6c47602 100644
--- a/Objects/longobject.c
+++ b/Objects/longobject.c
@@ -4811,6 +4811,12 @@ long_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
}
return PyLong_FromLong(0L);
}
+ if (PyTuple_GET_SIZE(args) == 0) {
+ if (PyErr_Warn(PyExc_DeprecationWarning,
+ "Using 'x' as a keyword argument is deprecated; "
+ "specify the value as a positional argument instead") < 0)
+ return NULL;
+ }
if (obase == NULL)
return PyNumber_Long(x);
diff --git a/Objects/tupleobject.c b/Objects/tupleobject.c
index 5bcadeb..c2696c7 100644
--- a/Objects/tupleobject.c
+++ b/Objects/tupleobject.c
@@ -654,6 +654,12 @@ tuple_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
return tuple_subtype_new(type, args, kwds);
if (!PyArg_ParseTupleAndKeywords(args, kwds, "|O:tuple", kwlist, &arg))
return NULL;
+ if (arg != NULL && PyTuple_GET_SIZE(args) == 0) {
+ if (PyErr_Warn(PyExc_DeprecationWarning,
+ "Using 'sequence' as a keyword argument is deprecated; "
+ "specify the value as a positional argument instead") < 0)
+ return NULL;
+ }
if (arg == NULL)
return PyTuple_New(0);