diff --git a/Lib/test/test_bytes.py b/Lib/test/test_bytes.py index 1d826b63802..999346f3b12 100644 --- a/Lib/test/test_bytes.py +++ b/Lib/test/test_bytes.py @@ -374,7 +374,7 @@ class BytesTest(unittest.TestCase): self.assertEqual(b1 + "def", bytes("abcdef")) self.assertEqual("def" + b1, bytes("defabc")) self.assertRaises(TypeError, lambda: b1 + u"def") - ##self.assertRaises(TypeError, lambda: u"abc" + b2) # XXX FIXME + self.assertRaises(TypeError, lambda: u"abc" + b2) def test_repeat(self): b = bytes("abc") diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 4fe4d100316..ce28692d7b3 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -5535,6 +5535,9 @@ PyObject *PyUnicode_Concat(PyObject *left, { PyUnicodeObject *u = NULL, *v = NULL, *w; + if (PyBytes_Check(left) || PyBytes_Check(right)) + return PyBytes_Concat(left, right); + /* Coerce the two arguments */ u = (PyUnicodeObject *)PyUnicode_FromObject(left); if (u == NULL)