jnthn Woo, down to just 2 warnings building Moar on clang. 00:20
And then there were none. \o/ 00:24
dalek arVM: 797025f | jnthn++ | src/gc/roots.c:
Supersitious parens to quiet clang.
00:25
arVM: 527af71 | jnthn++ | src/math/bigintops.c:
Use labs for a 64-bit int.
arVM: 686058b | jnthn++ | / (27 files):
Big cleanup of signed/unsigned mess.

Turns out that using anything but char * for things that are C level and string-ish goes against enough C culture to be a real pain. So standardize on that. Clears up almost all the remaining warnings in clang, and the overall number of casts has probably decreased some along the way.
00:26
arVM: 0194409 | jnthn++ | src/platform/threads.h:
Quiet pthread_yield() warnings.

1ac4eec | jnthn++ | src/strings/unicode_ops.c: Really fix final warnings in unicode.c.
jnthn Clean of warnings with clang, gcc, and MSVC now. :) 00:33
Well, except the annoying stuff about backslashes in the generated JIT code on Windows.
Sleep & 00:36
01:08 kjs_ joined
japhb Still, very nice indeed. jnthn++ 01:16
08:19 dsm joined 08:20 kjs_ joined 08:27 dsm joined
FROGGS o/ 08:58
timotimo o/ 09:13
09:16 kjs_ joined
JimmyZ \o/ 09:23
09:23 kjs_ joined
timotimo JimmyZ: can we use alias analysis to handle tracking of boxed data? 09:26
oh 09:27
actually, now i notice this wasn't boxing, this was containering!
hm ... does decont on an Int object give the P6Int object?
gist.github.com/timo/a39c98d7af822b763be6 ā† i've seen this pretty well optimized piece of code inlined in a bigger routine and i was thinking the decont could probably be eliminated in some cases when the value in the container used to lie around in an "unboxed" or at least "uncontainered" state earlier 09:28
gist.github.com/timo/881201c9742ff048e4e6 - maybe you can make some more sense out of this than i can :) 09:30
because i've got to be AFK in a few minutes
09:37 rurban joined 10:46 ilbot3 joined
11:41 Ven joined
dalek arVM: f74cd19 | jnthn++ | src/strings/ops.c:
Fix leak in join; missing free on early return.
13:13
arVM: 203df1e | jnthn++ | src/spesh/args.c:
Fix missing free in args spesh.
arVM: 5a12129 | jnthn++ | src/core/fixedsizealloc.h:
Tweak fixed size alloc configuration.

Avoids some wastage, saving around 264KB off max memory of a Rakudo
  "Hello world".
arVM: ab041da | jnthn++ | src/6model/serialization.c:
Fix typo; Ven++.
13:20
timotimo the comment you've fixed a typo in is actually from back when i created the varint9 implementation and didn't know if i was doing it wrong ... 13:22
still don't know if it's totally correct :P
jnthn I didn't look at it, tbh, just fixed the typo :P 13:23
The two leaks above found by valgrind++
timotimo :P
very good
got a clue how much they mattered?
jnthn Well, running the NQP bigint test file, we're down from 81 to 51 items in --leak-check=full, with --full-cleanup passed 13:24
--full-cleanup is not very full yet :)
I picked out those two as they are things that could repeatedly happen at runtime and lead to real leaks.
Whereas much of the rest looks like "incomplete cleanup at exit" 13:25
timotimo mhm
jnthn Anyway, suspect I'll pick off the odd one of those too :) 13:26
timotimo sure
at least moarvm usually shuts down with a clean exit code rather than a signal or something
jnthn Yeah
We normally don't waste time cleaning up at exit at all 13:27
but --full-cleanup exists to try and do so
In the longer term it's good for embedders if we can do a clean shutdown.
In the meantime, the cleaner we are with it, the easier it is to use valgrind's leak checker to find actual leaks.
timotimo sure
jnthn (As in, ones we should really take care of.)
Anyways, back to working on parametric stuff... :) 13:30
timotimo sounds good 13:35
how are you feeling btw?
jnthn Mostly better; I slept well, and the cold is about gone. 13:37
timotimo \o/ 13:38
FROGGS and I finally make some progress on XML::LibXML, which also feels very good :o) 13:47
jnthn :) 13:48
timotimo \o/ 13:50
jnthn is happy to have working speakers again, to provide hacking music o/ 14:13
FROGGS I just enjoy the noise of kids >.< 14:16
jnthn ENOKIDS :) 14:18
FROGGS *g* 14:20
hmmmm, I wonder how I could make foo(void *bar) work... 14:21
ohh! CArrays to the rescue! 14:33
14:41 rurban joined 14:56 brrt joined
timotimo of course 15:29
jnthn
.oO( Keep calm and CArray on native calling... )
15:32
Turns out you can't do anything much useful with 6pe until implementing the serialization bits of it ;) 15:37
timotimo feared that 15:38
16:11 JimmyZ_ joined 16:28 zakharyas joined 18:32 FROGGS_ joined 19:50 zakharyas joined
jnthn Stage mast : Code ref does not exist in serialization context 20:09
Well darn.
FROGGS_ eww 20:10
jnthn wtbh
After improving the error
Stage mast : Code ref 'Bool' does not exist in serialization context
20:25 kjs_ joined
timotimo :o 20:27
ordered by name, perchance?
FROGGS_ or broken lazy deserialization? 20:30
jnthn No, the bug only comes up when the 6pe-based mixin cache I've got implemented locally actually interns something. 20:31
TimToady those darn interns never know what they're doing... 20:38
FROGGS_ I hope they don't get pe'd too much! 20:41
TimToady they just stand around looking 6y 20:43
21:01 rurban joined 21:33 tgt joined
jnthn 'tis odd. A code object ends up with an SC set on it, but then is missing in that SC's code roots list. 22:03
Will look further tomorrow. 22:06
timotimo good night!
TimToady o/ 22:07
timotimo is everything needed to investigate psuhed to your branch?
or do you have some nice local patches for huntin'? 22:08
hmm 22:22