Make Py3k warnings consistent w.r.t. punctuation; also respect the
EOL 80 limit and supply more alternatives in warning messages.
diff --git a/Python/ast.c b/Python/ast.c
index 8a317b8..1fc2324 100644
--- a/Python/ast.c
+++ b/Python/ast.c
@@ -1363,7 +1363,7 @@
         expr_ty expression;
         if (Py_Py3kWarningFlag) {
             if (PyErr_WarnExplicit(PyExc_DeprecationWarning,
-                                   "backquote not supported in 3.x",
+                                   "backquote not supported in 3.x; use repr()",
                                    c->c_filename, LINENO(n),
                                    NULL, NULL)) {
             return NULL;
diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
index 3956bb5..c760dcb 100644
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -166,7 +166,8 @@
 
 	if (Py_Py3kWarningFlag &&
 	    PyErr_Warn(PyExc_DeprecationWarning, 
-		       "apply() not supported in 3.x. Use func(*args, **kwargs).") < 0)
+		       "apply() not supported in 3.x; "
+		       "use func(*args, **kwargs)") < 0)
 		return NULL;
 
 	if (!PyArg_UnpackTuple(args, "apply", 1, 3, &func, &alist, &kwdict))
@@ -225,7 +226,8 @@
 {
 	if (Py_Py3kWarningFlag &&
 	    PyErr_Warn(PyExc_DeprecationWarning, 
-		       "callable() not supported in 3.x. Use hasattr(o, '__call__').") < 0)
+		       "callable() not supported in 3.x; "
+		       "use hasattr(o, '__call__')") < 0)
 		return NULL;
 	return PyBool_FromLong((long)PyCallable_Check(v));
 }
@@ -684,7 +686,7 @@
 
 	if (Py_Py3kWarningFlag &&
 	    PyErr_Warn(PyExc_DeprecationWarning, 
-		       "execfile() not supported in 3.x.  Use exec().") < 0)
+		       "execfile() not supported in 3.x; use exec()") < 0)
 		return NULL;
 
 	if (!PyArg_ParseTuple(args, "s|O!O:execfile",
@@ -912,7 +914,8 @@
 	if (func == Py_None) {
 		if (Py_Py3kWarningFlag &&
 		    PyErr_Warn(PyExc_DeprecationWarning, 
-			       "map(None, ...) not supported in 3.x. Use list(...).") < 0)
+			       "map(None, ...) not supported in 3.x; "
+			       "use list(...)") < 0)
 			return NULL;
 		if (n == 1) {
 			/* map(None, S) is the same as list(S). */
@@ -1934,7 +1937,8 @@
 
 	if (Py_Py3kWarningFlag &&
 	    PyErr_Warn(PyExc_DeprecationWarning, 
-		       "reduce() not supported in 3.x") < 0)
+		       "reduce() not supported in 3.x; "
+		       "use functools.reduce()") < 0)
 		return NULL;
 
 	if (!PyArg_UnpackTuple(args, "reduce", 2, 3, &func, &seq, &result))
@@ -2011,7 +2015,7 @@
 {
 	if (Py_Py3kWarningFlag &&
 	    PyErr_Warn(PyExc_DeprecationWarning, 
-		       "reload() not supported in 3.x") < 0)
+		       "reload() not supported in 3.x; use imp.reload()") < 0)
 		return NULL;
 
 	return PyImport_ReloadModule(v);
diff --git a/Python/ceval.c b/Python/ceval.c
index dc1aa52..7c7116c 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -4056,7 +4056,7 @@
      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."
+			 "BaseException is not allowed in 3.x"
 
 static PyObject *
 cmp_outcome(int op, register PyObject *v, register PyObject *w)
diff --git a/Python/sysmodule.c b/Python/sysmodule.c
index 89e7e30..e733cee 100644
--- a/Python/sysmodule.c
+++ b/Python/sysmodule.c
@@ -174,8 +174,8 @@
 
 	if (Py_Py3kWarningFlag &&
 	    PyErr_Warn(PyExc_DeprecationWarning,
-		       "sys.exc_clear() not supported in 3.x. "
-		       "Use except clauses.") < 0)
+		       "sys.exc_clear() not supported in 3.x; "
+		       "use except clauses") < 0)
 		return NULL;
 
 	tstate = PyThreadState_GET();