Commit 84d79ddc authored by Guido van Rossum's avatar Guido van Rossum

Disallow u"..." + b"..." and b"..." + u"...".

parent ad7d8d10
...@@ -374,7 +374,7 @@ class BytesTest(unittest.TestCase): ...@@ -374,7 +374,7 @@ class BytesTest(unittest.TestCase):
self.assertEqual(b1 + "def", bytes("abcdef")) self.assertEqual(b1 + "def", bytes("abcdef"))
self.assertEqual("def" + b1, bytes("defabc")) self.assertEqual("def" + b1, bytes("defabc"))
self.assertRaises(TypeError, lambda: b1 + u"def") 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): def test_repeat(self):
b = bytes("abc") b = bytes("abc")
......
...@@ -5535,6 +5535,9 @@ PyObject *PyUnicode_Concat(PyObject *left, ...@@ -5535,6 +5535,9 @@ PyObject *PyUnicode_Concat(PyObject *left,
{ {
PyUnicodeObject *u = NULL, *v = NULL, *w; PyUnicodeObject *u = NULL, *v = NULL, *w;
if (PyBytes_Check(left) || PyBytes_Check(right))
return PyBytes_Concat(left, right);
/* Coerce the two arguments */ /* Coerce the two arguments */
u = (PyUnicodeObject *)PyUnicode_FromObject(left); u = (PyUnicodeObject *)PyUnicode_FromObject(left);
if (u == NULL) if (u == NULL)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment