SF patch #523169, by Samuele Pedroni.

There were never tests for the fact that list() always returns a *new*
list object, even when the argument is a list, while tuple() may
return a reference to the argument when it is a tuple.  Now there are.
diff --git a/Lib/test/test_b2.py b/Lib/test/test_b2.py
index c5af1b3..b930380 100644
--- a/Lib/test/test_b2.py
+++ b/Lib/test/test_b2.py
@@ -253,7 +253,9 @@
 
 print 'tuple'
 if tuple(()) != (): raise TestFailed, 'tuple(())'
-if tuple((0, 1, 2, 3)) != (0, 1, 2, 3): raise TestFailed, 'tuple((0, 1, 2, 3))'
+t0_3 = (0, 1, 2, 3)
+t0_3_bis = tuple(t0_3)
+if t0_3 is not t0_3_bis: raise TestFailed, 'tuple((0, 1, 2, 3))'
 if tuple([]) != (): raise TestFailed, 'tuple([])'
 if tuple([0, 1, 2, 3]) != (0, 1, 2, 3): raise TestFailed, 'tuple([0, 1, 2, 3])'
 if tuple('') != (): raise TestFailed, 'tuple('')'