]> granicus.if.org Git - python/commitdiff
Clean up the Py3k warnings for non-BaseException-subclasses a bit. We
authorGuido van Rossum <guido@python.org>
Tue, 18 Mar 2008 03:15:05 +0000 (03:15 +0000)
committerGuido van Rossum <guido@python.org>
Tue, 18 Mar 2008 03:15:05 +0000 (03:15 +0000)
now don't warn for some corner cases that deserve a warning, rather
than warning double or incorrectly for some other corner cases.

Python/ceval.c

index 72da26399207e491c39ca58e483e3b97f07b6c2a..d66d97e56bca1414a6fce49852c45131baa47e16 100644 (file)
@@ -4086,8 +4086,9 @@ cmp_outcome(int op, register PyObject *v, register PyObject *w)
                                        if (ret_val == -1)
                                                return NULL;
                                }
-                               if (Py_Py3kWarningFlag  &&
-                                   !Py3kExceptionClass_Check(exc))
+                               else if (Py_Py3kWarningFlag  &&
+                                        !PyTuple_Check(exc) &&
+                                        !Py3kExceptionClass_Check(exc))
                                {
                                        int ret_val;
                                        ret_val = PyErr_WarnEx(
@@ -4108,8 +4109,9 @@ cmp_outcome(int op, register PyObject *v, register PyObject *w)
                                if (ret_val == -1)
                                        return NULL;
                        }
-                       if (Py_Py3kWarningFlag  &&
-                           !Py3kExceptionClass_Check(w))
+                       else if (Py_Py3kWarningFlag  &&
+                                !PyTuple_Check(w) &&
+                                !Py3kExceptionClass_Check(w))
                        {
                                int ret_val;
                                ret_val = PyErr_WarnEx(