github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm Set by AlexDaniel on 12 June 2018. |
|||
01:21
lizmat left
01:23
dalek left,
dalek joined,
dalek left,
dalek joined
01:24
p6bannerbot sets mode: +v dalek
|
|||
MasterDuke | .tell brrt some previous comments/etc about a template for sp_findmeth github.com/MoarVM/MoarVM/pull/787/ | 01:57 | |
yoleaux | MasterDuke: I'll pass your message to brrt. | ||
02:24
Kaiepi left,
Kaiepi joined
02:25
p6bannerbot sets mode: +v Kaiepi
02:30
Kaiepi left
03:07
Zoffix joined,
p6bannerbot sets mode: +v Zoffix
|
|||
Zoffix | 😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍 | 03:07 | |
Announcing: Raku Perl 6 'Diwali' 6.d Specification Release: blogs.perl.org/users/zoffix_znet/20...lease.html | |||
😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍😍 | |||
03:12
Kaiepi joined
03:13
p6bannerbot sets mode: +v Kaiepi
03:56
MasterDuke left
04:57
Zoffix left
05:51
robertle left
06:35
domidumont joined
06:36
p6bannerbot sets mode: +v domidumont
06:38
domidumont left
06:56
domidumont joined,
p6bannerbot sets mode: +v domidumont
|
|||
Geth | MoarVM: Kaiepi++ created pull request #993: [WIP] Implement getsockopt/setsockopt support |
07:41 | |
07:43
robertle joined
07:44
p6bannerbot sets mode: +v robertle
08:09
domidumont left
08:12
domidumont joined
08:13
p6bannerbot sets mode: +v domidumont
08:26
domidumont left
08:29
domidumont joined
08:30
p6bannerbot sets mode: +v domidumont
08:52
zakharyas joined
08:53
p6bannerbot sets mode: +v zakharyas
09:27
lizmat joined,
p6bannerbot sets mode: +v lizmat
13:48
ggoebel left
14:34
brrt joined,
p6bannerbot sets mode: +v brrt
|
|||
brrt | \o | 16:04 | |
yoleaux | 01:57Z <MasterDuke> brrt: some previous comments/etc about a template for sp_findmeth github.com/MoarVM/MoarVM/pull/787/ | ||
brrt | see, I knew there was something | 16:05 | |
oh, that's no longer true | |||
nine | So my ignorance was a good thing :) | 16:25 | |
16:34
domidumont left
16:51
zakharyas left
17:17
domidumont joined
17:18
p6bannerbot sets mode: +v domidumont
17:22
lizmat left
|
|||
dogbert17 | oh, valgrind is angry | 17:35 | |
nine: are you around? | 17:40 | ||
here's the gist of the matter: gist.github.com/dogbert17/a5a294ab...60b17ae10e | 17:42 | ||
17:50
brrt left
18:14
lizmat joined,
p6bannerbot sets mode: +v lizmat
18:58
andrzejku joined
|
|||
nine | dogbert17: now | 19:47 | |
yoleaux | 19:13Z <cygx> nine: does this sound viable to you: gist.github.com/cygx/de15015296c90...3bd1df526c | ||
19:48
reportable6 left
19:49
reportable6 joined,
p6bannerbot sets mode: +v reportable6
19:51
patrickb joined,
p6bannerbot sets mode: +v patrickb
20:14
domidumont left
|
|||
dogbert17 | nine: and I didn't see it until now :) | 20:17 | |
there's reason to believe that one nasty bug is still left in the material you merged the other day | 20:18 | ||
I think the gist above shows it quite well but there are also a couple of reports by MasterDuke (among the Moarvm issues) | 20:20 | ||
nine | dogbert17: I'm stumped. That would mean that there's uninitialized data in a place where a label should be. That could only happen if there's a hole in the bytecode. | ||
dogbert17 | perhaps the was another commit with, i.e. not your work, which caused this | 20:21 | |
*there | 20:22 | ||
also, the 32 bit build is broken, it just hangs | |||
nine | I'd still guess that both are caused by my merge. It was a very intrusive change after all | 20:24 | |
dogbert17 | I have actually seen an error with the message mentioning a label problem | 20:25 | |
nine: in case I have messed up, can you repro the problem? | 20:27 | ||
nine | yep | 20:28 | |
dogbert17 | now I got: ===SORRY!=== | 20:29 | |
Duplicate label at 154624 | |||
20:49
brrt joined
20:50
p6bannerbot sets mode: +v brrt
|
|||
dogbert17 | running MVM_SPESH_DISABLE=1 ./perl6-valgrind-m --target=ast -e '' doesn't lead to any complaints. Running with --target=mast shows one complaint | 20:52 | |
Kaiepi | will writing code like this run across all compilers? | 20:55 | |
void *foo; int bar = 1; foo = &(int){ bar } | |||
brrt | Kaiepi: not sure what the meaning of the brackets is? | 21:12 | |
but in general a void pointer can point to any other pointer | |||
and any other pointer can be 'taken' out of a void pointer | 21:13 | ||
so: | |||
int bar = 1; void * foo = &bar; /* this is meaningful and legal C */ | |||
21:14
avar left
|
|||
Kaiepi | ah | 21:16 | |
thanks | |||
brrt | .tell mst that 'raku' perl 6 on MoarVM does have the ability to fork() ;-) | ||
yoleaux | brrt: I'll pass your message to mst. | ||
Kaiepi | wait that's not the issue i was having | 21:17 | |
brrt | wait, waitpid, etc. and the whole shebang, that's something different | ||
Kaiepi | the code i'm dealing with looks more like this: | ||
brrt | now the monkey is coming out of the sleeve | ||
:-) | |||
Kaiepi | MVMint64 option = SO_BROADCAST; void *value = &(int){ option }; | ||
brrt | yeah, I really don't see what that syntax means | 21:18 | |
what's the meaning of &(int) { option }; ? | |||
Kaiepi | it casts option to an int, then makes a reference to it | 21:19 | |
brrt | but why the brackets? | ||
Kaiepi | i'm not sure | ||
brrt | hmmm | ||
Kaiepi | i'll test without them to see if it works | ||
brrt | so, where did you dig up this code? | 21:20 | |
well, it's probably possible, I just don't like it very much, tbh | |||
what is wrong with just taking the reference to option? | |||
or doint 'int option = (int) SO_BROADCAST; void * value = *option;' | |||
Kaiepi | option's an MVMint64 argument to the function | 21:21 | |
hold on i'll link you the code | |||
21:23
avar joined,
avar left,
avar joined,
p6bannerbot sets mode: +v avar
|
|||
Kaiepi | hastebin.com/kizikoxogi.cs | 21:23 | |
21:24
p6bannerbot sets mode: +v avar
|
|||
brrt | well, I'm not sure, tbh, but I find that code suspect | 21:25 | |
I'm not sure a cast-to-int-then-address will work correctly on a bigendian system | 21:26 | ||
I can be wrong about that, but why write code like that when you can do the sane thing, and either pass a correctly sized int to begin with, or cast to a variable and take the address of that? | 21:27 | ||
(and, where did you dig up this code?) | 21:28 | ||
Kaiepi | it's part of the pullreq i'm making on implementing getsockopt/setsockopt support | ||
it still needs a lot of work | |||
brrt | yes, I saw that | 21:29 | |
the reason I'm asking is because, if this code was entirely your design, you'd know why you put the brackets there. If this code comes from some other place, like, say, stackoverflow, then I'm inclinded to ask further about licenses etc | 21:30 | ||
I'm sorry for being difficult about this but someone has to | |||
Kaiepi | fair | ||
21:31
patrickb left,
andrzejku left
|
|||
Kaiepi | idr where i saw it, it could've been elsewhere in moar | 21:31 | |
i'll try grepping for it | |||
brrt | thanks | 21:32 | |
21:47
brrt left,
cygx joined
21:48
p6bannerbot sets mode: +v cygx
|
|||
cygx | brrt Kaiepi: &(int){ option } applies the address operator to a compund literal, a C99 feature | 21:48 | |
yoleaux | 19:49Z <nine> cygx: I've been thinking about that for years actually :) The trick is to find the end of the v5 block. If you can do that, the rest seems easy. metacpan.org/pod/PPR seems to be the best bet for that | ||
19:50Z <pmurias> cygx: yes it's doable | |||
20:05Z <pmurias> cygx: I remember I managed to get Perl 5 to give me the end of the block with the pluggable keyword mechanisms in the past | |||
20:06Z <pmurias> cygx: but it was a super long time ago and I don't rememember | |||
cygx | *compound literal | ||
Kaiepi | damn, guess i can't use it | ||
but yeah i should refactor my code so i don't have to cast so many variables like that | 21:49 | ||
cygx | it's not really any different than taking the address to a local variable | 21:50 | |
21:55
robertle_ joined
21:56
p6bannerbot sets mode: +v robertle_
22:06
robertle_ left
22:32
cygx left
23:26
patrickas joined,
p6bannerbot sets mode: +v patrickas,
patrickas left
23:49
lizmat left
|