]> git.saurik.com Git - bison.git/commitdiff
* src/reader.c (parse_expect_decl): Use `skip_white_space' and
authorAkim Demaille <akim@epita.fr>
Mon, 16 Oct 2000 18:05:01 +0000 (18:05 +0000)
committerAkim Demaille <akim@epita.fr>
Mon, 16 Oct 2000 18:05:01 +0000 (18:05 +0000)
`read_signed_integer'.

ChangeLog
src/reader.c

index b3bfd4926f1107c2aca85d777a476af895f0d800..c29a7505b199738cf6d2093a938d04fb1da095fd 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2000-10-16  Akim Demaille  <akim@epita.fr>
+
+       * src/reader.c (parse_expect_decl): Use `skip_white_space' and
+       `read_signed_integer'.
+
+       
 2000-10-16  Akim Demaille  <akim@epita.fr>
 
        * src/reader.c (copy_dollar): New function.
 2000-10-16  Akim Demaille  <akim@epita.fr>
 
        * src/reader.c (copy_dollar): New function.
index e35e4f38a7e890fab831c0febe1ffd7c583f1903..cdacc071cc722fe857a9626ea728bdc2e007e64d 100644 (file)
@@ -773,28 +773,13 @@ parse_union_decl (void)
 static void
 parse_expect_decl (void)
 {
 static void
 parse_expect_decl (void)
 {
-  int c;
-  size_t count;
-  char buffer[20];
-
-  c = getc (finput);
-  while (c == ' ' || c == '\t')
-    c = getc (finput);
-
-  count = 0;
-  while (c >= '0' && c <= '9')
-    {
-      if (count < sizeof(buffer) - 1)
-       buffer[count++] = c;
-      c = getc (finput);
-    }
-  buffer[count] = 0;
-
+  int c = skip_white_space ();
   ungetc (c, finput);
 
   ungetc (c, finput);
 
-  if (count <= 0 || count > 10)
+  if (!isdigit (c))
     complain (_("argument of %%expect is not an integer"));
     complain (_("argument of %%expect is not an integer"));
-  expected_conflicts = atoi (buffer);
+  else
+    expected_conflicts = read_signed_integer (finput);
 }
 
 
 }