develooper Front page | perl.perl6.internals | Postings from April 2008

weird perl6/plumhead problem

Thread Next
From:
Jeff Horwitz
Date:
April 29, 2008 10:37
Subject:
weird perl6/plumhead problem
mod_parrot can load multiple HLL compilers in the same interpreter, and on
my server i'm using both perl6 and plumhead.  this works fine if i load
perl6 before plumhead.  however, if i load perl6 *after* plumhead, i get a
nasty error:

  push_pmc() not implemented in class 'Sub'

i get the same error with this plain PIR:

  .sub main :main
      print "loading plumhead\n"
      load_bytecode "languages/plumhead/plumhead.pbc"
      print "loading perl6\n"
      load_bytecode "languages/perl6/perl6.pbc"
      print "done\n"
  .end

  jeff@groovy:~/build/parrot$ ./parrot foo.pir
  loading plumhead
  loading perl6
  push_pmc() not implemented in class 'Sub'
  current instr.: 'main' pc 6 (foo.pir:5)

any ideas?  backtrace is below.

Breakpoint 2, cant_do_method (interp=0x804f048, pmc=0x829d204,
     methname=0x403cda8d "push_pmc") at default.pmc:63
63          real_exception(interp, NULL, ILL_INHERIT,
(gdb) bt
#0  cant_do_method (interp=0x804f048, pmc=0x829d204,
     methname=0x403cda8d "push_pmc") at default.pmc:63
#1  0x402a732e in Parrot_default_push_pmc (interp=0x804f048,
     pmc=0x829d204, value=0x82fcbac) at default.c:1632
#2  0x4016130a in store_sub_in_multi (interp=0x804f048,
     sub=0x82fcbac, ns=0x8092ec4) at src/global.c:739
#3  0x40161410 in Parrot_store_sub_in_namespace (interp=0x804f048,
     sub=0x82fcbac) at src/global.c:777
#4  0x401934de in PackFile_Constant_unpack_pmc (interp=0x804f048,
     constt=0x83271d0, self=0x81167e0, cursor=0x40aa94f4)
     at src/packfile.c:3584
#5  0x401933d8 in PackFile_Constant_unpack (interp=0x804f048,
     constt=0x83271d0, self=0x81167e0, cursor=0x40aa9428)
     at src/packfile.c:3526
#6  0x401930dc in PackFile_ConstTable_unpack (interp=0x804f048,
     seg=0x83271d0, cursor=0x40aa9424) at src/packfile.c:3322
#7  0x401907ea in PackFile_Segment_unpack (interp=0x804f048,
     self=0x83271d0, cursor=0x40a9ff50) at src/packfile.c:1601
#8  0x40190cfd in directory_unpack (interp=0x804f048, segp=0x8327028,
     cursor=0x40a9ff40) at src/packfile.c:1795
#9  0x401907ea in PackFile_Segment_unpack (interp=0x804f048,
     self=0x8327028, cursor=0x40a24040) at src/packfile.c:1601
#10 0x4018f8b1 in PackFile_unpack (interp=0x804f048, self=0x8327028,
     packed=0x40a24000, packed_size=1254976) at src/packfile.c:867
#11 0x40153b10 in Parrot_readbc (interp=0x804f048,
     fullname=0x8326fb8
"/home/jeff/build/parrot/./languages/perl6/perl6.pbc") at src/embed.c:503
#12 0x401937d4 in PackFile_append_pbc (interp=0x804f048,
     filename=0x8326fb8
"/home/jeff/build/parrot/./languages/perl6/perl6.pbc") at
src/packfile.c:3701
#13 0x401939b2 in Parrot_load_bytecode (interp=0x804f048,
     file_str=0x81fba50) at src/packfile.c:3758
#14 0x400f5c4c in Parrot_load_bytecode_sc (cur_opcode=0x8248918,
     interp=0x804f048) at core.ops:151
#15 0x40199984 in runops_slow_core (interp=0x804f048, pc=0x8248918)
     at src/runops_cores.c:219
#16 0x4016ac26 in runops_int (interp=0x804f048, offset=0)
     at src/interpreter.c:916
#17 0x4016b525 in runops (interp=0x804f048, offs=0)
     at src/inter_run.c:104
#18 0x4016b7aa in runops_args (interp=0x804f048, sub=0x822ac6c,
     obj=0x8096098, meth_unused=0x0, sig=0x403c3727 "vP",
     ap=0xbffffbbc "P\"\b\220") at src/inter_run.c:230
#19 0x4016b8ec in Parrot_runops_fromc_args (interp=0x804f048,
     sub=0x822ac6c, sig=0x403c3727 "vP") at src/inter_run.c:299
#20 0x401545a7 in Parrot_runcode (interp=0x804f048, argc=1,
     argv=0xbffffd18) at src/embed.c:941
#21 0x4039f044 in imcc_run_pbc (interp=0x804f048, obj_file=0,
     output_file=0x0, argc=1, argv=0xbffffd18)
     at compilers/imcc/main.c:781
#22 0x4039faf2 in imcc_run (interp=0x804f048,
     sourcefile=0xbffffe33 "foo.pir", argc=1, argv=0xbffffd18)
     at compilers/imcc/main.c:1069
#23 0x080488d8 in main (argc=1, argv=0xbffffd18) at src/main.c:61

Thread Next


Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About