]> git.saurik.com Git - bison.git/commitdiff
muscle: factor the handling of used variables
authorAkim Demaille <akim@lrde.epita.fr>
Sun, 14 Apr 2013 08:12:36 +0000 (10:12 +0200)
committerAkim Demaille <akim@lrde.epita.fr>
Mon, 15 Apr 2013 08:50:30 +0000 (10:50 +0200)
* src/muscle-tab.c (muscle_percent_define_use): New, corresponding
to b4_percent_define_use.
Use it where appropriate.

src/muscle-tab.c

index d666824b778c87e2b36bcd3056073b4b90f9b81b..bd75a7deb95cdbb3fdc872b6e153079b95799c87 100644 (file)
@@ -550,16 +550,21 @@ muscle_percent_define_ensure (char const *variable, location loc,
                                   MUSCLE_PERCENT_DEFINE_GRAMMAR_FILE);
 }
 
+/* Mark %define VARIABLE as used.  */
+static void
+muscle_percent_define_use (char const *variable)
+{
+  muscle_insert (muscle_name (variable, "bison_variables"), "");
+}
+
 char *
 muscle_percent_define_get (char const *variable)
 {
   uniqstr name = muscle_name (variable, NULL);
-  uniqstr usage_name = muscle_name (variable, "bison_variables");
   char *value = string_decode (name);
   if (!value)
     value = xstrdup ("");
-
-  muscle_insert (usage_name, "");
+  muscle_percent_define_use (variable);
   return value;
 }
 
@@ -587,15 +592,13 @@ muscle_percent_define_get_syncline (char const *variable)
 bool
 muscle_percent_define_ifdef (char const *variable)
 {
-  char const *value = muscle_find_const (muscle_name (variable, NULL));
-  if (value)
+  if (muscle_find_const (muscle_name (variable, NULL)))
     {
-      uniqstr usage_name = muscle_name (variable, "bison_variables");
-      muscle_insert (usage_name, "");
+      muscle_percent_define_use (variable);
       return true;
     }
-
-  return false;
+  else
+    return false;
 }
 
 bool