[pypy-issue] Issue #2018: Rtyper failure when using prebuilt dict with function values (pypy/pypy)
Ronan Lamy
issues-reply at bitbucket.org
Wed Apr 8 18:34:18 CEST 2015
New issue 2018: Rtyper failure when using prebuilt dict with function values
https://bitbucket.org/pypy/pypy/issue/2018/rtyper-failure-when-using-prebuilt-dict
Ronan Lamy:
This:
```python
def stub(test):
pass
table = {'stub': stub}
def entry_point(argv):
if len(argv) > 1 and argv[1] in table:
print 'hello'
return 0
def target(*args):
return entry_point, None
```
crashes with:
```
...
[translation:info] File "rpython/rtyper/lltypesystem/rordereddict.py", line 386, in rtype_contains
[translation:info] v_dict, v_key = hop.inputargs(r_dict, r_dict.key_repr)
[translation:info] File "rpython/rtyper/rtyper.py", line 678, in inputargs
[translation:info] vars.append(self.inputarg(converted_to[i], i))
[translation:info] File "rpython/rtyper/rtyper.py", line 659, in inputarg
[translation:info] return inputconst(converted_to, v.value)
[translation:info] File "rpython/rtyper/rmodel.py", line 346, in inputconst
[translation:info] value = reqtype.convert_const(value)
[translation:info] File "rpython/rtyper/lltypesystem/rordereddict.py", line 263, in convert_const
[translation:info] l_dict.keyhash(llkey))
[translation:info] File "rpython/rtyper/lltypesystem/rordereddict.py", line 606, in _ll_dict_insertclean
[translation:info] entry.value = value
[translation:info] File "rpython/rtyper/lltypesystem/lltype.py", line 1270, in __setattr__
[translation:info] T2 = typeOf(val)
[translation:info] File "rpython/rtyper/lltypesystem/lltype.py", line 836, in typeOf
[translation:info] raise TypeError("typeOf(%r object)" % (tp.__name__,))
[translation:ERROR] TypeError: typeOf('function' object)
```
More information about the pypy-issue
mailing list