diff --git a/Misc/ACKS b/Misc/ACKS
index cce6152..86ff1ea 100644
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -360,6 +360,7 @@
 Lawrence Kesteloot
 Vivek Khera
 Mads Kiilerich
+Taek Joo Kim
 Steve Kirsch
 Ron Klatchko
 Bastian Kleineidam
diff --git a/Misc/NEWS b/Misc/NEWS
index 03597a5..cb84491 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -12,6 +12,9 @@
 Core and builtins
 -----------------
 
+- Issue #2371: Add a Py3k warning when catching an exception that
+  doesn't derive from BaseException.
+
 - Issue #2321: use pymalloc for unicode object string data to reduce
   memory usage in some circumstances.
 
diff --git a/Python/ceval.c b/Python/ceval.c
index 4fc1709..72da263 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -4042,6 +4042,13 @@
 	}
 }
 
+#define Py3kExceptionClass_Check(x)     \
+    (PyType_Check((x)) &&               \
+     PyType_FastSubclass((PyTypeObject*)(x), Py_TPFLAGS_BASE_EXC_SUBCLASS))
+
+#define CANNOT_CATCH_MSG "catching classes that don't inherit from " \
+			 "BaseException is not allowed in 3.x."
+
 static PyObject *
 cmp_outcome(int op, register PyObject *v, register PyObject *w)
 {
@@ -4079,6 +4086,16 @@
 					if (ret_val == -1)
 						return NULL;
 				}
+				if (Py_Py3kWarningFlag  &&
+				    !Py3kExceptionClass_Check(exc))
+				{
+					int ret_val;
+					ret_val = PyErr_WarnEx(
+						PyExc_DeprecationWarning,
+						CANNOT_CATCH_MSG, 1);
+					if (ret_val == -1)
+						return NULL;
+				}
 			}
 		}
 		else {
@@ -4091,6 +4108,16 @@
 				if (ret_val == -1)
 					return NULL;
 			}
+			if (Py_Py3kWarningFlag  &&
+			    !Py3kExceptionClass_Check(w))
+			{
+				int ret_val;
+				ret_val = PyErr_WarnEx(
+					PyExc_DeprecationWarning,
+					CANNOT_CATCH_MSG, 1);
+				if (ret_val == -1)
+					return NULL;
+			}
 		}
 		res = PyErr_GivenExceptionMatches(v, w);
 		break;
