derpydoo has quit [Quit: derpydoo]
glyph has quit [Quit: End of line.]
glyph has joined #pypy
derpydoo has joined #pypy
jcea has quit [Ping timeout: 246 seconds]
pbsds has quit [Ping timeout: 252 seconds]
jinsun has quit [Ping timeout: 255 seconds]
pbsds has joined #pypy
<
arigato>
it might be that staring hard enough at the crashing function would make cfbolz say "ah, of course"
<
arigato>
otherwise, we could ask the OP for the jit log
<
arigato>
mentioning cfbolz because it's again around the code that handles integer overflows in the JIT
lehmrob has joined #pypy
<
cfbolz>
arigato: oh, I didn’t even look at the bug yet, sorry. Which one is it?
<
cfbolz>
Yes, it's indeed very likely that it's related to the other overflow jit bugs. I'll try to investigate
<
cfbolz>
arigato: note that it's related to bridges as well, so it's possible something is wrong about that
<
mattip>
"array" is a mixedmodule, like "_socket", so should be marked built-in
<
mattip>
but str(_socket) -> "<module '_socket' (built-in)>"
<
mattip>
where str(array) -> "<module 'array'>"
<
mattip>
also, the startup(space) function in array/moduledef.py is not called at import
<
mattip>
startup(space) works when untranslated, and str(array) prints "<module 'array' (built-in)>"
<
cfbolz>
arigato: right, basically during our bug fixes we added an assert that is not actually valid in the case of inlining the short preamble :-(
derpydoo has quit [Ping timeout: 252 seconds]
jcea has joined #pypy
jinsun has joined #pypy
infernix has joined #pypy
infernix has joined #pypy
lehmrob has quit [Quit: Konversation terminated!]
<
mattip>
ahh, somehow array is pre-loaded into sys.modules, in a way that does not call array's startup()
<
arigato>
mattip: note too that builtin modules are arbitrarily divided into two sub-categories, in order to follow CPython more closely
<
arigato>
CPython has "truly built-in modules" and "extension modules that happen to be distributed with CPython"
<
arigato>
of course they make a difference visible in the language, because it's Python
<
arigato>
so I guess that _socket is marked as "it's supposed to be truly built-in in CPython", whereas array not
<
arigato>
or something like that
<
mattip>
do you know where/how the division into two categories happens?
<
mattip>
I doubt cpyext is marked as "truly built-in" by cpython, but its module.init() (which triggers the call to module.startup()) is called,
<
mattip>
where array's module.init() is not
jcea has quit [Ping timeout: 246 seconds]
jcea has joined #pypy
<
mattip>
maybe I found something (after translation, adding print statements)
<
mattip>
from all the times Mixedmodule.init is called, only _rawffi and array have "self.w_initialdict is None"
derpydoo has joined #pypy
jcea1 has joined #pypy
jcea has quit [Ping timeout: 246 seconds]
jcea1 is now known as jcea
<
mattip>
and both those modules have a repr without "(built-in)"
[KOR]Solidarity has joined #pypy
KOR_Solidarity has quit [Ping timeout: 255 seconds]
ammar2 has quit [Remote host closed the connection]
winter has joined #pypy