summaryrefslogtreecommitdiffstats
path: root/Lib/compiler/transformer.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/compiler/transformer.py')
-rw-r--r--Lib/compiler/transformer.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/Lib/compiler/transformer.py b/Lib/compiler/transformer.py
index f07ec97..3d4bb4f 100644
--- a/Lib/compiler/transformer.py
+++ b/Lib/compiler/transformer.py
@@ -288,16 +288,16 @@ class Transformer:
old_lambdef = lambdef
def classdef(self, nodelist):
- # classdef: 'class' NAME ['(' [testlist] ')'] ':' suite
+ # classdef: 'class' NAME ['(' [arglist] ')'] ':' suite
name = nodelist[1][1]
doc = self.get_docstring(nodelist[-1])
if nodelist[2][0] == token.COLON:
- bases = []
+ arglist = CallFunc(None, [])
elif nodelist[3][0] == token.RPAR:
- bases = []
+ arglist = CallFunc(None, [])
else:
- bases = self.com_bases(nodelist[3])
+ arglist = self.com_call_function(None, nodelist[3])
# code for class
code = self.com_node(nodelist[-1])
@@ -307,7 +307,8 @@ class Transformer:
assert isinstance(code.nodes[0], Discard)
del code.nodes[0]
- return Class(name, bases, doc, code, lineno=nodelist[1][2])
+ return Class(name, arglist.args, arglist.star_args, arglist.dstar_args,
+ doc, code, lineno=nodelist[1][2])
def stmt(self, nodelist):
return self.com_stmt(nodelist[0])