Cause passing a string to generator.throw() to raise a deprecation warning.
diff --git a/Misc/NEWS b/Misc/NEWS
index 214611b..24b29eb 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -12,6 +12,9 @@
 Core and builtins
 -----------------
 
+- Issue #1147: Generators were not raising a DeprecationWarning when a string
+  was passed into throw().
+
 - Patch #1031213: Decode source line in SyntaxErrors back to its original source
   encoding.
 
diff --git a/Objects/genobject.c b/Objects/genobject.c
index 4d0c4f6..063b907 100644
--- a/Objects/genobject.c
+++ b/Objects/genobject.c
@@ -262,6 +262,12 @@
 			     typ->ob_type->tp_name);
 			goto failed_throw;
 	}
+	else {
+		/* String exceptions are deprecated. */
+		if (PyErr_Warn(PyExc_DeprecationWarning,
+					"raising string exceptions is deprecated"))
+			goto failed_throw;
+	}
 
 	PyErr_Restore(typ, val, tb);
 	return gen_send_ex(gen, Py_None, 1);