This was quite a dark bug in my recent in-place string concatenation
hack: it would resize *interned* strings in-place!  This occurred because
their reference counts do not have their expected value -- stringobject.c
hacks them.  Mea culpa.
diff --git a/Python/ceval.c b/Python/ceval.c
index 4dd31ab..4c9bded 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -4253,7 +4253,7 @@
 		}
 	}
 
-	if (v->ob_refcnt == 1) {
+	if (v->ob_refcnt == 1 && !PyString_CHECK_INTERNED(v)) {
 		/* Now we own the last reference to 'v', so we can resize it
 		 * in-place.
 		 */