Keep it simple.
--- a/mojoshader_parser_hlsl.lemon Wed Aug 26 00:32:04 2009 -0400
+++ b/mojoshader_parser_hlsl.lemon Fri Aug 28 01:02:03 2009 -0400
@@ -487,11 +487,7 @@
%type identifier { TokenData }
%destructor identifier { (void) ctx; } // !!! FIXME: remove this later, it's just to shut up the compiler for now.
-identifier(A) ::= IDENTIFIER(B).
-{
- A.token = B.token;
- A.tokenlen = B.tokenlen;
-}
+identifier(A) ::= IDENTIFIER(B). { A = B; }
// the expression stuff is based on Jeff Lee's ANSI C grammar.
primary_expr ::= identifier.