Skip to content

Instantly share code, notes, and snippets.

@Wilfred
Created February 9, 2014 23:34
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Wilfred/8907799 to your computer and use it in GitHub Desktop.
Save Wilfred/8907799 to your computer and use it in GitHub Desktop.
RPython error without obvious soruce
./rpython main.py
[translation:info] 2.7.6 (default, Nov 26 2013, 12:52:49)
[translation:info] [GCC 4.8.2]
[platform:msg] Set platform with 'host' cc=None, using cc='gcc'
[translation:info] Translating target as defined by main
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/gcctest.c -o /tmp/usession-release-2.2.x-88/gcctest.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/gcctest.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/gcctest
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/gcctest.c -o /tmp/usession-release-2.2.x-88/gcctest.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/gcctest.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/gcctest
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_0.c -o /tmp/usession-release-2.2.x-88/platcheck_0.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_0.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_0
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_1.c -o /tmp/usession-release-2.2.x-88/platcheck_1.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_1.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_1
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_2.c -o /tmp/usession-release-2.2.x-88/platcheck_2.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_2.o -pthread -lintl -lrt -o /tmp/usession-release-2.2.x-88/platcheck_2
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_3.c -o /tmp/usession-release-2.2.x-88/platcheck_3.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_3.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_3
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_4.c -o /tmp/usession-release-2.2.x-88/platcheck_4.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_4.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_4
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_5.c -o /tmp/usession-release-2.2.x-88/platcheck_5.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_5.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_5
[translation] translate.py configuration:
[translation] [translate]
[translation] targetspec = main
[translation] translation configuration:
[translation] [translation]
[translation] gc = incminimark
[translation] gctransformer = framework
[translation] list_comprehension_operations = True
[translation] withsmallfuncsets = 5
[translation:info] Annotating&simplifying...
[36] {translation-task
starting annotate
[translation:info] with policy: rpython.annotator.policy.AnnotatorPolicy
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_6.c -o /tmp/usession-release-2.2.x-88/platcheck_6.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_6.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_6
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_7.c -o /tmp/usession-release-2.2.x-88/platcheck_7.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_8.c -o /tmp/usession-release-2.2.x-88/platcheck_8.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_9.c -o /tmp/usession-release-2.2.x-88/platcheck_9.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_9.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_9
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_10.c -o /tmp/usession-release-2.2.x-88/platcheck_10.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_10.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_10
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_11.c -o /tmp/usession-release-2.2.x-88/platcheck_11.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_11.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_11
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_12.c -o /tmp/usession-release-2.2.x-88/platcheck_12.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_12.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_12
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_13.c -o /tmp/usession-release-2.2.x-88/platcheck_13.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_13.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_13
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_14.c -o /tmp/usession-release-2.2.x-88/platcheck_14.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_15.c -o /tmp/usession-release-2.2.x-88/platcheck_15.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_15.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_15
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_16.c -o /tmp/usession-release-2.2.x-88/platcheck_16.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_16.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_16
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_17.c -o /tmp/usession-release-2.2.x-88/platcheck_17.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_17.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_17
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -I/home/wilfred/projects/trifle/src/pypy/rpython/translator/c /tmp/usession-release-2.2.x-88/platcheck_18.c -o /tmp/usession-release-2.2.x-88/platcheck_18.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -I/home/wilfred/projects/trifle/src/pypy/rpython/translator/c /home/wilfred/projects/trifle/src/pypy/rpython/translator/c/src/thread.c -o /tmp/usession-release-2.2.x-88/rpython/translator/c/src/thread.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_18.o /tmp/usession-release-2.2.x-88/rpython/translator/c/src/thread.o -pthread -Wl,--export-dynamic,--version-script=/tmp/usession-release-2.2.x-88/dynamic-symbols-0 -lrt -o /tmp/usession-release-2.2.x-88/platcheck_18
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_19.c -o /tmp/usession-release-2.2.x-88/platcheck_19.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_19.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_19
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_20.c -o /tmp/usession-release-2.2.x-88/platcheck_20.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_20.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_20
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_21.c -o /tmp/usession-release-2.2.x-88/platcheck_21.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_21.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_21
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_22.c -o /tmp/usession-release-2.2.x-88/platcheck_22.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_22.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_22
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_23.c -o /tmp/usession-release-2.2.x-88/platcheck_23.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_23.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_23
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_24.c -o /tmp/usession-release-2.2.x-88/platcheck_24.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_24.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_24
...................++++
[annrpython:WARNING] <FunctionGraph of (posixpath:68)join__star_1 at 0x2b33f50> block@92 op=0/ no precise annotation supplied for add((SomeChar(const='/', no_nul=True), SomeUnicodeString(const=u'prelude.tfl')),)
..
[annrpython:WARNING] <FunctionGraph of (posixpath:68)join__star_1 at 0x2b33f50> block@76 op=0/ no precise annotation supplied for add((SomeString(no_nul=True), SomeUnicodeString(const=u'prelude.tfl')),)
[annrpython:WARNING] <FunctionGraph of (posixpath:68)join__star_1 at 0x2b33f50> block@76 op=0/ no precise annotation supplied for add((SomeString(no_nul=True), SomeUnicodeString(const=u'prelude.tfl')),)
[annrpython:WARNING] <FunctionGraph of (posixpath:68)join__star_1 at 0x2b33f50> block@92 op=0/ no precise annotation supplied for add((SomeChar(const='/', no_nul=True), SomeUnicodeString(const=u'prelude.tfl')),)
...................++++++++++++++++++++++++++++++************%%%%%%%######%%%%%*******************[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-2.2.x-88/platcheck_25.c -o /tmp/usession-release-2.2.x-88/platcheck_25.o
[platform:execute] gcc /tmp/usession-release-2.2.x-88/platcheck_25.o -pthread -lrt -o /tmp/usession-release-2.2.x-88/platcheck_25
*****++
..............++++++++++++++++++*************************%%%%%%#%######[177] translation-task}
[Timer] Timings:
[Timer] annotate --- 4.6 s
[Timer] ========================================
[Timer] Total: --- 4.6 s
[translation:info] Error:
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/translator/goal/translate.py", line 318, in main
[translation:info] drv.proceed(goals)
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/translator/driver.py", line 534, in proceed
[translation:info] return self._execute(goals, task_skip = self._maybe_skip())
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/translator/tool/taskengine.py", line 114, in _execute
[translation:info] res = self._do(goal, taskcallable, *args, **kwds)
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/translator/driver.py", line 283, in _do
[translation:info] res = func()
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/translator/driver.py", line 320, in task_annotate
[translation:info] s = annotator.build_types(self.entry_point, self.inputtypes)
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/annrpython.py", line 91, in build_types
[translation:info] return self.build_graph_types(flowgraph, inputcells, complete_now=complete_now)
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/annrpython.py", line 145, in build_graph_types
[translation:info] self.complete()
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/annrpython.py", line 199, in complete
[translation:info] self.complete_pending_blocks()
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/annrpython.py", line 194, in complete_pending_blocks
[translation:info] self.processblock(graph, block)
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/annrpython.py", line 344, in processblock
[translation:info] self.flowin(graph, block)
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/annrpython.py", line 408, in flowin
[translation:info] self.consider_op(block, i)
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/annrpython.py", line 602, in consider_op
[translation:info] resultcell = consider_meth(*argcells)
[translation:info] File "<48-codegen /home/wilfred/projects/trifle/src/pypy/rpython/annotator/annrpython.py:641>", line 3, in consider_op_simple_call
[translation:info] return arg.simple_call(*args)
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/unaryop.py", line 151, in simple_call
[translation:info] return obj.call(getbookkeeper().build_args("simple_call", args_s))
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/unaryop.py", line 739, in call
[translation:info] return bookkeeper.pbc_call(pbc, args)
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/bookkeeper.py", line 660, in pbc_call
[translation:info] results.append(desc.pycall(schedule, args, s_previous_result, op))
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/description.py", line 299, in pycall
[translation:info] result = self.specialize(inputcells, op)
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/description.py", line 289, in specialize
[translation:info] enforceargs(self, inputcells) # can modify inputcells in-place
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/signature.py", line 125, in __call__
[translation:info] s_input = unionof(s_input, s_arg)
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/model.py", line 744, in unionof
[translation:info] s1 = pair(s1, s2).union()
[translation:info] File "/home/wilfred/projects/trifle/src/pypy/rpython/annotator/binaryop.py", line 56, in union
[translation:info] raise UnionError(obj1, obj2)
[translation:ERROR] UnionError:
[translation:ERROR]
[translation:ERROR] Offending annotations:
[translation:ERROR] SomeUnicodeString()
[translation:ERROR] SomeString()
[translation:ERROR]
[translation:ERROR]
[translation:ERROR] Occurred processing the following simple_call:
[translation:ERROR] (KeyError getting at the binding!)
[translation:ERROR] v1 = simple_call((function str2charp), v0)
[translation:ERROR]
[translation:ERROR] In <FunctionGraph of (rpython.rlib.rfile:52)create_file at 0x3189290>:
[translation:ERROR] Happened at file /home/wilfred/projects/trifle/src/pypy/rpython/rlib/rfile.py line 56
[translation:ERROR]
[translation:ERROR] ==> ll_name = rffi.str2charp(filename)
[translation:ERROR] try:
[translation:ERROR] ll_mode = rffi.str2charp(mode)
[translation:ERROR]
[translation:ERROR] Known variable annotations:
[translation:ERROR] v0 = SomeUnicodeString()
[translation:ERROR]
[translation:ERROR] Processing block:
[translation:ERROR] block@63 is a <class 'rpython.flowspace.flowcontext.SpamBlock'>
[translation:ERROR] in (rpython.rlib.rfile:52)create_file
[translation:ERROR] containing the following operations:
[translation:ERROR] v1 = simple_call((function str2charp), v0)
[translation:ERROR] v2 = simple_call((function str2charp), mode_0)
[translation:ERROR] --end--
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment