-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello all,
I'm working on an AST parser for the Bash language and I've come across the 
following strange behavior:
I'm trying to handle comments, so I used the comments token you can get when 
you start a new grammar in ANTLRworks.  It works.  

COMMENT
    :   '#' ~('\n'|'\r')* '\r'? '\n' {$channel=HIDDEN;}
    ;

The problem arises when the comment is the last thing from the input (i.e, no 
new line before EOF).  Removing the '\n' from the token causes it to freak out 
when I run the tests, but I can't get it to match comments at the end of file.  
Leaving that '\n' in lets the code compile, but I still can't match that last 
case.

Here's where the interesting part happens.  When I run it through the debugger 
with the same test case that I use in gunit, the debugger allows the input and 
parses it correctly (meaning, it ignores it as it should) and correctly 
generates the expected AST.

Does the debugger allow the code to be more robust in its decision making 
abilities?  Or does it do something to the input to allow it to be matched to a 
token.

Thanks for the help!

Nathan
-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.14 (Darwin)

iEYEARECAAYFAkwFDBsACgkQFpoRlVgtqKZHIgCfRWHiKc6fr51t7tHT1xtxlVYG
s9sAmwak2ZHv3XPVPeMgwYNDbqhXJztq
=2bxk
-----END PGP SIGNATURE-----

List: http://www.antlr.org/mailman/listinfo/antlr-interest
Unsubscribe: 
http://www.antlr.org/mailman/options/antlr-interest/your-email-address

-- 
You received this message because you are subscribed to the Google Groups 
"il-antlr-interest" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/il-antlr-interest?hl=en.

Reply via email to