Introduce OverflowWarning -- to be issued when short int operations
are overflowing and a long int operation is substituted.
diff --git a/Include/pyerrors.h b/Include/pyerrors.h
index 1ee4fe2..d7b7639 100644
--- a/Include/pyerrors.h
+++ b/Include/pyerrors.h
@@ -66,6 +66,7 @@
extern DL_IMPORT(PyObject *) PyExc_UserWarning;
extern DL_IMPORT(PyObject *) PyExc_DeprecationWarning;
extern DL_IMPORT(PyObject *) PyExc_SyntaxWarning;
+extern DL_IMPORT(PyObject *) PyExc_OverflowWarning;
extern DL_IMPORT(PyObject *) PyExc_RuntimeWarning;
diff --git a/Python/exceptions.c b/Python/exceptions.c
index 6fb52ca..ef9d01c 100644
--- a/Python/exceptions.c
+++ b/Python/exceptions.c
@@ -105,6 +105,7 @@
+-- UserWarning\n\
+-- DeprecationWarning\n\
+-- SyntaxWarning\n\
+ +-- OverflowWarning\n\
+-- RuntimeWarning";
@@ -912,6 +913,9 @@
SyntaxWarning__doc__[] = "Base class for warnings about dubious syntax.";
static char
+OverflowWarning__doc__[] = "Base class for warnings about numeric overflow.";
+
+static char
RuntimeWarning__doc__[] =
"Base class for warnings about dubious runtime behavior.";
@@ -973,6 +977,7 @@
PyObject *PyExc_UserWarning;
PyObject *PyExc_DeprecationWarning;
PyObject *PyExc_SyntaxWarning;
+PyObject *PyExc_OverflowWarning;
PyObject *PyExc_RuntimeWarning;
@@ -1047,6 +1052,8 @@
{"DeprecationWarning", &PyExc_DeprecationWarning, &PyExc_Warning,
DeprecationWarning__doc__},
{"SyntaxWarning", &PyExc_SyntaxWarning, &PyExc_Warning, SyntaxWarning__doc__},
+ {"OverflowWarning", &PyExc_OverflowWarning, &PyExc_Warning,
+ OverflowWarning__doc__},
{"RuntimeWarning", &PyExc_RuntimeWarning, &PyExc_Warning,
RuntimeWarning__doc__},
/* Sentinel */