|
I have begun running own tests on win32. http://buildbot.pypy.org/summary?builder=own-win-x86-32 Almost all of the module._cffi_backend.test.test_c failures are caused by id(x) returning a long where an int is expected in rlib\objectmodel.py compute_unique_id. Note that this passes after translation on applevel tests, so it seems there is a difference between the non-translated and translated versions of compute_unique_id which AFAIK returns a lltype.Signed . would this fix be acceptable? On which platforms does compute_unique_id return a r_longlong ? Matti --- a/rpython/rlib/objectmodel.py Sun Mar 09 23:17:48 2014 +0200 +++ b/rpython/rlib/objectmodel.py Mon Mar 10 00:32:41 2014 +0200 @@ -432,6 +432,10 @@ costly depending on the garbage collector. To remind you of this fact, we don't support id(x) directly. """ + v = id(x) + if sys.platform == 'win32': + from rpython.rlib.rarithmetic import intmask + v = intmask(v) return id(x) # XXX need to return r_longlong on some platforms def current_object_addr_as_int(x): |
_______________________________________________ pypy-dev mailing list [email protected] https://mail.python.org/mailman/listinfo/pypy-dev
