[perl #109586] .pick on a large range needs more entropy
PR was merged and test got added: https://github.com/MoarVM/MoarVM/pull/357 https://github.com/perl6/roast/commit/67c494ced2 Thanks to all involved!
[perl #129353] [NATIVECALL][LTA] The error message of CStruct recommends to use Perl 6 native types
Fixed with: https://github.com/MoarVM/MoarVM/commit/688796b434 https://github.com/rakudo/rakudo/commit/a92f092ac5 The error message now reads: $ perl6 -e 'class Foo is repr { has Buf $.a }' ===SORRY!=== Error while compiling -e CStruct representation only handles attributes of type: (u)int8, (u)int16, (u)int32, (u)int64, (u)long, (u)longlong, num16, num32, (s)size_t, bool, Str and types with representation: CArray, CPointer, CStruct, CPPStruct and CUnion at -e:1
[perl #127194] [NATIVECALL] tests fail on Raspberry Pi Debian/Wheezy
This issue is fixed if you configure MoarVM with --has-libffi as of today. (You need of course the libffi-dev package installed.)
[perl #123310] use of uninitialized value of type Any in string context in any !cursor_init
This bug is no more, closing.
Re: [perl #129240] [NativeCall] nativesizeof routine returns the different result from sizeof function in C when it takes a CArray object as an argument.
You get 8 there because an array is a pointerish thing... Btw, this: my $not-null = CArray[int32].new is not the same as this: int a[3]; So, we would need fixed sized native arrays here to tell the truth. Am 10.09.2016 um 20:53 schrieb Brandon Allbery via RT: > On Sat, Sep 10, 2016 at 10:11 AM, Itsuki Toyota < > perl6-bugs-follo...@perl.org> wrote: > >> $ perl6 -MNativeCall -e 'my $null = Pointer; my $not-null = >> CArray[int32].new; $not-null[0] = 1; $not-null[1] = 1; $not-null[2] = 1; >> say nativesizeof($not-null)' >> 8 >> > That size looks doubly wrong to me. Its not going to happen for a 3-element > array no matter how you slice it... so I suspect you're getting the size of > one element, which is itself twice the size of what C thinks. >
[perl #128156] dependency errors
These patches fix and test the remaining issue: https://github.com/rakudo/rakudo/commit/d0a00164e9 https://github.com/perl6/roast/commit/716b94f7ff
[perl #127750] Intermittent failure on t/04-nativecall/13-union.t
Hi, can I get verbose output please?
[perl #127408] LTA error message “cannot find method CALL-ME” ( *(42) )
Patch: https://github.com/rakudo/rakudo/commit/42fb81d3b7 Tagging testneeded
[perl #127482] Compilation check says Syntax OK but program gets error
As mentioned it is syntactically legal, therefore the syntax chek reports OK. It fails at runtime though, which is to be expected. A compiler time error always prints this as the first line: ===SORRY!===
[perl #127482] Compilation check says Syntax OK but program gets error
As mentioned it is syntactically legal, therefore the syntax chek reports OK. It fails at runtime though, which is to be expected. A compiler time error always prints this as the first line: ===SORRY!===
[perl #127671] 「dir」 dies if weird unicode sequences are encountered (dir;)
Patch: https://github.com/MoarVM/MoarVM/commit/79dce1101b I hesitate to put a test for this in... Closing as resolved anyway.
[perl #126797] [BUG] rakudo / mingw / gmake test - all nativecall tests fail because of bad $*VM.config
Closing as resolved.
[perl #125140] [FEATURE-REQUEST] NativeCall: Provide a mechanism to invoke function pointers
Patches and test: https://github.com/MoarVM/MoarVM/commit/ada3752a81 https://github.com/rakudo/rakudo/commit/a8f407cccd Resolving ticket as fixed.
[perl #126797] [BUG] rakudo / mingw / gmake test - all nativecall tests fail because of bad $*VM.config
Hi, can you please check if it is still broken? The patch in https://github.com/rakudo/rakudo/commit/505dc4fa should fix it.
[perl #127598] white space affects which multiple dispatch subroutine is getting called.
Hi, please consider using this slang which will most likely give you what you need: https://github.com/FROGGS/p6-Slang-Tuxic But the short answer here is that the function call syntax wont change anymore. Some examples that would break when we would change it: if( # would not introduce a function call to a function called "if" foo (1,2) # would stop passing a single list to a sub called foo. The first shown example is important. Perl 6 does not want to reserve special keywords today and in future that ban functions of the same name. So there is syntax (whitespace) that disambiguates. Image you have a function called mysub today in your enterprise application, and we make it a keyword in Perl 6.d. With your approach your code would break, with our approach a function call like mysub() would still work out.
[perl #127308] Configure.pl with moar fails to find C compiler on older Darwin
Does that mean that we *always always always* have a gcc binary?
[perl #127308] Configure.pl with moar fails to find C compiler on older Darwin
Can't we do something like this[^1] on darwin also? [^1] https://github.com/MoarVM/MoarVM/blob/master/build/setup.pm#L445 Like, checking for the existance of clang, and falling back to gcc?
[perl #127308] Configure.pl with moar fails to find C compiler on older Darwin
But the shown exit of "0" would be correct, no? I guess we want to show more information when we cannot compile the test scripts using the compiler we guessed
[perl #127173] [BUG] Cannot build on Alpine Linux
libuv does not like to build here, which is a dependency of MoarVM. Though, that does not mean that we cannot do something about that.
[perl #126959] unhelpful error - Cannot find method 'has_compile_time_value'
Patches: https://github.com/rakudo/rakudo/commit/2e4238fbe4 https://github.com/rakudo/rakudo/commit/0d5372fe43 Tests: https://github.com/perl6/roast/commit/94ee230558 Closing ticket as resolved.
[perl #126100] Wrong return value from "require"
Patch: https://github.com/rakudo/rakudo/commit/95558bb58e Tests: https://github.com/perl6/roast/commit/ff452eb56a Closing as resolved.
[perl #126675] [BUG][MOAR/NativeCall] Evaluating the size of a structure is wrongly done
I can confirm that the alignment is wrong. To prove, I created this repo: https://github.com/FROGGS/p6-Gumbo Running `perl6 t` gives: ~/dev/gumbo$ perl6 t/00-structure-sizes.t 1..19 ok 1 - sizeof(size_t) ok 2 - sizeof(GumboStringPiece) ok 3 - sizeof(GumboSourcePosition) ok 4 - sizeof(GumboVector) ok 5 - sizeof(GumboTag) ok 6 - sizeof(GumboNamespaceEnum) ok 7 - sizeof(MyGumboTest) not ok 8 - sizeof(GumboElement) # Failed test 'sizeof(GumboElement)' # at t/00-structure-sizes.t line 85 # expected: '96' # got: '104' Which hints at the last two attributes of the GumboElement structure, as the ticket already pointed out.
[perl #126675] [BUG][MOAR/NativeCall] Evaluating the size of a structure is wrongly done
The fix for this misalignment is: https://github.com/MoarVM/MoarVM/commit/7b382acd61 Test got added here: https://github.com/rakudo/rakudo/commit/deeec10a2e Closing ticket as resolved.
[perl #126212] [BUG] SEGV on 16-bit-sized arg insertion
The might be either this: diff --git a/src/core/args.c b/src/core/args.c index c4f2696..4772034 100644 --- a/src/core/args.c +++ b/src/core/args.c @@ -677,7 +677,7 @@ MVMObject * MVM_args_slurpy_named(MVMThreadContext *tc, MVMArgProcContext *ctx) static void flatten_args(MVMThreadContext *tc, MVMArgProcContext *ctx) { MVMArgInfo arg_info; -MVMuint16 flag_pos = 0, arg_pos = 0, new_arg_pos = 0, +MVMuint32 flag_pos = 0, arg_pos = 0, new_arg_pos = 0, new_arg_flags_size = ctx->arg_count > 0x7FFF ? ctx->arg_count : ctx->arg_count * 2, new_args_size = new_arg_flags_size, i, new_flag_pos = 0, new_num_pos = 0; MVMCallsiteEntry *new_arg_flags; Or this: diff --git a/src/core/args.c b/src/core/args.c index c4f2696..43a966a 100644 --- a/src/core/args.c +++ b/src/core/args.c @@ -702,7 +702,7 @@ static void flatten_args(MVMThreadContext *tc, MVMArgProcContext *ctx) { MVMint64count = REPR(list)->elems(tc, STABLE(list), list, OBJECT_BODY(list)); MVMStorageSpec lss = REPR(list)->pos_funcs.get_elem_storage_spec(tc, STABLE(list)); -if ((MVMint64)new_arg_pos + count > 0x) { +if ((MVMint64)new_arg_pos + count > 0xC000) { MVM_exception_throw_adhoc(tc, "Too many arguments in flattening array."); }
[perl #126189] [BUG] [LEAK] loop { 0, .1 ... 1000 }
I did run this: $ valgrind --leak-check=full --show-leak-kinds=all /home/froggs/dev/nqp/install/bin/moar --execname="$0" --libpath="/home/froggs/dev/nqp/install/share/nqp/lib" --libpath="/home/froggs/dev/nqp/install/share/perl6/lib" --libpath="/home/froggs/dev/nqp/install/share/perl6/runtime" --full-cleanup /home/froggs/dev/nqp/install/share/perl6/runtime/perl6.moarvm -e 'my $x = 0; loop { 0, .1 ... 1000; exit if $x++ > 10; }' And the two biggets memory consumoptions are: ==8073== 5,750,160 bytes in 239,590 blocks are still reachable in loss record 2,318 of 2,319 ==8073==at 0x4C2AB80: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==8073==by 0x50396A6: MVM_malloc (alloc.h:2) ==8073==by 0x50396A6: MVM_bigint_div (bigintops.c:550) ==8073==by 0x4F95053: MVM_interp_run (interp.c:1717) ==8073==by 0x503F5CD: MVM_vm_run_file (moar.c:249) ==8073==by 0x401036: main (main.c:191) ==8073== ==8073== 122,670,080 bytes in 239,590 blocks are still reachable in loss record 2,319 of 2,319 ==8073==at 0x4C2AB80: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==8073==by 0x50497F9: mp_init_size (bn_mp_init_size.c:27) ==8073==by 0x5048345: mp_div (bn_mp_div.c:126) ==8073==by 0x50396DE: MVM_bigint_div (bigintops.c:574) ==8073==by 0x4F95053: MVM_interp_run (interp.c:1717) ==8073==by 0x503F5CD: MVM_vm_run_file (moar.c:249) ==8073==by 0x401036: main (main.c:191) Note that there are still reachable. All non-reachable areas are just a bunch of kilobytes in size.
[perl #125573] [BUG] [Test] A failing exit phaser after passing all tests appears OK to prove
Patch: https://github.com/rakudo/rakudo/commit/6063886343 Test: https://github.com/perl6/roast/commit/2dfcd85181 Closing ticket.
[perl #120831] [BUG] LTA error message when declaring 'my Int a' in Rakudo
Patch by bartolin++: https://github.com/rakudo/rakudo/commit/4bdc88046ad0289f2708e3195e59df9edc83c258 Another test: https://github.com/perl6/roast/commit/1145029340 Closing ticket.
[perl #126383] [NYI] Generic type can't participate in a coercive type
Patch: https://github.com/rakudo/rakudo/commit/6902d51eb7 Tests: https://github.com/perl6/roast/commit/7f43444370 Closing ticket.
[perl #125927] नि -- a grapheme cluster boundary algo problem (CCC = 0 can be a valid combiner?)
Here are more examples (by novapatch++ via irc): m: say «நி กำ षि "\r\n"»».chars rakudo-moar cd7766: OUTPUT«(2 2 2 2)»
[perl #111726] [BUG] Smartmatching an empty all-conjunction with a regex produces an internal unboxing error in Rakudo
Patch: https://github.com/rakudo/rakudo/commit/5d83db3d01 Tests: https://github.com/perl6/roast/commit/51d1a4835f Closing ticket.
[perl #103106] [BUG] Can't regex-match on a junction of strings in Rakudo
Patch: https://github.com/rakudo/rakudo/commit/5d83db3d01 Tests: https://github.com/perl6/roast/commit/51d1a4835f Closing ticket.
[perl #68024] [TODO] Make :($op) work
The design docs indicate that square brackets need to be used, which works with rakudo: constant $foo="+"; say :[$foo](3, 4) rakudo-moar 4b1df7: OUTPUT«7» So, this is closable with test?
[perl #126172] [BUG] .push does something un(ex)-spec'd-ed
The semantics of push got revised in the meantime, and a new method called "append" got added: m: my @a = 1,2,3; my @b; @b.push: @a,; dd @b rakudo-moar fae01f: OUTPUT«Array @b = [[1, 2, 3],]» m: my @a = 1,2,3; my @b; @b.push: @a; dd @b rakudo-moar fae01f: OUTPUT«Array @b = [[1, 2, 3],]» m: my @a = 1,2,3; my @b; @b.append: @a,; dd @b rakudo-moar fae01f: OUTPUT«Array @b = [1, 2, 3]» m: my @a = 1,2,3; my @b; @b.append: @a; dd @b rakudo-moar fae01f: OUTPUT«Array @b = [1, 2, 3]» As you can see even the comma is not needed anymore. "push" will always push a single thing even if it is an array. And "append" kinda flattens an input array or list, and will potentially append several items. Tagging testneeded.
[perl #126172] [BUG] .push does something un(ex)-spec'd-ed
Added test: https://github.com/perl6/roast/commit/f50149e607 Closing ticket.
[perl #126385] initial stray space not accepted in :(...)
Patch: https://github.com/rakudo/rakudo/commit/4b1df7b018 Tests: https://github.com/perl6/roast/commit/0478776107 Closing ticket.
[perl #77564] * quantifier after block in regexp executes it infinite amount of times
Patches: https://github.com/perl6/nqp/commit/41ab646099 https://github.com/rakudo/rakudo/commit/de4b2b3a87 Tests: https://github.com/perl6/roast/commit/95ee3272ab Closing ticket.
[perl #123005] [BUG] $/ broken for replacement inside for loop
Patch: https://github.com/rakudo/rakudo/commit/32d7b08334 Tests: https://github.com/perl6/roast/commit/f665268fde Closing ticket.
[perl #125598] [BUG] $/ does not bind correctly in the right-hand side of s/// inside a for loop in Rakudo
Patch: https://github.com/rakudo/rakudo/commit/32d7b08334 Tests: https://github.com/perl6/roast/commit/f665268fde Closing ticket.
[perl #126349] [BUG] substitution of Array of Str fails to provide backreferences
Patch: https://github.com/rakudo/rakudo/commit/32d7b08334 Tests: https://github.com/perl6/roast/commit/f665268fde Closing ticket.
[perl #118705] [BUG] s/// doesn't update $/ inside for loop
Patch: https://github.com/rakudo/rakudo/commit/32d7b08334 Tests: https://github.com/perl6/roast/commit/f665268fde Closing ticket.
[perl #126350] [BUG] segmentation fault with precompile + add_method
It seems to segfault in the op getlex when trying to locate Moving sub foo to within the BEGIN block helps and moving it outside of A gives: Cannot invoke this object in method at lib/A.pm6:5 Neither the rakudo optimizer nor spesh seem to be to blame.
[perl #126284] --> Int:D allowed but not checked correctly
Seems to work now that we have DefiniteHOW: m: sub a() returns Int:U { 42 }; say a rakudo-moar 8f4e90: OUTPUT«(Int:U)Type check failed for return value; expected Int:U but got Int in sub a at /tmp/LRo5pcMZof:1 in block at /tmp/LRo5pcMZof:1» m: sub a() returns Int:D { Int }; say a rakudo-moar 8f4e90: OUTPUT«(Int:D)Type check failed for return value; expected Int:D but got Int in sub a at /tmp/SnKt55D7zj:1 in block at /tmp/SnKt55D7zj:1» Tagging it testneeded.
[perl #126284] --> Int:D allowed but not checked correctly
Marked existing tests as related to this ticket: https://github.com/perl6/roast/commit/5bd83c5b01 Closing ticket.
[perl #126291] [BUG] :D on attrs and vars fails with a defined default value
Patch: https://github.com/rakudo/rakudo/commit/80a3d07235 Tests: https://github.com/perl6/roast/commit/071720b28d Closing ticket.
[perl #123083] [BUG] `anon enum` should work the same way as `enum ::`, and `my %e = enum ::` should work too in Rakudo
Patch: https://github.com/rakudo/rakudo/commit/8f4e908869 Test: https://github.com/perl6/roast/commit/f47d1dab1b Closing ticket.
[perl #67700] Method calls after blocks passed to list-operator methods are parsed incorrectly
Design docs got aligned to rakudo so that method calls on blocks just do what one would expect. Patch: https://github.com/perl6/specs/commit/d1d502fb71 Tests: https://github.com/perl6/roast/commit/95a28225ed Closing ticket.
[perl #123083] [BUG] `anon enum` should work the same way as `enum ::`, and `my %e = enum ::` should work too in Rakudo
Two more tests: https://github.com/perl6/roast/commit/51332a9ae1
[perl #126296] [BUG] Foo:D type on attribute should imply 'is required' and not need intialiser
I don't think that we should mix two concepts here. The type constraint of an attribute just tells us what types/subsets are allowed to be contained in the attribute. That an attribute should be passed when instantiating an object (maybe passed but undef?) is another story. And this has not much to do with definedness of an attribute.
[perl #101448] [BUG] No error on assigning a type object to a :D-constrained container in Rakudo
Added tests: https://github.com/perl6/roast/commit/fca109de6c https://github.com/perl6/roast/commit/6e66b7a18d Closing ticket.
[perl #101448] [BUG] No error on assigning a type object to a :D-constrained container in Rakudo
This fixes reporting the file and line number: https://github.com/rakudo/rakudo/commit/164953b3de
[perl #125846] Missing file/line information when importing module
This fixes it: https://github.com/rakudo/rakudo/commit/164953b3de Tagging testneeded.
[perl #125846] Missing file/line information when importing module
Test: https://github.com/perl6/roast/commit/73fc8c3d37 Closing ticket.
[perl #101448] [BUG] No error on assigning a type object to a :D-constrained container in Rakudo
Patch: https://github.com/rakudo/rakudo/commit/8dd74406e6 Tagging testneeded.
[perl #101448] [BUG] No error on assigning a type object to a :D-constrained container in Rakudo
jnthn: I think we want to do it at MOP level in the future, if nothing else for speed. jnthn: I think we should force an initializer on :D'd things. .new is a bad default. Try this: `class C { has $.x = rand }; for ^5 { my C:D $foo; say $foo.x }` jnthn: also we totally drop the thing on the floor in some situations, like `my $x = Int:D; say $x` jnthn: That latter one is why I was more pondering a MOP-level solution: so they are first class. FROGGS: do we want to keep my patch in until then? jnthn: I'm content with keeping it in, but please log the above somewhere in RT jnthn: Oh, one more problem jnthn: m: my Int:omg $x camelia: rakudo-moar 8dd744: OUTPUT«===SORRY!===Unsupported type smiley 'omg' used in type name» jnthn: That just nqp::die's instead of $/.CURSOR.panic, so we get no source position :(
[perl #69204] [BUG] Cannot combine infix:<.=> and string methodrefs in Rakudo
I come to the conclusion that making $foo.="bar"() work is more useful than complaining about a potential P5ism. So, patch and tests are here: https://github.com/rakudo/rakudo/commit/98d9b87aaa https://github.com/perl6/roast/commit/5f82bde7e0 Closing ticket.
[perl #126128] s/$~Q/$~Quote
Patch: https://github.com/rakudo/rakudo/commit/f52f0db3fb
[perl #126143] [NYI] Array aliasing on matching
This is fixed so far. Patches: https://github.com/perl6/nqp/commit/ada83f20892d3d027a0ac5e537ab1b111db1968e https://github.com/perl6/nqp/commit/8402ce098192cdfe57bd438781d9f1322f63273c Fixed tests: https://github.com/perl6/roast/commit/eec7994c1f
Re: [perl #122839] Rakudo* 2014:08 panda doesn't see bundled modules
Hi, what does `which panda` output? I'd almost say that it cannot find panda in path, and the apt suggestions fail on your box...
Re: [perl #122839] Rakudo* 2014:08 panda doesn't see bundled modules
Ahh, it might be possible that panda's state will only be installed using the Windows MSI on... err, Windows... I'll check the star tarball on a linux later and report back.
[perl #122839] Rakudo* 2014:08 panda doesn't see bundled modules
Please retest with rakudo-star-2014.12.1-moar.msi. For me it gives this after a clean install of the msi: C:\panda-m --installed list Bailador [installed] DBIish [installed] Debugger::UI::CommandLine [installed] Digest::MD5[installed] File::Find [installed] Grammar::Debugger [installed] Grammar::Profiler::Simple [installed] HTTP::Easy [installed] HTTP::Status [installed] JSON::RPC [installed] JSON::Tiny [installed] LWP::Simple[installed] MIME::Base64 [installed] Math::Model[installed] Math::RungeKutta [installed] NativeCall [installed] PSGI [installed] Pod::To::HTML [installed] SVG[installed] SVG::Plot [installed] Shell::Command [installed] Template::Mojo [installed] Term::ANSIColor[installed] Test::Mock [installed] URI[installed] XML::Writer[installed] p6doc [installed] panda [installed] ufo[installed]
[perl #122839] Rakudo* 2014:08 panda doesn't see bundled modules
what is your panda --installed list?