On Sun, Sep 14, 2008 at 12:41:42AM -0700, Christoph Otto via RT wrote: > > I got impatient and committed this as r31101. I'm marking this ticket > as resolved.
According to [1], r31101 causes Rakudo to stop building with the following error: $ make ../../parrot /home/pmichaud/parrot/trunk/runtime/parrot/library/PGE/Perl6Grammar.pbc \ --output=src/gen_grammar.pir \ src/parser/grammar.pg src/parser/grammar-oper.pg ../../parrot /home/pmichaud/parrot/trunk/compilers/nqp/nqp.pbc --output=src/gen_actions.pir \ --encoding=fixed_8 --target=pir src/parser/actions.pm Null PMC access in get_bool() current instr.: 'parrot;NQP::Grammar::Actions;routine_def' pc 33982 (src/Grammar/Actions.pir:403) called from Sub 'parrot;NQP::Grammar;routine_def' pc 20036 (src/Grammar_gen.pir:7553) called from Sub 'parrot;NQP::Grammar;noun' pc 25828 (src/Grammar_gen.pir:9806) called from Sub 'parrot;NQP::Grammar;term' pc 22730 (src/Grammar_gen.pir:8622) called from Sub 'parrot;PGE::OPTable;parse' pc 1959 (compilers/pge/PGE/OPTable.pir:554) [...] As a temporary fix, Reini Urban reverted parts of the r31101 patch in r31108. I've traced the problem back to NQP; it was testing a value retrieved from a ResizablePMCArray for truth without first checking it for PMCNULL. I've since fixed that part of NQP (r31115). However, this does point out that there may be other languages and tools in Parrot that likewise depend on the old behavior of the various *Array types, so I'm reopening this ticket until all of those have been tested. In fact, it may be that we should revert r31101 entirely and go through a complete deprecation cycle before changing the behaviors of the core Array types in this manner, in case there are other libraries or languages depending on it. Pm 1. http://groups.google.com/group/perl.perl6.internals/msg/2cd7d9ede7a3cd4e