[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
invalid %define boolean variable
From: |
Joel E. Denny |
Subject: |
invalid %define boolean variable |
Date: |
Sat, 28 Jul 2007 21:17:43 -0400 (EDT) |
I committed this.
Index: ChangeLog
===================================================================
RCS file: /sources/bison/bison/ChangeLog,v
retrieving revision 1.1714
diff -p -u -r1.1714 ChangeLog
--- ChangeLog 28 Jul 2007 04:27:32 -0000 1.1714
+++ ChangeLog 29 Jul 2007 01:06:41 -0000
@@ -1,3 +1,11 @@
+2007-07-28 Joel E. Denny <address@hidden>
+
+ * src/muscle_tab.c (muscle_percent_define_flag_if): In order to
+ determine whether this function has already complained about an invalid
+ value for a %define boolean variable, don't check whether Bison has
+ ever examined the value. As written, the check was a tautology.
+ Instead, record and check for this complaint using a separate muscle.
+
2007-07-27 Joel E. Denny <address@hidden>
Fix push parsing memory leak reported by Brandon Lucia at
Index: src/muscle_tab.c
===================================================================
RCS file: /sources/bison/bison/src/muscle_tab.c,v
retrieving revision 1.49
diff -p -u -r1.49 muscle_tab.c
--- src/muscle_tab.c 29 May 2007 03:06:34 -0000 1.49
+++ src/muscle_tab.c 29 Jul 2007 01:06:41 -0000
@@ -460,12 +460,15 @@ muscle_percent_define_flag_if (char cons
char const *name;
char const *loc_name;
char const *usage_name;
+ char const *invalid_boolean_name;
bool result = false;
MUSCLE_USER_NAME_CONVERT (name, "percent_define(", variable, ")");
MUSCLE_USER_NAME_CONVERT (loc_name, "percent_define_loc(", variable, ")");
MUSCLE_USER_NAME_CONVERT (usage_name, "percent_define_bison_variables(",
variable, ")");
+ MUSCLE_USER_NAME_CONVERT (invalid_boolean_name,
+ "percent_define_invalid_boolean(", variable, ")");
if (muscle_percent_define_ifdef (variable))
{
@@ -474,10 +477,13 @@ muscle_percent_define_flag_if (char cons
result = true;
else if (0 == strcmp (value, "false"))
result = false;
- else if (!muscle_find_const (usage_name))
- complain_at(muscle_location_decode (loc_name),
- _("invalid value for %%define boolean variable `%s'"),
- variable);
+ else if (!muscle_find_const (invalid_boolean_name))
+ {
+ muscle_insert (invalid_boolean_name, "");
+ complain_at(muscle_location_decode (loc_name),
+ _("invalid value for %%define boolean variable `%s'"),
+ variable);
+ }
free (value);
}
else
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- invalid %define boolean variable,
Joel E. Denny <=