[antlr-interest] java.g NUM_INT
Ray Waldin
ray at waldin.net
Wed Sep 24 14:17:06 PDT 2003
Yes. There appears to be an extraneous '|' following 'FLOAT_SUFFIX' in
the predicate causing it to return true in all cases. The corrected
patch is:
--- old/java.g 2003-09-23 15:20:05.000000000 -0700
+++ java.g 2003-09-24 14:10:18.000000000 -0700
@@ -1234,6 +1234,7 @@
}
: HEX_DIGIT
)+
+ | (('0'..'9')+
('.'|EXPONENT|FLOAT_SUFFIX)) => ('0'..'9')+ //float or double with
leading zero
|
('0'..'7')+ // octal
)?
| ('1'..'9') ('0'..'9')*
{isDecimal=true;} // non-zero decimal
Sorry for any confusion this may have caused.
-Ray
Ernest Pasour wrote:
>When I tried sticking this fix in, it allowed a number like 083 to pass through as an Integer. I'm not sure exactly why no error is thrown though. Do you see that behavior?
>
>-----Original Message-----
>From: Ray Waldin [mailto:ray at waldin.net]
>Sent: Tuesday, September 23, 2003 7:38 PM
>To: antlr-interest at yahoogroups.com
>Subject: [antlr-interest] java.g NUM_INT
>
>
>I sent this earlier and it never showed up on the list, so here it is
>again...
>
>
>Hi everyone,
>
>I'm new to this group, so apologies if this issue has been raised
>before. I wasn't able to find any reference to it in the archives. In
>java.g (Version 1.20) it seems that the NUM_INT rule is broken for cases
>of floats and doubles which have leading zeros and contain the digits 8
>or 9 in the decimal integer or mantissa part.
>
>While the following cases work (by sheer luck, I believe):
>
>
>
>>07.0f
>>06d
>>07e0
>>
>>
>
>these do not:
>
>
>
>>08.0f
>>09d
>>08e0
>>
>>
>
>A quick fix can be found below.
>
>-Ray
>
>
>--- old/java.g 2003-09-23 15:20:05.000000000 -0700
>+++ java.g 2003-09-23 15:21:28.000000000 -0700
>@@ -1234,6 +1234,7 @@
> }
> : HEX_DIGIT
> )+
>+ | (('0'..'9')+
>('.'|EXPONENT|FLOAT_SUFFIX|)) => ('0'..'9')+ // float or double with
>leading zero
> |
>('0'..'7')+
>// octal
> )?
> | ('1'..'9') ('0'..'9')*
>{isDecimal=true;} // non-zero decimal
>
>
>
>
>
>Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
>
>
>
>
>
>Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.antlr.org/pipermail/antlr-interest/attachments/20030924/29c9249e/attachment.html
More information about the antlr-interest
mailing list