# New Ticket Created by  Hojung Yoon 
# Please include the string:  [perl #67010]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=67010 >


rev: 6c43f9

cmp works.
sort works.
coersion works.
wrong-dispatch works.
But, the last example makes (critical?) error.

<amoc> rakudo: my @list = 5,2,"9",True; say @list.sort: { $^a cmp $^b };
<p6eval> rakudo 6c43f9: OUTPUT«1259␤»

<amoc> rakudo: Code cmp 4;
<p6eval> rakudo 6c43f9: OUTPUT«Multiple Dispatch: No suitable candidate
found for 'cmp', with signature 'PP->I'␤in Main (/tmp/pXqBGHdfLN:2)␤»

<amoc> rakudo: my @list = 1,2,Code; say @list.sort: { $^a cmp $^b };
<p6eval> rakudo 6c43f9: OUTPUT«sh: ./perl6: No such file or directory␤»

I'm not sure it's rakudo bug. (it seems it's parrot bug)
But i report it here first anyway.

rakudo> my @list = 1,2,Code; say @list.sort: { $^a cmp $^b }
*** glibc detected *** rakudo: corrupted double-linked list: 0x093ffb30 ***
======= Backtrace: =========
/lib/tls/i686/cmov/libc.so.6[0xb6f2c604]
/lib/tls/i686/cmov/libc.so.6[0xb6f2e383]
/lib/tls/i686/cmov/libc.so.6(cfree+0x96)[0xb6f2e5b6]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0(mem_sys_free+0x2a)[0xb7d4f66a]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7d509a7]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7d62fea]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0(Parrot_exit+0x8b)[0xb7d469eb]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7d460eb]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0(Parrot_ex_throw_from_c+0xb5)[0xb7d461a5]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7d464a1]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0(Parrot_mmd_multi_dispatch_from_c_args+0x1e1)[0xb7d71601]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7eb97c7]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7f57577]
[0xb6c7cef8]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7ce43cd]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7da8e50]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7da7a4e]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7d64691]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7d64ab3]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0(Parrot_runops_fromc_args_reti+0xc6)[0xb7d656f6]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7db674e]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7db685e]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7f37137]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7ed7f20]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7cf2fbd]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7da8e50]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7da7a4e]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7d64691]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0[0xb7d64ab3]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0(Parrot_runops_fromc_args+0xc6)[0xb7d65976]
/rakudo/parrot/blib/lib/libparrot.so.1.3.0(Parrot_runcode+0x277)[0xb7d42767]
rakudo[0x8048ab2]
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe5)[0xb6ed3775]
rakudo[0x80488a1]
======= Memory map: ========
08048000-0841e000 r-xp 00000000 08:02 1483435    /rakudo/perl6
0841e000-0841f000 r--p 003d5000 08:02 1483435    /rakudo/perl6
0841f000-08420000 rw-p 003d6000 08:02 1483435    /rakudo/perl6
08de5000-09466000 rw-p 08de5000 00:00 0          [heap]
b5739000-b573f000 r--s 00000000 08:02 1502054
/rakudo/parrot/runtime/parrot/library/P6object.pbc
b5840000-b586e000 r--s 00000000 08:02 1502126
/rakudo/parrot/runtime/parrot/library/PGE.pbc
b586e000-b5870000 r--s 00000000 08:02 1502123
/rakudo/parrot/runtime/parrot/library/PCT/Grammar.pbc
b5870000-b5871000 r--s 00000000 08:02 1502121
/rakudo/parrot/runtime/parrot/library/PCT.pbc
b6b43000-b6b4b000 r--s 00000000 08:02 1502124
/rakudo/parrot/runtime/parrot/library/PCT/HLLCompiler.pbc
b6b4b000-b6b6e000 r--s 00000000 08:02 1502122
/rakudo/parrot/runtime/parrot/library/PCT/PAST.pbc
b6b6e000-b6b70000 r--s 00000000 08:02 1502064
/rakudo/parrot/runtime/parrot/library/PGE/Util.pbc
b6c00000-b6c21000 rw-p b6c00000 00:00 0
b6c21000-b6d00000 ---p b6c21000 00:00 0
b6dbd000-b6dbf000 rw-p b6dbd000 00:00 0
b6dbf000-b6dcc000 r-xp 00000000 08:02 507969     /lib/libgcc_s.so.1
b6dcc000-b6dcd000 r--p 0000c000 08:02 507969     /lib/libgcc_s.so.1
b6dcd000-b6dce000 rw-p 0000d000 08:02 507969     /lib/libgcc_s.so.1
b6dce000-b6eb2000 r-xp 00000000 08:02 772517
/usr/lib/libstdc++.so.6.0.10
b6eb2000-b6eb6000 r--p 000e3000 08:02 772517
/usr/lib/libstdc++.so.6.0.10
b6eb6000-b6eb7000 rw-p 000e7000 08:02 772517
/usr/lib/libstdc++.so.6.0.10
b6eb7000-b6ebd000 rw-p b6eb7000 00:00 0
b6ebd000-b7019000 r-xp 00000000 08:02 525532     /lib/tls/i686/cmov/
libc-2.9.so
b7019000-b701a000 ---p 0015c000 08:02 525532     /lib/tls/i686/cmov/
libc-2.9.so
b701a000-b701c000 r--p 0015c000 08:02 525532     /lib/tls/i686/cmov/
libc-2.9.so
b701c000-b701d000 rw-p 0015e000 08:02 525532     /lib/tls/i686/cmov/
libc-2.9.so
b701d000-b7021000 rw-p b701d000 00:00 0
b7021000-b7af7000 r--p 00000000 08:02 772190     /usr/lib/libicudata.so.38.1
b7af7000-b7af8000 r--p 00ad5000 08:02 772190     /usr/lib/libicudata.so.38.1
b7af8000-b7c15000 r-xp 00000000 08:02 772202     /usr/lib/libicuuc.so.38.1
b7c15000-b7c16000 ---p 0011d000 08:02 772202     /usr/lib/libicuuc.so.38.1
b7c16000-b7c1e000 r--p 0011d000 08:02 772202     /usr/lib/libicuuc.so.38.1
b7c1e000-b7c1f000 rw-p 00125000 08:02 772202     /usr/lib/libicuuc.so.38.1
b7c1f000-b7c21000 rw-p b7c1f000 00:00 0
b7c21000-b7c2a000 r-xp 00000000 08:02 525536     /lib/tls/i686/cmov/
libcrypt-2.9.so
b7c2a000-b7c2b000 r--p 00008000 08:02 525536     /lib/tls/i686/cmov/
libcrypt-2.9.so
b7c2b000-b7c2c000 rw-p 00009000 08:02 525536     /lib/tls/i686/cmov/
libcrypt-2.9.so
b7c2c000-b7c53000 rw-p b7c2c000 00:00 0
b7c53000-b7c68000 r-xp 00000000 08:02 525558     /lib/tls/i686/cmov/
libpthread-2.9.so
b7c68000-b7c69000 r--p 00014000 08:02 525558     /lib/tls/i686/cmov/
libpthread-2.9.so
b7c69000-b7c6a000 rw-p 00015000 08:02 525558     /lib/tls/i686/cmov/
libpthread-2.9.so
b7c6a000-b7c6c000 rw-p b7c6a000 00:00 0
b7c6c000-b7c90000 r-xp 00000000 08:02 525540     /lib/tls/i686/cmov/
libm-2.9.so
b7c90000-b7c91000 r--p 00023000 08:02 525540     /lib/tls/i686/cmov/
libm-2.9.so
b7c91000-b7c92000 rw-p 00024000 08:02 525540     /lib/tls/i686/cmov/
libm-2.9.so
b7c92000-b7c93000 rw-p b7c92000 00:00 0
b7c93000-b7c95000 r-xp 00000000 08:02 525538     /lib/tls/i686/cmov/
libdl-2.9.so
b7c95000-b7c96000 r--p 00001000 08:02 525538     /lib/tls/i686/cmov/
libdl-2.9.so
b7c96000-b7c97000 rw-p 00002000 08:02 525538     /lib/tls/i686/cmov/
libdl-2.9.so
b7c98000-b7c9c000 r--s 00000000 08:02 1502045
/rakudo/parrot/runtime/parrot/library/Getopt/Obj.pbc
b7c9c000-b7c9e000 r--s 00000000 08:02 1502043
/rakudo/parrot/runtime/parrot/library/dumper.pbc
b7c9e000-b7c9f000 r--s 00000000 08:02 1502059
/rakudo/parrot/runtime/parrot/library/Parrot/Exception.pbc
b7ca7000-b7fe6000 r-xp 00000000 08:02 4278967
/rakudo/parrot/blib/lib/libparrot.so.1.3.0
b7fe6000-b7fec000 r--p 0033f000 08:02 4278967
/rakudo/parrot/blib/lib/libparrot.so.1.3.0
b7fec000-b8002000 rw-p 00345000 08:02 4278967
/rakudo/parrot/blib/lib/libparrot.so.1.3.0
b8002000-b8004000 rw-p b8002000 00:00 0
b8004000-b8005000 r-xp b8004000 00:00 0          [vdso]
b8005000-b8021000 r-xp 00000000 08:02 507927     /lib/ld-2.9.so
b8021000-b8022000 r--p 0001b000 08:02 507927     /lib/ld-2.9.so
b8022000-b8023000 rw-p 0001c000 08:02 507927     /lib/ld-2.9.so
bfb0e000-bfb23000 rw-p bffeb000 00:00 0          [stack]
Multiple Dispatch: No suitable candidate found for 'cmp', with signature
'PP->I'
in Main (<unknown>:1)
Multiple Dispatch: No suitable candidate found for 'cmp', with signature
'PP->I'
current instr.: 'infix:cmp' pc 16350 (src/builtins/cmp.pir:146)
called from Sub '_block27' pc 181 (EVAL_21:88) (src/gen_setting.pm:3225)
called from Sub 'perl6;Any;!COMPARE_DO' pc 13085
(src/builtins/any-list.pir:313)
called from Sub 'perl6;Perl6;Compiler;main' pc 274171
(src/gen_actions.pir:24076) (src/gen_setting.pm:3225)

Reply via email to