diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 02a5e6c90d99959ae2d1f2eb3b18f19ad55e7e90..17883ef9f8432feb1f0d31593b0183febba55f43 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,8 @@ +2000-11-20 Tom Tromey <tromey@cygnus.com> + + * lex.c (yylex): Recognize floating point constants with leading + 0. + 2000-11-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> * java-tree.h (cyclic_inheritance_report): Constify. diff --git a/gcc/java/lex.c b/gcc/java/lex.c index 1b8898c604cb5bf4e49d3f11833762da88140507..eb4f1655be37544bd098dc5b80f66611fdf098d0 100644 --- a/gcc/java/lex.c +++ b/gcc/java/lex.c @@ -1024,8 +1024,12 @@ java_lex (java_lval) int seen_exponent = 0; int fflag = 0; /* 1 for {f,F}, 0 for {d,D}. FP literal are double unless specified. */ - if (radix != 10) + + /* It is ok if the radix is 8 because this just means we've + seen a leading `0'. However, radix==16 is invalid. */ + if (radix == 16) java_lex_error ("Can't express non-decimal FP literal", 0); + radix = 10; for (;;) {