- fixed bad definition of struct grammar which tried to resolve from right to left, creating large amounts of recursion and strange problems with PlayerInfo.

- added a command line option to generate a parser trace file.
- fixed a syntax error in player.txt.
This commit is contained in:
Christoph Oelckers 2016-11-27 12:18:06 +01:00
commit 36f559ecb7
3 changed files with 13 additions and 11 deletions

View file

@ -299,7 +299,7 @@ opt_struct_body(X) ::= error. { X = NULL; }
struct_body(X) ::= struct_member(X).
struct_body(X) ::= struct_member(A) struct_body(B). { X = A; /*X-overwrites-A*/ AppendTreeNodeSibling(X, B); }
struct_body(X) ::= struct_body(A) struct_member(B). { X = A; /*X-overwrites-A*/ AppendTreeNodeSibling(X, B); }
struct_member(X) ::= declarator(A). { X = A; /*X-overwrites-A*/ }
struct_member(X) ::= enum_def(A). { X = A; /*X-overwrites-A*/ }