summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoel E. Denny <joeldenny@joeldenny.org>2011-04-16 18:15:40 -0400
committerJoel E. Denny <joeldenny@joeldenny.org>2011-04-16 18:29:10 -0400
commit67b8cfbd94b6ec696291851f222922043044bfa4 (patch)
treea9af18fff1c81297341915e96246fb1b4a433606
parenta801089ca3a86b89374dfbcc790944a9aad1aebd (diff)
downloadbison-67b8cfbd94b6ec696291851f222922043044bfa4.tar.gz
glr.c: omit yyresolveLocations when locations are disabled.
This prevents gcc 4.6.0's -Wunused-but-set-variable from warning about yyresolveLocations's local yyrhsloc. When locations are enabled, there's no such warning because YYLLOC_DEFAULT then uses yyrhsloc. Reported by Jim Meyering at <http://lists.gnu.org/archive/html/bug-bison/2011-04/msg00002.html>. * data/glr.c (yyresolveLocations): Omit definition when locations are disabled. (yyresolveValue): Omit yyresolveLocations invocation when locations are disabled. (cherry picked from commit 55dd35633675f588c58ead46ecd6b5f4db504192)
-rw-r--r--ChangeLog13
-rw-r--r--data/glr.c8
2 files changed, 17 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 63a50100..fa6198ca 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,18 @@
2011-04-16 Joel E. Denny <joeldenny@joeldenny.org>
+ glr.c: omit yyresolveLocations when locations are disabled.
+ This prevents gcc 4.6.0's -Wunused-but-set-variable from warning
+ about yyresolveLocations's local yyrhsloc. When locations are
+ enabled, there's no such warning because YYLLOC_DEFAULT then uses
+ yyrhsloc. Reported by Jim Meyering at
+ <http://lists.gnu.org/archive/html/bug-bison/2011-04/msg00002.html>.
+ * data/glr.c (yyresolveLocations): Omit definition when locations
+ are disabled.
+ (yyresolveValue): Omit yyresolveLocations invocation when
+ locations are disabled.
+
+2011-04-16 Joel E. Denny <joeldenny@joeldenny.org>
+
gnulib, autoconf: update.
* README-hacking (Updating a submodule): Give advice on how to
determine the versions of gnulib and autoconf to which we should
diff --git a/data/glr.c b/data/glr.c
index 807d67d7..f22a8f10 100644
--- a/data/glr.c
+++ b/data/glr.c
@@ -1757,7 +1757,7 @@ yyreportAmbiguity (yySemanticOption* yyx0,
yyerror (]b4_yyerror_args[YY_("syntax is ambiguous"));
return yyabort;
-}
+}]b4_locations_if([[
/** Resolve the locations for each of the YYN1 states in *YYSTACKP,
* ending at YYS1. Has no effect on previously resolved states.
@@ -1815,7 +1815,7 @@ yyresolveLocations (yyGLRState* yys1, int yyn1,
yylloc = yylloc_current;
}
}
-}
+}]])[
/** Resolve the ambiguity represented in state YYS in *YYSTACKP,
* perform the indicated actions, and set the semantic value of YYS.
@@ -1850,8 +1850,8 @@ yyresolveValue (yyGLRState* yys, yyGLRStack* yystackp]b4_user_formals[)
{
switch (yypreference (yybest, yyp))
{
- case 0:
- yyresolveLocations (yys, 1, yystackp]b4_user_args[);
+ case 0:]b4_locations_if([[
+ yyresolveLocations (yys, 1, yystackp]b4_user_args[);]])[
return yyreportAmbiguity (yybest, yyp]b4_pure_args[);
break;
case 1: