]> git.saurik.com Git - bison.git/blobdiff - src/scan-code.l
Require default %destructor/%printer to be declared using
[bison.git] / src / scan-code.l
index ec01f354a43e517a6aa6973557c05af03c82a64f..6e2634ecb2bb708eef4dddf2bfa21de5f2f48d13 100644 (file)
 %option prefix="code_" outfile="lex.yy.c"
 
 %{
-#include <config.h>
-#include "system.h"
-
 /* Work around a bug in flex 2.5.31.  See Debian bug 333231
    <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=333231>.  */
 #undef code_wrap
 #define code_wrap() 1
 
 #define FLEX_PREFIX(Id) code_ ## Id
-#include "complain.h"
 #include "flex-scanner.h"
+
+#include "complain.h"
 #include "reader.h"
 #include "getargs.h"
 #include <assert.h>
@@ -45,7 +43,7 @@
 
 /* The current calling start condition: SC_RULE_ACTION or
    SC_SYMBOL_ACTION. */
-# define YY_DECL const char *code_lex (int sc_context, symbol_list *rule)
+# define YY_DECL char *code_lex (int sc_context, symbol_list *rule)
 YY_DECL;
 
 #define YY_USER_ACTION  location_compute (loc, &loc->end, yytext, yyleng);
@@ -284,10 +282,10 @@ handle_action_dollar (symbol_list *rule, char *text, location dollar_loc)
                             _("$$ for the midrule at $%d of `%s'"
                               " has no declared type"),
                             rule->midrule_parent_rhs_index,
-                            effective_rule->sym->tag);
+                            effective_rule->content.sym->tag);
              else
                complain_at (dollar_loc, _("$$ of `%s' has no declared type"),
-                            rule->sym->tag);
+                            rule->content.sym->tag);
            }
          else
            untyped_var_seen = true;
@@ -315,7 +313,7 @@ handle_action_dollar (symbol_list *rule, char *text, location dollar_loc)
            {
              if (union_seen | tag_seen)
                complain_at (dollar_loc, _("$%d of `%s' has no declared type"),
-                            n, effective_rule->sym->tag);
+                            n, effective_rule->content.sym->tag);
              else
                untyped_var_seen = true;
              type_name = "";
@@ -376,10 +374,10 @@ handle_action_at (symbol_list *rule, char *text, location at_loc)
    translation is for \a rule, in the context \a sc_context
    (SC_RULE_ACTION, SC_SYMBOL_ACTION, INITIAL).  */
 
-static const char *
+static char *
 translate_action (int sc_context, symbol_list *rule, const char *a, location l)
 {
-  const char *res;
+  char *res;
   static bool initialized = false;
   if (!initialized)
     {
@@ -398,20 +396,20 @@ translate_action (int sc_context, symbol_list *rule, const char *a, location l)
   return res;
 }
 
-const char *
+char *
 translate_rule_action (symbol_list *rule)
 {
   return translate_action (SC_RULE_ACTION, rule, rule->action,
                           rule->action_location);
 }
 
-const char *
+char *
 translate_symbol_action (const char *a, location l)
 {
   return translate_action (SC_SYMBOL_ACTION, NULL, a, l);
 }
 
-const char *
+char *
 translate_code (const char *a, location l)
 {
   return translate_action (INITIAL, NULL, a, l);