[pypy-svn] r20393 - in pypy/branch/somepbc-refactoring/pypy/translator/c: . test
arigo at codespeak.net
arigo at codespeak.net
Tue Nov 29 15:28:11 CET 2005
Author: arigo
Date: Tue Nov 29 15:28:10 2005
New Revision: 20393
Modified:
pypy/branch/somepbc-refactoring/pypy/translator/c/genc.py
pypy/branch/somepbc-refactoring/pypy/translator/c/test/test_standalone.py
Log:
test_standalone works again
Modified: pypy/branch/somepbc-refactoring/pypy/translator/c/genc.py
==============================================================================
--- pypy/branch/somepbc-refactoring/pypy/translator/c/genc.py (original)
+++ pypy/branch/somepbc-refactoring/pypy/translator/c/genc.py Tue Nov 29 15:28:10 2005
@@ -11,6 +11,7 @@
from pypy.tool.udir import udir
from pypy.translator.locality.calltree import CallTree
from pypy.translator.c.support import log
+from pypy.rpython.typesystem import getfunctionptr
class CBuilder(object):
c_source_filename = None
@@ -121,7 +122,8 @@
def getentrypointptr(self):
# XXX check that the entrypoint has the correct
# signature: list-of-strings -> int
- return getfunctionptr(self.translator, self.entrypoint)
+ bk = self.translator.annotator.bookkeeper
+ return getfunctionptr(bk.getdesc(self.entrypoint).cachedgraph(None))
def getccompiler(self, extra_includes):
# XXX for now, we always include Python.h
Modified: pypy/branch/somepbc-refactoring/pypy/translator/c/test/test_standalone.py
==============================================================================
--- pypy/branch/somepbc-refactoring/pypy/translator/c/test/test_standalone.py (original)
+++ pypy/branch/somepbc-refactoring/pypy/translator/c/test/test_standalone.py Tue Nov 29 15:28:10 2005
@@ -1,4 +1,5 @@
-from pypy.translator.translator import Translator
+from pypy.translator.translator import TranslationContext
+from pypy.translator.c.genc import CStandaloneBuilder
from pypy.annotation.model import SomeList, SomeString
from pypy.annotation.listdef import ListDef
import os
@@ -13,12 +14,13 @@
os.write(1, " '" + str(s) + "'\n")
return 0
- t = Translator(entry_point)
s_list_of_strings = SomeList(ListDef(None, SomeString()))
s_list_of_strings.listdef.resize()
- t.annotate([s_list_of_strings])
- t.specialize()
- cbuilder = t.cbuilder(standalone=True)
+ t = TranslationContext()
+ t.buildannotator().build_types(entry_point, [s_list_of_strings])
+ t.buildrtyper().specialize()
+
+ cbuilder = CStandaloneBuilder(t, entry_point)
cbuilder.generate_source()
cbuilder.compile()
data = cbuilder.cmdexec('hi there')
More information about the Pypy-commit
mailing list