mirror of https://github.com/python/cpython
#2358: add py3k warning to sys.exc_clear().
This commit is contained in:
parent
77354cf5ef
commit
5a44424c5e
|
@ -94,6 +94,11 @@ class TestPy3KWarnings(unittest.TestCase):
|
|||
with catch_warning() as w:
|
||||
self.assertWarning(sorted(lst, cmp), w, expected)
|
||||
|
||||
def test_sys_exc_clear(self):
|
||||
expected = 'sys.exc_clear() not supported in 3.x. Use except clauses.'
|
||||
with catch_warning() as w:
|
||||
self.assertWarning(sys.exc_clear(), w, expected)
|
||||
|
||||
def test_main():
|
||||
run_unittest(TestPy3KWarnings)
|
||||
|
||||
|
|
|
@ -12,6 +12,8 @@ What's New in Python 2.6 alpha 2?
|
|||
Core and builtins
|
||||
-----------------
|
||||
|
||||
- Issue #2358: Add a Py3k warning on sys.exc_clear() usage.
|
||||
|
||||
- Issue #2400: Allow relative imports to "import *".
|
||||
|
||||
- Issue 1745. Backport print function with:
|
||||
|
|
|
@ -169,8 +169,16 @@ clause in the current stack frame or in an older stack frame."
|
|||
static PyObject *
|
||||
sys_exc_clear(PyObject *self, PyObject *noargs)
|
||||
{
|
||||
PyThreadState *tstate = PyThreadState_GET();
|
||||
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)
|
||||
return NULL;
|
||||
|
||||
tstate = PyThreadState_GET();
|
||||
tmp_type = tstate->exc_type;
|
||||
tmp_value = tstate->exc_value;
|
||||
tmp_tb = tstate->exc_traceback;
|
||||
|
|
Loading…
Reference in New Issue