Skip Menu |
Report information
Id: 127145
Status: open
Priority: 0/
Queue: perl6

Owner: Nobody
Requestors: jns+bc [at]

Severity: (no value)
Tag: Bug
Platform: (no value)
Patch Status: (no value)
VM: (no value)

Subject: [BUG] explicitly-manage is doing something un thread-safe apparently
Download (untitled) / with headers
text/plain 628b
This came up on IRC regarding what is "thread-safe" and what isn't in NativeCall: [jonathan@cannibal ~]$ perl6 -e ' use NativeCall; await start { my $a = "dubba"; explicitly-manage($a); } xx 15' Incompatible MROs in P6opaque rebless in block <unit> at -e line 1 I would speculate that the change that explicitly-manage makes to the string is somehow shared among the threads. It could present a major problem to people trying to use a native sub with a "const char *" argument in a concurrent application. This is with a straight up: This is Rakudo version 2015.12 built on MoarVM version 2015.12 implementing Perl 6.c
Download (untitled) / with headers
text/plain 301b
This seems to have been fixed as far as I can tell. Unfortunately the bisectbot was unable to show which commit might have solved the issue. Tried it several times on my 32 bit Linux VM with 'Rakudo version 2017.09-348-g830084430 built on MoarVM version 2017.09.1-575-gd4e230a69' without any problems.

This service is sponsored and maintained by Best Practical Solutions and runs on infrastructure.

For issues related to this RT instance (aka "perlbug"), please contact perlbug-admin at