When something is a lexeme it must be so in both L0 and G1. Having
<name_chars> in a lexeme pseudo-rule declares it as a lexeme, but
<name_chars> is not a lexeme in either L0 or G1. In L0, the problem is
that it appears on a RHS, which a lexeme is not allowed to do. In G1,
the problem is that it never appears at all, and to be a lexeme a symbol
must appear on the RHS of at least one G1 rule.
The "Use of uninitialized value" message on the other hand, is a Marpa
bug. It's unintended clutter in the error reporting, and I will get rid
of it.
-- jeffrey
On 01/08/2014 03:45 PM, Ron Savage wrote:
I'm getting
ron@zigzag:~$ vcard.parser.pl
Use of uninitialized value $g1_lexeme_id in array element at
/home/ron/perl5/perlbrew/perls/perl-5.14.2/lib/site_perl/5.14.2/x86_64-linux-thread-multi/Marpa/R2/SLG.pm
line 525.
Symbol <name_chars> is declared as a lexeme, but it is not used as one.
Marpa::R2 exception at /home/ron/bin/vcard.parser.pl line 96.
The code is a gist: https://gist.github.com/ronsavage/8326879
--
You received this message because you are subscribed to the Google
Groups "marpa parser" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.
--
You received this message because you are subscribed to the Google Groups "marpa
parser" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.