[pypy-dev] int_py_mod_nonnegargs(): one arg is negative LLAssertFailure
Shubha Ramani
shubharamani at yahoo.com
Fri Dec 9 08:38:54 EST 2016
Interesting. Thank You !
> On Dec 9, 2016, at 12:45 AM, Armin Rigo <armin.rigo at gmail.com> wrote:
>
> Hi,
>
> On 9 December 2016 at 02:00, Shubha Ramani via pypy-dev
> <pypy-dev at python.org> wrote:
>> Why am I getting this error ?
>> pidigits.py runs fine outside of the pytest environment.
>
> I'm getting:
>
> from rpython.jit.metainterp.test.support import LLJitMixin,X86JitMixin
> E ImportError: cannot import name X86JitMixin
>
> After hacking at that until the test runs (replacing it with
> LLJitMixin), then I see the problem. It's likely caused by integer
> overflow. Your f() function computes the digits of pi, but it's not
> valid RPython because integers overflow the size of C 'long'. An
> internal test then fails because although '(n*3 + a) % d' was
> supposedly proven to occur on known-nonnegative arguments, the value
> did overflow and is now negative. Copying the same algorithm in C
> with the type 'long' everywhere would be similarly undefined C code.
>
>
> Armin
More information about the pypy-dev
mailing list