OSDN Git Service

* lex.c (yylex): Recognize floating point constants with leading
authortromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 20 Nov 2000 22:32:40 +0000 (22:32 +0000)
committertromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 20 Nov 2000 22:32:40 +0000 (22:32 +0000)
0.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@37593 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/java/ChangeLog
gcc/java/lex.c

index 02a5e6c..17883ef 100644 (file)
@@ -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.
index 1b8898c..eb4f165 100644 (file)
@@ -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 (;;)
            {