[pypy-commit] pypy default: Test, fix (filename too long in the jitcodes directory!)

arigo pypy.commits at gmail.com
Thu Jan 5 03:39:51 EST 2017


Author: Armin Rigo <arigo at tunes.org>
Branch: 
Changeset: r89373:606e869ec3f2
Date: 2017-01-05 08:58 +0100
http://bitbucket.org/pypy/pypy/changeset/606e869ec3f2/

Log:	Test, fix (filename too long in the jitcodes directory!)

diff --git a/rpython/jit/codewriter/codewriter.py b/rpython/jit/codewriter/codewriter.py
--- a/rpython/jit/codewriter/codewriter.py
+++ b/rpython/jit/codewriter/codewriter.py
@@ -106,8 +106,9 @@
         else:
             name = 'unnamed' % id(ssarepr)
         i = 1
-        # escape <lambda> names for windows
-        name = name.replace('<lambda>', '_(lambda)_')
+        # escape names like <lambda> for windows by removing any strange
+        # character; then make sure the names are not too long
+        name = ''.join(c for c in name if c.isalnum() or c == '_')[:60]
         extra = ''
         while dir.join(name+extra).check():
             i += 1
diff --git a/rpython/jit/metainterp/test/test_ajit.py b/rpython/jit/metainterp/test/test_ajit.py
--- a/rpython/jit/metainterp/test/test_ajit.py
+++ b/rpython/jit/metainterp/test/test_ajit.py
@@ -4613,3 +4613,10 @@
         self.check_operations_history(guard_nonnull=0, guard_nonnull_class=0,
                                       guard_class=2,
                                       assert_not_none=2) # before optimization
+
+    def test_call_time_clock(self):
+        import time
+        def g():
+            time.clock()
+            return 0
+        self.interp_operations(g, [])


More information about the pypy-commit mailing list