Merged revisions 62263 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

................
  r62263 | martin.v.loewis | 2008-04-10 04:48:01 +0200 (Do, 10 Apr 2008) | 19 lines

  Merged revisions 62080-62262 via svnmerge from
  svn+ssh://pythondev@svn.python.org/sandbox/trunk/2to3/lib2to3

  ........
    r62092 | collin.winter | 2008-04-01 18:27:10 +0200 (Di, 01 Apr 2008) | 1 line

    Add get_prev_sibling() to complement pytree's get_next_sibling().
  ........
    r62226 | collin.winter | 2008-04-08 21:07:56 +0200 (Di, 08 Apr 2008) | 1 line

    Add min() and max() to the list of special contexts that don't require adding list() calls around dict methods.
  ........
    r62232 | collin.winter | 2008-04-09 00:12:38 +0200 (Mi, 09 Apr 2008) | 4 lines

    Fix for http://bugs.python.org/issue2596

    This extends fix_xrange to know about the (mostly) same special contexts as fix_dict (where a special context is something that is guaranteed to fully consume the iterable), adding list() calls where appropriate. It also special-cases "x in range(y)".
  ........
................
diff --git a/Lib/lib2to3/fixes/util.py b/Lib/lib2to3/fixes/util.py
index b48aeb3..c977237 100644
--- a/Lib/lib2to3/fixes/util.py
+++ b/Lib/lib2to3/fixes/util.py
@@ -182,6 +182,10 @@
 ### Misc
 ###########################################################
 
+
+consuming_calls = set(["sorted", "list", "set", "any", "all", "tuple", "sum",
+                       "min", "max"])
+
 def attr_chain(obj, attr):
     """Follow an attribute chain.