]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
As discussed briefly on python-dev, add Pending Deprecation Warning
authorNeal Norwitz <nnorwitz@gmail.com>
Fri, 10 Jan 2003 15:31:15 +0000 (15:31 +0000)
committerNeal Norwitz <nnorwitz@gmail.com>
Fri, 10 Jan 2003 15:31:15 +0000 (15:31 +0000)
when a string exception is raised.  Note that raising string exceptions
is deprecated in an exception message.

Python/ceval.c

index b5fbd47da9effc46869c18a4c9061756e1a5efce..0c52c47a97b3e80e3daac70d59c1eca1f6777f17 100644 (file)
@@ -2733,7 +2733,8 @@ do_raise(PyObject *type, PyObject *value, PyObject *tb)
                /* Raising builtin string is deprecated but still allowed --
                 * do nothing.  Raising an instance of a new-style str
                 * subclass is right out. */
-               ;
+               PyErr_Warn(PyExc_PendingDeprecationWarning,
+                          "raising a string exception is deprecated");
 
        else if (PyClass_Check(type))
                PyErr_NormalizeException(&type, &value, &tb);
@@ -2757,8 +2758,9 @@ do_raise(PyObject *type, PyObject *value, PyObject *tb)
                /* Not something you can raise.  You get an exception
                   anyway, just not what you specified :-) */
                PyErr_Format(PyExc_TypeError,
-                            "exceptions must be strings, classes, or "
-                            "instances, not %s", type->ob_type->tp_name);
+                            "exceptions must be classes, instances, or "
+                            "strings (deprecated), not %s",
+                            type->ob_type->tp_name);
                goto raise_error;
        }
        PyErr_Restore(type, value, tb);