In the last few days, PL/Parrot [0] stopped working and I get this
error in my test suite:
psql -AX -f t/sql/test.sql
1..32
ok 1 - we can .include PIR libraries included with Parrot
ok 2 - we can load_bytecode PBC libraries included with Parrot
ok 3 - open opcode is mocked
ok 4 - FileHandle.open is mocked
psql:t/sql/test.sql:204: ERROR: Error compiling PIR function: arg
count mismatch: op #1119 'open' needs 17820 given 3
make: *** [test] Error 3
Does anybody know what is going on? Any help would be appreciated.
Just verified this with an installed version of r47098.
The PIR fragment that generates this is:
push_eh got_error
$P0 = open "somejunkthatdoesntexist", 'r'
pop_eh
.return(42)
got_error:
.return(-1)
which gets wrapped in an anonymous PIR subroutine.
Duke
[0] - http://pl.parrot.org
--
Jonathan "Duke" Leto
jona...@leto.net
http://leto.net
_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-dev
I think the problem lies in the dynamic opcode loading, Since we've
made dynamic a lot of opcodes, the problem manifest now much more
frequently, When load_bytecode a pbc that uses some dynops from other
pbc that uses some others, the opcode numbers get confused.
--
Salu2
_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-dev