[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] Handles several --enable-gcc-warnings
From: |
Di-an JAN |
Subject: |
[PATCH] Handles several --enable-gcc-warnings |
Date: |
Sun, 16 Nov 2008 16:58:57 -0800 (PST) |
This patch handles reasonable warnings from --enable-gcc-warnings.
It renames a muscle-producing function to use the prepare_* convention
as it's not a output-producing *_output function.
Tested on Cygwin on top of my previous patches with ``make check''
with one expected error.
I also get a warning for value = "" but the string pointed to is not changed
beyond that point. The code doesn't seen wrong, so I didn't try to ``fix'' it.
src/getargs.c: In function `getargs':
src/getargs.c:535: warning: assignment discards qualifiers from pointer target
type
2008-11-16 Di-an Jan <address@hidden>
Handles several --enable-gcc-warnings.
* src/getargs.c (command_line_location): Set parameters to void.
* src/output.c (symbol_type_name_cmp): Make static.
(symbols_by_type_name): Set parameters to void.
(symbol_definitions_output): Remove unused parameter. Rename as...
(prepare_symbol_definitions): this.
(muscles_output): Move symbol_definitions_output to...
(output): here as prepare_symbol_definitions.
* tests/c++.at (AT_CHECK_VARIANTS): Remove unused parameters of main.
(AT_CHECK_NAMESPACE): Make unused parameter lloc unnamed.
diff --git a/src/getargs.c b/src/getargs.c
index 53934f3..6b748c8 100644
--- a/src/getargs.c
+++ b/src/getargs.c
@@ -499,7 +499,7 @@ static struct option const long_options[] =
/* Build a location for the current command line argument. */
static
location
-command_line_location()
+command_line_location (void)
{
location res;
/* "<command line>" is used in GCC's messages about -D. */
diff --git a/src/output.c b/src/output.c
index 31bfd12..73e6348 100644
--- a/src/output.c
+++ b/src/output.c
@@ -287,7 +287,7 @@ prepare_states (void)
| Compare two symbols by type-name, and then by number. |
`-------------------------------------------------------*/
-int
+static int
symbol_type_name_cmp (const symbol **lhs, const symbol **rhs)
{
int res = UNIQSTR_CMP((*lhs)->type_name, (*rhs)->type_name);
@@ -302,7 +302,7 @@ symbol_type_name_cmp (const symbol **lhs, const symbol
**rhs)
`----------------------------------------------------------------*/
static symbol **
-symbols_by_type_name ()
+symbols_by_type_name (void)
{
typedef int (*qcmp_type) (const void *, const void *);
symbol **res = xmemdup (symbols, nsyms * sizeof *res);
@@ -396,12 +396,12 @@ merger_output (FILE *out)
}
-/*---------------------------------------.
-| Output the symbol definitions to OUT. |
-`---------------------------------------*/
+/*---------------------------------------------.
+| Prepare the muscles for symbol definitions. |
+`---------------------------------------------*/
static void
-symbol_definitions_output (FILE *out)
+prepare_symbol_definitions (void)
{
int i;
for (i = 0; i < nsyms; ++i)
@@ -596,7 +596,6 @@ muscles_output (FILE *out)
merger_output (out);
symbol_code_props_output (out, "destructors", &symbol_destructor_get);
symbol_code_props_output (out, "printers", &symbol_printer_get);
- symbol_definitions_output (out);
symbol_numbers_output (out);
token_definitions_output (out);
type_names_output (out);
@@ -794,6 +793,7 @@ output (void)
prepare_rules ();
prepare_states ();
prepare_actions ();
+ prepare_symbol_definitions ();
prepare ();
diff --git a/tests/c++.at b/tests/c++.at
index 0cfcaf0..33f1e35 100644
--- a/tests/c++.at
+++ b/tests/c++.at
@@ -174,7 +174,7 @@ yy::parser::error(const yy::parser::location_type&,
}
int
-main(int argc, char *argv[])
+main (void)
{
yy::parser p;
p.set_debug_level(!!getenv("YYDEBUG"));
@@ -310,7 +310,7 @@ AT_DATA_GRAMMAR([[input.y]],
%code {
// YYSTYPE contains a namespace reference.
- int yylex (YYSTYPE *lval, const ]$1[::parser::location_type* lloc) {
+ int yylex (YYSTYPE *lval, const ]$1[::parser::location_type*) {
lval->i = 3;
return 0;
}
- [PATCH] Handles several --enable-gcc-warnings,
Di-an JAN <=