I am having trouble running a .pbc that includes a call to _dumper unless I run it from the top level parrot directory.

bash-2.05a$ cat ./foo.imc
.sub main
  _dumper($P1)
  end
.end

.include "library/dumper.imc"
bash-2.05a$ ./parrot -o foo.pbc foo.imc
bash-2.05a$ ./parrot foo.pbc
"VAR1" => null
bash-2.05a$ cd languages/
bash-2.05a$ ../parrot ../foo.pbc
error:imcc:imcc_compile_file: couldn't open 'library/Data/Dumper.imc'

Looks like the problem is in library/dumper.imc's _global_dumper, which does a

load_bytecode "library/Data/Dumper.imc"

on line 134. Any particular reason a runtime load ("load_bytecode") is done rather than a compile time (".include") ?

(If not, then can we switch it back to compile time to avoid the working directory issue until load_bytecode's TODO is implemented (search the library))

--
Will "Coke" Coleda will at coleda dot com




Reply via email to