From 4e7842a01ee60d854ae144884e13fbdfe95a7fce Mon Sep 17 00:00:00 2001 From: Tom Tromey <tromey@cygnus.com> Date: Mon, 20 Nov 2000 22:32:40 +0000 Subject: [PATCH] lex.c (yylex): Recognize floating point constants with leading 0. * lex.c (yylex): Recognize floating point constants with leading 0. From-SVN: r37593 --- gcc/java/ChangeLog | 5 +++++ gcc/java/lex.c | 6 +++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 02a5e6c90d99..17883ef9f843 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 1b8898c604cb..eb4f1655be37 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 (;;) { -- GitLab