static PyObject *
array_fromfile_as_read(arrayobject *self, PyObject *args)
{
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "array.read() not supported in 3.x; "
- "use array.fromfile()") < 0)
+ if (PyErr_WarnPy3k("array.read() not supported in 3.x; "
+ "use array.fromfile()", 1) < 0)
return NULL;
return array_fromfile(self, args);
}
static PyObject *
array_tofile_as_write(arrayobject *self, PyObject *f)
{
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "array.write() not supported in 3.x; "
- "use array.tofile()") < 0)
+ if (PyErr_WarnPy3k("array.write() not supported in 3.x; "
+ "use array.tofile()", 1) < 0)
return NULL;
return array_tofile(self, f);
}
Py_ssize_t offset = 0;
Py_ssize_t size = Py_END_OF_BUFFER;
- if (Py_Py3kWarningFlag &&
- PyErr_WarnEx(PyExc_DeprecationWarning,
- "buffer() not supported in 3.x; "
+ if (PyErr_WarnPy3k("buffer() not supported in 3.x; "
"use memoryview()", 1) < 0)
return NULL;
cell_compare(PyCellObject *a, PyCellObject *b)
{
/* Py3K warning for comparisons */
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "cell comparisons not supported in 3.x") < 0) {
+ if (PyErr_WarnPy3k("cell comparisons not supported in 3.x",
+ 1) < 0) {
return -2;
}
/* Py3K warning if types are not equal and comparison
isn't == or != */
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "code inequality comparisons not supported "
- "in 3.x") < 0) {
+ if (PyErr_WarnPy3k("code inequality comparisons not supported "
+ "in 3.x", 1) < 0) {
return NULL;
}
}
else {
/* Py3K warning if comparison isn't == or != */
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "dict inequality comparisons not supported "
- "in 3.x") < 0) {
+ if (PyErr_WarnPy3k("dict inequality comparisons not supported "
+ "in 3.x", 1) < 0) {
return NULL;
}
res = Py_NotImplemented;
static PyObject *
dict_has_key(register PyDictObject *mp, PyObject *key)
{
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "dict.has_key() not supported in 3.x; "
- "use the in operator") < 0)
+ if (PyErr_WarnPy3k("dict.has_key() not supported in 3.x; "
+ "use the in operator", 1) < 0)
return NULL;
return dict_contains(mp, key);
}
static PyObject *
BaseException_getitem(PyBaseExceptionObject *self, Py_ssize_t index)
{
- if (Py_Py3kWarningFlag) {
- if (PyErr_Warn(PyExc_DeprecationWarning,
- "__getitem__ not supported for exception "
- "classes in 3.x; use args attribute") == -1)
- return NULL;
- }
+ if (PyErr_WarnPy3k("__getitem__ not supported for exception "
+ "classes in 3.x; use args attribute", 1) < 0)
+ return NULL;
return PySequence_GetItem(self->args, index);
}
BaseException_getslice(PyBaseExceptionObject *self,
Py_ssize_t start, Py_ssize_t stop)
{
- if (Py_Py3kWarningFlag) {
- if (PyErr_Warn(PyExc_DeprecationWarning,
- "__getslice__ not supported for exception "
- "classes in 3.x; use args attribute") == -1)
- return NULL;
- }
+ if (PyErr_WarnPy3k("__getslice__ not supported for exception "
+ "classes in 3.x; use args attribute", 1) < 0)
+ return NULL;
return PySequence_GetSlice(self->args, start, stop);
}
static PyObject *
get_softspace(PyFileObject *f, void *closure)
{
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "file.softspace not supported in 3.x") < 0)
+ if (PyErr_WarnPy3k("file.softspace not supported in 3.x", 1) < 0)
return NULL;
return PyInt_FromLong(f->f_softspace);
}
set_softspace(PyFileObject *f, PyObject *value)
{
int new;
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "file.softspace not supported in 3.x") < 0)
+ if (PyErr_WarnPy3k("file.softspace not supported in 3.x", 1) < 0)
return -1;
if (value == NULL) {
if (compare == Py_None)
compare = NULL;
if (compare != NULL &&
- Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "the cmp argument is not supported in 3.x") < 0)
+ PyErr_WarnPy3k("the cmp argument is not supported in 3.x", 1) < 0)
return NULL;
if (keyfunc == Py_None)
keyfunc = NULL;
!PyCFunction_Check(other))
{
/* Py3K warning if types are not equal and comparison isn't == or != */
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "builtin_function_or_method inequality "
- "comparisons not supported in 3.x") < 0) {
+ if (PyErr_WarnPy3k("builtin_function_or_method inequality "
+ "comparisons not supported in 3.x", 1) < 0) {
return NULL;
}
/* Py3K warning if types are not equal and comparison isn't == or != */
if (Py_Py3kWarningFlag &&
v->ob_type != w->ob_type && op != Py_EQ && op != Py_NE &&
- PyErr_Warn(PyExc_DeprecationWarning,
+ PyErr_WarnEx(PyExc_DeprecationWarning,
"comparing unequal types not supported "
- "in 3.x") < 0) {
+ "in 3.x", 1) < 0) {
return NULL;
}
if (Py_Py3kWarningFlag &&
(strcmp(attrname, "__members__") == 0 ||
strcmp(attrname, "__methods__") == 0)) {
- if (PyErr_Warn(PyExc_DeprecationWarning,
+ if (PyErr_WarnEx(PyExc_DeprecationWarning,
"__members__ and __methods__ not "
- "supported in 3.x") < 0) {
+ "supported in 3.x", 1) < 0) {
Py_XDECREF(list);
return -1;
}
/* Py3K warning if comparison isn't == or != */
if (Py_Py3kWarningFlag && op != Py_EQ && op != Py_NE &&
- PyErr_Warn(PyExc_DeprecationWarning,
+ PyErr_WarnEx(PyExc_DeprecationWarning,
"type inequality comparisons not supported "
- "in 3.x") < 0) {
+ "in 3.x", 1) < 0) {
return NULL;
}
PyObject *func, *alist = NULL, *kwdict = NULL;
PyObject *t = NULL, *retval = NULL;
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "apply() not supported in 3.x; "
- "use func(*args, **kwargs)") < 0)
+ if (PyErr_WarnPy3k("apply() not supported in 3.x; "
+ "use func(*args, **kwargs)", 1) < 0)
return NULL;
if (!PyArg_UnpackTuple(args, "apply", 1, 3, &func, &alist, &kwdict))
static PyObject *
builtin_callable(PyObject *self, PyObject *v)
{
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "callable() not supported in 3.x; "
- "use hasattr(o, '__call__')") < 0)
+ if (PyErr_WarnPy3k("callable() not supported in 3.x; "
+ "use hasattr(o, '__call__')", 1) < 0)
return NULL;
return PyBool_FromLong((long)PyCallable_Check(v));
}
PyObject *v, *w;
PyObject *res;
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "coerce() not supported in 3.x") < 0)
+ if (PyErr_WarnPy3k("coerce() not supported in 3.x", 1) < 0)
return NULL;
if (!PyArg_UnpackTuple(args, "coerce", 2, 2, &v, &w))
PyCompilerFlags cf;
int exists;
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "execfile() not supported in 3.x; use exec()") < 0)
+ if (PyErr_WarnPy3k("execfile() not supported in 3.x; use exec()",
+ 1) < 0)
return NULL;
if (!PyArg_ParseTuple(args, "s|O!O:execfile",
n--;
if (func == Py_None) {
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "map(None, ...) not supported in 3.x; "
- "use list(...)") < 0)
+ if (PyErr_WarnPy3k("map(None, ...) not supported in 3.x; "
+ "use list(...)", 1) < 0)
return NULL;
if (n == 1) {
/* map(None, S) is the same as list(S). */
{
PyObject *seq, *func, *result = NULL, *it;
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "reduce() not supported in 3.x; "
- "use functools.reduce()") < 0)
+ if (PyErr_WarnPy3k("reduce() not supported in 3.x; "
+ "use functools.reduce()", 1) < 0)
return NULL;
if (!PyArg_UnpackTuple(args, "reduce", 2, 3, &func, &seq, &result))
static PyObject *
builtin_reload(PyObject *self, PyObject *v)
{
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "reload() not supported in 3.x; use imp.reload()") < 0)
+ if (PyErr_WarnPy3k("In 3.x, reload() is renamed to imp.reload()",
+ 1) < 0)
return NULL;
return PyImport_ReloadModule(v);
assert(PyExceptionClass_Check(type));
if (Py_Py3kWarningFlag && PyClass_Check(type)) {
- if (PyErr_Warn(PyExc_DeprecationWarning,
+ if (PyErr_WarnEx(PyExc_DeprecationWarning,
"exceptions must derive from BaseException "
- "in 3.x") == -1)
+ "in 3.x", 1) == -1)
goto raise_error;
}
PyThreadState *tstate;
PyObject *tmp_type, *tmp_value, *tmp_tb;
- if (Py_Py3kWarningFlag &&
- PyErr_Warn(PyExc_DeprecationWarning,
- "sys.exc_clear() not supported in 3.x; "
- "use except clauses") < 0)
+ if (PyErr_WarnPy3k("sys.exc_clear() not supported in 3.x; "
+ "use except clauses", 1) < 0)
return NULL;
tstate = PyThreadState_GET();