(Merge 3.3) _PyUnicode_Writer() now also reuses Unicode singletons:
empty string and latin1 single character
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index 2175655..cb93395 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -12821,7 +12821,7 @@
         writer->buffer = newbuffer;
     }
     assert(_PyUnicode_CheckConsistency(writer->buffer, 1));
-    return writer->buffer;
+    return unicode_result_ready(writer->buffer);
 }
 
 void