What does error mean, when running the translator against my rpython code?
[translation:ERROR] AttributeError': 'FrozenDesc' object has no
attribute 'rowkey'
Can anyone give me some insight?
Thanks.
Timothy
The code:
class Runtime(Obj):
def __init__(self):
Obj.__init__(self)
self.defs = dict()
self.vars = []
The Error:
[translation:ERROR] Error:
[translation:ERROR] Traceback (most recent call last):
[translation:ERROR] File "./pypy/translator/goal/translate.py",
line 306, in main
[translation:ERROR] drv.proceed(goals)
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\translator\driver.py",
line 809, in proceed
[translation:ERROR] return self._execute(goals, task_skip =
self._maybe_skip())
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\translator\tool\taskeng
ine.py", line 116, in _execute
[translation:ERROR] res = self._do(goal, taskcallable, *args, **kwds)
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\translator\driver.py",
line 286, in _do
[translation:ERROR] res = func()
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\translator\driver.py",
line 323, in task_annotate
[translation:ERROR] s = annotator.build_types(self.entry_point,
self.inputtypes)
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\annotation\annrpython.p
y", line 103, in build_types
[translation:ERROR] return self.build_graph_types(flowgraph,
inputcells, complete_now=complete_n
ow)
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\annotation\annrpython.p
y", line 194, in build_graph_types
[translation:ERROR] self.complete()
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\annotation\annrpython.p
y", line 250, in complete
[translation:ERROR] self.processblock(graph, block)
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\annotation\annrpython.p
y", line 448, in processblock
[translation:ERROR] self.flowin(graph, block)
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\annotation\annrpython.p
y", line 508, in flowin
[translation:ERROR] self.consider_op(block.operations[i])
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\annotation\annrpython.p
y", line 710, in consider_op
[translation:ERROR] raise_nicer_exception(op, str(graph))
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\annotation\annrpython.p
y", line 707, in consider_op
[translation:ERROR] resultcell = consider_meth(*argcells)
[translation:ERROR] File "<121-codegen
c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\annotation
\annrpython.py:745>", line 3, in consider_op_simple_call
[translation:ERROR] return arg.simple_call(*args)
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\annotation\unaryop.py",
line 175, in simple_call
[translation:ERROR] return
obj.call(getbookkeeper().build_args("simple_call", args_s))
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\annotation\unaryop.py",
line 695, in call
[translation:ERROR] return bookkeeper.pbc_call(pbc, args)
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\annotation\bookkeeper.p
y", line 640, in pbc_call
[translation:ERROR] first.mergecallfamilies(*descs[1:])
[translation:ERROR] File
"c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\annotation\description.
py", line 151, in mergecallfamilies
[translation:ERROR] changed, rep, callfamily =
call_families.find(self.rowkey())
[translation:ERROR] AttributeError': 'FrozenDesc' object has no
attribute 'rowkey'
[translation:ERROR] .. v0 = simple_call((type dict))
[translation:ERROR] .. '(runtime.runtime:7)Runtime.__init__'
[translation:ERROR] Processing block:
[translation:ERROR] block@9 is a <class
'pypy.objspace.flow.flowcontext.SpamBlock'>
[translation:ERROR] in (runtime.runtime:7)Runtime.__init__
[translation:ERROR] containing the following operations:
[translation:ERROR] v1 = simple_call((instancemethod __init__), self_0)
[translation:ERROR] v0 = simple_call((type dict))
[translation:ERROR] v2 = setattr(self_0, ('defs'), v0)
[translation:ERROR] v3 = newlist()
[translation:ERROR] v4 = setattr(self_0, ('vars'), v3)
[translation:ERROR] --end--
[translation] start debugger...
> c:\projects\pypy\pypy-1.5-src\pypy-1.5-src\pypy\annotation\description.py(151)mergecallfamilies()
-> changed, rep, callfamily = call_families.find(self.rowkey())
(Pdb+)
--
“One of the main causes of the fall of the Roman Empire was
that–lacking zero–they had no way to indicate successful termination
of their C programs.”
(Robert Firth)