"Leopold Toetsch" <[EMAIL PROTECTED]> wrote:
Jonathan Worthington wrote:
Hi,

I seem to be touching a bug related to writing compiled code.

pir_comp = compreg "PIR"
pbc_out = pir_comp(gen_pir)
fh = open output
print fh, pbc_out
close fh

On the print line, I get this error:-

directory_pack segment 'BYTECODE_EVAL_1' used size 158 but reported 160

It could be related to classes/eval.pmc:218 ff, but I can't reproduce it. There is a test in t/pmc/eval.t 'eval.freeze', which is very similar. I tried to insert more code but this didn't show the problem.

Please submit a full example showing the bug or better check it in as a todo test.

OK, attached. If you run this as a PIR example, it works just fine. If you compile it to a PBC, then you get the error.

$ parrot breaks2.pir example.dll

$ parrot -o breaks2.pbc breaks2.pir

$ parrot breaks2.pbc example.dll
directory_pack segment 'BYTECODE_EVAL_1' used size 158 but reported 160

Note: example.dll need not exist. Sorry it's not a particularly small test case - the problem seemed to vanish when I simplified it further than I have.

Thanks,

Jonathan

Attachment: breaks2.pir
Description: Binary data

Reply via email to