[pypy-issue] Issue #2348: pypy3-5.2.0-alpha1 fails to translate on FreeBSD (pypy/pypy)
David Naylor
issues-reply at bitbucket.org
Wed Jul 20 02:34:14 EDT 2016
New issue 2348: pypy3-5.2.0-alpha1 fails to translate on FreeBSD
https://bitbucket.org/pypy/pypy/issues/2348/pypy3-520-alpha1-fails-to-translate-on
David Naylor:
When translating with PyPy-5.1.1 on FreeBSD 10.3 I get:
```
> /usr/bin/env PYPY_LOCALBASE=/usr/local XDG_DATA_HOME=/usr/local/home/dbn/ports/ports/lang/pypy3/work XDG_CONFIG_HOME=/usr/local/home/dbn/ports/ports/lang/pypy3/work HOME=/usr/local/home/dbn/ports/ports/lang/pypy3/work NO_PIE=yes WITHOUT_DEBUG_FILES=yes WITHOUT_KERNEL_SYMBOLS=yes SHELL=/bin/sh NO_LINT=YES PREFIX=/usr/local LOCALBASE=/usr/local LIBDIR="/usr/lib" CC="cc" CFLAGS="-O2 -pipe -fstack-protector -fno-strict-aliasing" CPP="cpp" CPPFLAGS="" LDFLAGS=" -fstack-protector" LIBS="" CXX="c++" CXXFLAGS="-O2 -pipe -fstack-protector -fno-strict-aliasing " MANPREFIX="/usr/local" BSD_INSTALL_PROGRAM="install -s -m 555" BSD_INSTALL_LIB="install -s -m 444" BSD_INSTALL_SCRIPT="install -m 555" BSD_INSTALL_DATA="install -m 0644" BSD_INSTALL_MAN="install -m 444" TMPDIR=/usr/local/home/dbn/ports/ports/lang/pypy3/work/build /usr/local/bin/pypy ../../rpython/bin/rpython --source -Ojit targetpypystandalone.py
<snip/>
[7271] translation-task}
[Timer] Timings:
[Timer] annotate --- 268.9 s
[Timer] ==========================================
[Timer] Total: --- 268.9 s
[translation:info] Error:
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/translator/goal/translate.py", line 317, in main
drv.proceed(goals)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/translator/driver.py", line 551, in proceed
result = self._execute(goals, task_skip = self._maybe_skip())
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/translator/tool/taskengine.py", line 114, in _execute
res = self._do(goal, taskcallable, *args, **kwds)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/translator/driver.py", line 278, in _do
res = func()
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/translator/driver.py", line 315, in task_annotate
s = annotator.build_types(self.entry_point, self.inputtypes)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 86, in build_types
return self.build_graph_types(flowgraph, inputs_s, complete_now=complete_now)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 132, in build_graph_types
self.complete()
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 186, in complete
self.complete_pending_blocks()
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 181, in complete_pending_blocks
self.processblock(graph, block)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 347, in processblock
self.flowin(graph, block)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 446, in flowin
self.consider_op(op)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 598, in consider_op
resultcell = op.consider(self)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/flowspace/operation.py", line 104, in consider
return spec(annotator, *self.args)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/unaryop.py", line 118, in simple_call_SomeObject
return s_func.call(argspec)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/rtyper/lltypesystem/lltype.py", line 1579, in call
v = self.ll_ptrtype._example()(*llargs)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/rtyper/lltypesystem/lltype.py", line 1374, in __call__
"types: %r" % (self._T, args_repr))
[translation:ERROR] TypeError: calling <Func ( INT, * Array of Char , * Struct stat { c_st_dev, c_st_ino, c_st_mode, c_st_nlink, c_st_uid, c_st_gid, c_st_rdev, c_st_atime, c__pad0, c__pad1, c__pad2, c__pad3, c__pad4, c__pad5, c__pad6, c__pad7, c_st_mtime, c__pad8, c__pad9, c__pad10, c__pad11, c__pad12, c__pad13, c__pad14, c__pad15, c_st_ctime, c__pad16, c__pad17, c__pad18, c__pad19, c__pad20, c__pad21, c__pad22, c__pad23, c_st_size, c_st_blocks, c_st_blksize, c_st_flags, c__pad24, c__pad25, c__pad26, c__pad27, c__pad28, c__pad29, c__pad30, c__pad31, c__pad32, c__pad33, c__pad34, c__pad35, c__pad36, c__pad37, c__pad38, c__pad39, c__pad40, c__pad41, c__pad42, c__pad43, c__pad44, c__pad45, c__pad46, c__pad47 }, INT ) -> INT> with wrong argument types: [<INT>, <* Array of Char >, <* Struct stat { c_st_dev, c_st_ino, c_st_mode, c_st_nlink, c_st_uid, c_st_gid, c_st_rdev, c_st_atime, c__pad0, c__pad1, c__pad2, c__pad3, c__pad4, c__pad5, c__pad6, c__pad7, c_st_mtime, c__pad8, c__pad9
, c__pad
10, c__pad11, c__pad12, c__pad13, c__pad14, c__pad15, c_st_ctime, c__pad16, c__pad17, c__pad18, c__pad19, c__pad20, c__pad21, c__pad22, c__pad23, c_st_size, c_st_blocks, c_st_blksize, c_st_flags, c__pad24, c__pad25, c__pad26, c__pad27, c__pad28, c__pad29, c__pad30, c__pad31, c__pad32, c__pad33, c__pad34, c__pad35, c__pad36, c__pad37, c__pad38, c__pad39, c__pad40, c__pad41, c__pad42, c__pad43, c__pad44, c__pad45, c__pad46, c__pad47 }>, <Void>]
Processing block:
block at 6 is a <class 'rpython.flowspace.flowcontext.SpamBlock'>
in (rpython.rtyper.lltypesystem.rffi:3)ccall_fstatat__INT_arrayPtr_statPtr_NoneConst
containing the following operations:
v741 = simple_call((function release))
v740 = simple_call((function _errno_before), (1))
res_0 = simple_call((<* fn fstatat>), a0_0, a1_0, a2_0, a3_0)
v742 = simple_call((function _errno_after), (1))
v743 = simple_call((function acquire))
--end--
[translation] start debugger...
> /usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/rtyper/lltypesystem/lltype.py(1374)__call__()
-> "types: %r" % (self._T, args_repr))
(Pdb+)
```
when translating with Python-2.7.11 I get a different error:
```
> /usr/bin/env PYPY_LOCALBASE=/usr/local XDG_DATA_HOME=/usr/local/home/dbn/ports/ports/lang/pypy3/work XDG_CONFIG_HOME=/usr/local/home/dbn/ports/ports/lang/pypy3/work HOME=/usr/local/home/dbn/ports/ports/lang/pypy3/work NO_PIE=yes WITHOUT_DEBUG_FILES=yes WITHOUT_KERNEL_SYMBOLS=yes SHELL=/bin/sh NO_LINT=YES PREFIX=/usr/local LOCALBASE=/usr/local LIBDIR="/usr/lib" CC="cc" CFLAGS="-O2 -pipe -fstack-protector -fno-strict-aliasing" CPP="cpp" CPPFLAGS="" LDFLAGS=" -fstack-protector" LIBS="" CXX="c++" CXXFLAGS="-O2 -pipe -fstack-protector -fno-strict-aliasing " MANPREFIX="/usr/local" BSD_INSTALL_PROGRAM="install -s -m 555" BSD_INSTALL_LIB="install -s -m 444" BSD_INSTALL_SCRIPT="install -m 555" BSD_INSTALL_DATA="install -m 0644" BSD_INSTALL_MAN="install -m 444" TMPDIR=/usr/local/home/dbn/ports/ports/lang/pypy3/work/build /usr/local/bin/python2.7 ../../rpython/bin/rpython --source -Ojit targetpypystandalone.py
<snip/>
[Timer] Timings:
[Timer] annotate --- 144.9 s
[Timer] ==========================================
[Timer] Total: --- 144.9 s
[translation:info] Error:
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/translator/goal/translate.py", line 317, in main
drv.proceed(goals)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/translator/driver.py", line 551, in proceed
result = self._execute(goals, task_skip = self._maybe_skip())
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/translator/tool/taskengine.py", line 114, in _execute
res = self._do(goal, taskcallable, *args, **kwds)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/translator/driver.py", line 278, in _do
res = func()
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/translator/driver.py", line 315, in task_annotate
s = annotator.build_types(self.entry_point, self.inputtypes)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 86, in build_types
return self.build_graph_types(flowgraph, inputs_s, complete_now=complete_now)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 132, in build_graph_types
self.complete()
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 186, in complete
self.complete_pending_blocks()
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 181, in complete_pending_blocks
self.processblock(graph, block)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 347, in processblock
self.flowin(graph, block)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 513, in flowin
self.follow_link(graph, link, constraints)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 548, in follow_link
self.addpendingblock(graph, link.target, inputs_s)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 174, in addpendingblock
self.mergeinputargs(graph, block, cells)
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/annrpython.py", line 384, in mergeinputargs
unions = [annmodel.unionof(c1,c2) for c1, c2 in zip(oldcells,inputcells)]
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/model.py", line 753, in unionof
s1 = pair(s1, s2).union()
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/binaryop.py", line 774, in union
return obj.noneify()
File "/usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/model.py", line 127, in noneify
raise UnionError(self, s_None)
[translation:ERROR] UnionError:
Offending annotations:
SomeInteger(const=0, knowntype=int, nonneg=True, unsigned=False)
SomeNone()
In <FunctionGraph of (rpython.rlib.rposix:1970)unlinkat at 0x8219033d0>:
Happened at file /usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/rlib/rposix.py line 1972
error = c_unlinkat(dir_fd, pathname, flag)
handle_posix_error('unlinkat', error)
Processing block:
block at 3 is a <class 'rpython.flowspace.flowcontext.SpamBlock'>
in (rpython.rlib.rposix:1970)unlinkat
containing the following operations:
v512 = bool(removedir_0)
--end--
[translation] start debugger...
> /usr/local/home/dbn/ports/ports/lang/pypy3/work/pypy3.3-v5.2.0-alpha1-src/rpython/annotator/model.py(127)noneify()
-> raise UnionError(self, s_None)
```
More information about the pypy-issue
mailing list