[pypy-svn] r29731 - pypy/dist/pypy/rpython/rctypes/tool

fijal at codespeak.net fijal at codespeak.net
Fri Jul 7 13:08:02 CEST 2006


Author: fijal
Date: Fri Jul  7 13:08:00 2006
New Revision: 29731

Modified:
   pypy/dist/pypy/rpython/rctypes/tool/compilemodule.py
Log:
Added changed compilemodule, so we can possibly import debug from single place.


Modified: pypy/dist/pypy/rpython/rctypes/tool/compilemodule.py
==============================================================================
--- pypy/dist/pypy/rpython/rctypes/tool/compilemodule.py	(original)
+++ pypy/dist/pypy/rpython/rctypes/tool/compilemodule.py	Fri Jul  7 13:08:00 2006
@@ -8,6 +8,7 @@
 import autopath
 import sys
 
+from pypy.tool.error import debug
 
 def compilemodule(modname, interactive=False):
     "Compile a PyPy module for CPython."
@@ -69,44 +70,6 @@
         raise SystemExit(1)
     return driver.cbuilder.c_ext_module
 
-
-def debug(drv):
-    # XXX unify some code with pypy.translator.goal.translate
-    from pypy.translator.tool.pdbplus import PdbPlusShow
-    from pypy.translator.driver import log
-    t = drv.translator
-    class options:
-        huge = 100
-
-    tb = None
-    import traceback
-    errmsg = ["Error:\n"]
-    exc, val, tb = sys.exc_info()
-    errmsg.extend([" %s" % line for line in traceback.format_exception(exc, val, tb)])
-    block = getattr(val, '__annotator_block', None)
-    if block:
-        class FileLike:
-            def write(self, s):
-                errmsg.append(" %s" % s)
-        errmsg.append("Processing block:\n")
-        t.about(block, FileLike())
-    log.ERROR(''.join(errmsg))
-
-    log.event("start debugger...")
-
-    def server_setup(port=None):
-        if port is not None:
-            from pypy.translator.tool.graphserver import run_async_server
-            serv_start, serv_show, serv_stop = self.async_server = run_async_server(t, options, port)
-            return serv_start, serv_show, serv_stop
-        else:
-            from pypy.translator.tool.graphserver import run_server_for_inprocess_client
-            return run_server_for_inprocess_client(t, options)
-
-    pdb_plus_show = PdbPlusShow(t)
-    pdb_plus_show.start(tb, server_setup, graphic=True)
-
-
 def main(argv):
     if len(argv) != 2:
         print >> sys.stderr, __doc__



More information about the Pypy-commit mailing list