]> git.saurik.com Git - bison.git/blobdiff - etc/bench.pl.in
tests: improve the generic yylex implementation.
[bison.git] / etc / bench.pl.in
index b008b0bcbc96b039e7d9aa21fac572becdbdb82a..4d480d5eb751ade756396536f292797f83c3f318 100755 (executable)
@@ -1,6 +1,6 @@
 #! /usr/bin/perl -w
 
-# Copyright (C) 2006, 2008 Free Software Foundation, Inc.
+# Copyright (C) 2006, 2008-2012 Free Software Foundation, Inc.
 #
 # This file is part of Bison, the GNU Compiler Compiler.
 #
@@ -134,8 +134,8 @@ sub calc_grammar ($$$)
     or die;
   print $out <<EOF;
 %{
+#include <assert.h>
 #include <stdio.h>
-
 #include <stdlib.h>
 #include <string.h>
 #include <ctype.h>
@@ -270,9 +270,7 @@ yylex (void)
 
   /* Skip white space.  */
   while ((c = get_char ()) == ' ' || c == '\t')
-    {
-
-    }
+    continue;
 
   /* process numbers   */
   if (c == '.' || isdigit (c))
@@ -293,9 +291,8 @@ yylex (void)
 static int
 power (int base, int exponent)
 {
+  assert (0 <= exponent);
   int res = 1;
-  if (exponent < 0)
-    exit (3);
   for (/* Niente */; exponent; --exponent)
     res *= base;
   return res;
@@ -345,8 +342,8 @@ sub bench_grammar ($)
     (
      "pull-impure" => '',
      "pull-pure" => '%define api.pure',
-     "push-impure" => '%define api.push_pull "both"',
-     "push-pure" => '%define api.push_pull "both" %define api.pure',
+     "push-impure" => '%define api.push-pull "both"',
+     "push-pure" => '%define api.push-pull "both" %define api.pure',
     );
 
   my %bench;