[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 5/5] bison: pacify Sun C 5.12
From: |
Paul Eggert |
Subject: |
[PATCH 5/5] bison: pacify Sun C 5.12 |
Date: |
Mon, 21 Oct 2013 15:28:19 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.0 |
* src/scan-code.l (show_sub_message):
Redo initializations to work around a bogus Sun C 5.12 warning.
(parse_ref): Remove unreachable code that Sun C 5.12 complains about.
* src/uniqstr.h (uniqstr_vsprintf): Use
_GL_ATTRIBUTE_FORMAT_PRINTF (...) instead of __attribute__
((__format__ (__printf__, ...))). Otherwise, Sun C 5.12
complains about an unknown attribute.
---
src/scan-code.l | 18 +++++++++++++-----
src/uniqstr.h | 4 +++-
2 files changed, 16 insertions(+), 6 deletions(-)
diff --git a/src/scan-code.l b/src/scan-code.l
index cced97b..f9968d1 100644
--- a/src/scan-code.l
+++ b/src/scan-code.l
@@ -342,8 +342,19 @@ show_sub_message (warnings warning,
{
static struct obstack msg_buf;
const char *tail = explicit_bracketing ? "" : cp + strlen (var->id);
- const char *id = var->hidden_by ? var->hidden_by->id : var->id;
- location id_loc = var->hidden_by ? var->hidden_by->loc : var->loc;
+ const char *id;
+ location id_loc;
+
+ if (var->hidden_by)
+ {
+ id = var->hidden_by->id;
+ id_loc = var->hidden_by->loc;
+ }
+ else
+ {
+ id = var->id;
+ id_loc = var->loc;
+ }
/* Create the explanation message. */
obstack_init (&msg_buf);
@@ -573,9 +584,6 @@ parse_ref (char *cp, symbol_list *rule, int rule_length,
return INVALID_REF;
}
}
-
- /* Not reachable. */
- return INVALID_REF;
}
/* Keeps track of the maximum number of semantic values to the left of
diff --git a/src/uniqstr.h b/src/uniqstr.h
index 006c10f..7ad52da 100644
--- a/src/uniqstr.h
+++ b/src/uniqstr.h
@@ -20,6 +20,8 @@
#ifndef UNIQSTR_H_
# define UNIQSTR_H_
+# include <stdio.h>
+
/*-----------------------------------------.
| Pointers to unique copies of C strings. |
`-----------------------------------------*/
@@ -33,7 +35,7 @@ uniqstr uniqstr_new (char const *str);
strings, use UNIQSTR_CONCAT, which is a convenient wrapper around
this function. */
uniqstr uniqstr_vsprintf (char const *format, ...)
- __attribute__ ((__format__ (__printf__, 1, 2)));
+ _GL_ATTRIBUTE_FORMAT_PRINTF (1, 2);
/* Two uniqstr values have the same value iff they are the same. */
# define UNIQSTR_EQ(Ustr1, Ustr2) (!!((Ustr1) == (Ustr2)))
--
1.8.3.1
- some minor patches for Solaris 10 etc., Paul Eggert, 2013/10/21
- [PATCH 1/5] maint: git now ignores .log and .trs files, Paul Eggert, 2013/10/21
- [PATCH 2/5] maint: mention help2man, texinfo, apt-get, Paul Eggert, 2013/10/21
- [PATCH 3/5] build: examples/calc++/calc++ requires flex, Paul Eggert, 2013/10/21
- [PATCH 4/5] maint: git now ignores rpcalc, Paul Eggert, 2013/10/21
- [PATCH 5/5] bison: pacify Sun C 5.12,
Paul Eggert <=
- Re: [PATCH 5/5] bison: pacify Sun C 5.12, Akim Demaille, 2013/10/22
- Re: [PATCH 5/5] bison: pacify Sun C 5.12, Akim Demaille, 2013/10/22
- Re: [PATCH 5/5] bison: pacify Sun C 5.12, Paul Eggert, 2013/10/22
- Re: [PATCH 5/5] bison: pacify Sun C 5.12, Akim Demaille, 2013/10/23
- Re: [PATCH 5/5] bison: pacify Sun C 5.12, Akim Demaille, 2013/10/23
- Re: [PATCH 5/5] bison: pacify Sun C 5.12, Akim Demaille, 2013/10/25
- Re: [PATCH 5/5] bison: pacify Sun C 5.12, Akim Demaille, 2013/10/29