ceval.c/do_raise(): Tighten the test to disallow raising an instance of

a str subclass.

test_descr.py/string_exceptions():  New sub-test.

For 2.3 only.  Guido doesn't want this backported.
This commit is contained in:
Tim Peters 2002-04-18 18:06:20 +00:00
parent 16af557ae9
commit afb2c80b29
2 changed files with 30 additions and 1 deletions

View file

@ -2743,7 +2743,10 @@ do_raise(PyObject *type, PyObject *value, PyObject *tb)
Py_DECREF(tmp);
}
if (PyString_Check(type))
if (PyString_CheckExact(type))
/* Raising builtin string is deprecated but still allowed --
* do nothing. Raising an instance of a new-style str
* subclass is right out. */
;
else if (PyClass_Check(type))