00:06 colomon joined 00:16 lue joined 00:52 tadzik joined 07:41 FROGGS joined 07:51 japhb joined, japhb_ joined 08:36 odc joined 10:46 odc joined 14:17 jnap joined 14:32 vmspb joined 14:48 benabik joined 15:14 odc joined 15:46 cognominal joined 16:48 cognominal joined 17:44 colomon joined 18:56 FROGGS joined 18:59 benabik joined
benabik Blarg. OS X build failure (likely all *BSDs as well): "src/io/fileops.c:297:48: error: too few arguments to function call, expected 3, have 1 waitpid(handle->body.u.process->pid);" Leaving this here in case somebody gets time before I do. 19:16
FROGGS benabik: known 19:27
hoelzro++ was working on a fix but is afk for the week I think 19:28
benabik FROGGS: :,( 19:33
*blink* waitpid seems to have 3 arguments on Linux too. 19:35
FROGGS huh
how on... <add favourite planet here> 19:36
that would be an easy fix then^^
benabik ... I'm wondering if it doesn't #include <sys/wait.h>, so C is assuming it's an int(int)
benabik hates that "feature" 19:37
FROGGS yeah
doing wrong things because of being lax is one of the worst things out there
jnthn ugh 19:38
All the waitpid docs I see need 3 args. 19:39
FROGGS >.<
benabik: are you about to push a fix like waitpid(mumble, NULL, 0) (and the include), or shall I? 19:40
benabik FROGGS: I'm alternating between schoolwork and this. Hadn't yet gotten to it. We might want to add the include when needed though... 19:41
jnthn How does the call ever work out if it's missing two args?
benabik Top of stack is first argument. 19:43
So it's using whatever variables happen to be on top of stack as arg 2 & 3.
Oh on x64 it's probably using registers. So whatever happens to be in RSI/RDX. 19:44
We might have lucked out and those values tend to be zero. 19:46
jnthn Naming a register RSI is...ouch :P 19:47
benabik :-D
FROGGS does this look good? gist.github.com/FROGGS/601af1d005a0c1b13df5 19:48
benabik FROGGS: Looks good to me. sys/wait.h is on both Linux and OS X, so probably is general enough. :-) 19:50
FROGGS good :o)
dalek arVM: 29b1208 | (Tobias Leich)++ | src/ (2 files):
fix use of waitpid
19:51
benabik And it compiles. Bonus. 19:52
FROGGS cool! 19:53
20:02 hoelzro joined
FROGGS nqp: 72057594037927936 20:02
20:02 rurban_ joined
camelia ( no output ) 20:03
20:03 __sri joined
FROGGS nqp: gist.github.com/FROGGS/64c224637a10fff02e33 20:07
camelia nqp-parrot: OUTPUTĀ«Error while compiling op list (source text: ","): Cannot infer type from '72057594037927936'ā¤current instr.: '' pc 57008 (gen/parrot/stage2/QAST.pir:21035) (gen/parrot/stage2/QAST.nqp:3629)ā¤Ā»
..nqp-moarvm: OUTPUTĀ«(signal SEGV)Object does not exist in serialization contextā¤ at /tmp/tmpfile:34 (<ephemeral file>::74)ā¤ from /tmp/tmpfile:24 (<ephemeral file>::58)ā¤ from /tmp/tmpfile:14 (<ephemeral file>::47)ā¤ from gen/moar/stage2/NQPHLL.nqp:1090 (/home/p6eval/rakudā€¦Ā»
..nqp-jvm: OUTPUTĀ«1..1ā¤Missing serialize function for REPR P6bigintā¤ in (/tmp/tmpfile:34)ā¤ in (/tmp/tmpfile:24)ā¤ in (/tmp/tmpfile:14)ā¤ in (gen/jvm/stage2/NQPHLL.nqp:1099)ā¤ in eval (gen/jvm/stage2/NQPHLL.nqp:1085)ā¤ in evalfiles (gen/jvm/stage2/NQPHLL.nqp:1291)ā€¦Ā»
FROGGS :o( 20:08
nqp: gist.github.com/FROGGS/64c224637a10fff02e33 20:27
camelia nqp-parrot: OUTPUTĀ«1..275ā¤ok 1 - serialized P6bigint instance has correct valueā¤ok 2 - serialized P6bigint instance has correct valueā¤ok 3 - serialized P6bigint instance has correct valueā¤ok 4 - serialized P6bigint instance has correct valueā¤ok 5 - serialized P6bigint instā€¦Ā»
..nqp-jvm: OUTPUTĀ«1..275ā¤Missing serialize function for REPR P6bigintā¤ in (/tmp/tmpfile:51)ā¤ in (/tmp/tmpfile:41)ā¤ in (/tmp/tmpfile:14)ā¤ in (gen/jvm/stage2/NQPHLL.nqp:1099)ā¤ in eval (gen/jvm/stage2/NQPHLL.nqp:1085)ā¤ in evalfiles (gen/jvm/stage2/NQPHLL.nqp:1291)ā€¦Ā»
..nqp-moarvm: OUTPUTĀ«(signal SEGV)Ā»
FROGGS this passes on nqp-m using the maybe-varint branch 20:28
jnthn yay
FROGGS jnthn: it the nqp-j behaviour expected?
is*
jnthn FROGGS: It's odd, given that it must be able to serialize it for Rakudo 20:31
FROGGS: But I think there's a separate code-path for inlined serialization
FROGGS ahh
jnthn: a keyword I could grep for? 20:32
then I'd adjust the test to do the same
jnthn FROGGS: Well, if you look in the bigint test file, you can see it creating a P6opaque with a bigint inside of it 20:34
FROGGS ahh, kthxbai :o)
jnthn puts aside $dayjob to look at Perl 6 things a bit 20:36
FROGGS :o)
jnthn First task is looking at RT#121213 20:37
FROGGS RT #121213 20:38
where is that bot?
found it :o)
nqp: gist.github.com/FROGGS/5b8f6ffd8bab253a5999 20:47
camelia nqp-moarvm, nqp-jvm, nqp-parrot: OUTPUTĀ«1..275ā¤ok 1ā¤ok 2ā¤ok 3ā¤ok 4ā¤ok 5ā¤ok 6ā¤ok 7ā¤ok 8ā¤ok 9ā¤ok 10ā¤ok 11ā¤ok 12ā¤ok 13ā¤ok 14ā¤ok 15ā¤ok 16ā¤ok 17ā¤ok 18ā¤ok 19ā¤ok 20ā¤ok 21ā¤ok 22ā¤ok 23ā¤ok 24ā¤ok 25ā¤ok 26ā¤ok 27ā¤ok 28ā¤ok 29ā¤ok 30ā¤ok ā€¦Ā»
FROGGS so why does that work on moar too?
jnthn dunno... 20:51
Was it meant to trigger the same bug?
Does it somehow come out as big? 20:52
FROGGS it was meant to trigger the bug, yes 20:53
it must come out as big or the test would fail, no? 20:54
maybe the varint stuff is not used for inlined serialization?
there are no different code paths for that on moar, right?
jnthn No, same code path on moar 20:55
Maybe it's coming out big when it needn't?
FROGGS :/
how do I even check that?
jnthn With difficulty given you're not meant to care from the outside... Breakpoint in serialize? 20:56
Or printf :P
FROGGS damn, I am tired... I'll leave you doing moar fun stuff now :o)
I'll care about that tomorrow 20:57
jnthn kk
I think I've got a patch for that RT
timotimo what did i do wrong again? :) 21:06
dalek arVM: eff1178 | jnthn++ | src/core/frame. (2 files):
Provide mechanism for special action on unwind.

To go with the special return mechanism. Will enable various memory leak fixes as well as fixing an active handler sync bug.
21:08
arVM: ef82378 | jnthn++ | src/core/exceptions.c:
Properly clean up active handlers on unwind.

Fixes Rakudo's RT#121213.
jnthn timotimo: Probably nothing this time :)
timotimo phew 21:09
22:11 rblackwe joined 22:15 jnap1 joined 22:27 colomon joined 23:19 benabik joined 23:23 eternaleye joined
hoelzro FROGGS: I had some insight into the waitpid thing 23:37
my solution was to busy wait on uv_run 23:38
but I think since we're waiting for a signal from the child process, we can call pause
it's probably not portable, though
hoelzro gos back to vacation
jnthn sleep; 'night o/ 23:47