Update of /cvsroot/nice/Nice/src/bossa/parser
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1683/F:/nice/src/bossa/parser
Modified Files:
Parser.jj
Log Message:
Avoid lookahead on default value of a field to improve parse errors.
Index: Parser.jj
===================================================================
RCS file: /cvsroot/nice/Nice/src/bossa/parser/Parser.jj,v
retrieving revision 1.255
retrieving revision 1.256
diff -C2 -d -r1.255 -r1.256
*** Parser.jj 8 Aug 2004 21:51:54 -0000 1.255
--- Parser.jj 11 Aug 2004 14:13:02 -0000 1.256
***************
*** 956,959 ****
--- 956,977 ----
}
+ void fieldLookahead():
+ {}
+ {
+ ( "override"
+ |
+ ( "public-read" [ "private-write" ]
+ | "private-write"
+ | ( ("public" | "private" | {} )
+ [ "final" ]
+ )
+ )
+ [ "transient" ]
+ [ "volatile" ]
+ )
+ monoSymbol()
+ ( "=" | ";" )
+ }
+
List getField(NiceClass c, List fields, List overrides, boolean storeDocString):
{
***************
*** 1060,1064 ****
}
|
! LOOKAHEAD( getField(null, null) )
overrides = getField(impl, fields, overrides, storeDocString)
| { Definition m; Token t = getToken(1); boolean isOverride = false; }
--- 1078,1082 ----
}
|
! LOOKAHEAD( fieldLookahead() )
overrides = getField(impl, fields, overrides, storeDocString)
| { Definition m; Token t = getToken(1); boolean isOverride = false; }
|