From bfb0cf822bedb25c38fa7f411af83d6654872dd4 Mon Sep 17 00:00:00 2001 From: Jeremy Hylton Date: Thu, 12 Apr 2001 17:33:34 +0000 Subject: Revise handling of tuple arguments so that the variables names match those used by compile.c. (test_grammar now depends on the names) --- Lib/compiler/pycodegen.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'Lib/compiler/pycodegen.py') diff --git a/Lib/compiler/pycodegen.py b/Lib/compiler/pycodegen.py index c0bbed3f51..691232faac 100644 --- a/Lib/compiler/pycodegen.py +++ b/Lib/compiler/pycodegen.py @@ -1101,11 +1101,10 @@ class AbstractFunctionCode: self.emit('RETURN_VALUE') def generateArgUnpack(self, args): - count = 0 - for arg in args: + for i in range(len(args)): + arg = args[i] if type(arg) == types.TupleType: - self.emit('LOAD_FAST', '.nested%d' % count) - count = count + 1 + self.emit('LOAD_FAST', '.%d' % (i * 2)) self.unpackSequence(arg) def unpackSequence(self, tup): @@ -1184,13 +1183,14 @@ def generateArgList(arglist): args = [] extra = [] count = 0 - for elt in arglist: + for i in range(len(arglist)): + elt = arglist[i] if type(elt) == types.StringType: args.append(elt) elif type(elt) == types.TupleType: - args.append(TupleArg(count, elt)) - count = count + 1 + args.append(TupleArg(i * 2, elt)) extra.extend(misc.flatten(elt)) + count = count + 1 else: raise ValueError, "unexpect argument type:", elt return args + extra, count -- cgit v1.2.1