build: re-enable compiler warnings, and fix them

There are warnings (-Wextra) in generated C++ code:

  ltlparse.cc: In member function 'ltlyy::parser::symbol_number_type
  ltlyy::parser::by_state::type_get() const':
  ltlparse.cc:452:33: warning: enumeral and non-enumeral type in
  conditional expression
      return state == empty_state ? empty_symbol : yystos_[state];

Reported by Alexandre Duret-Lutz.

It turns out that -Wall and -Wextra were disabled because of a stupid
typo.

* configure.ac: Fix the stupid typo.
* data/lalr1.cc, src/AnnotationList.c, src/InadequacyList.c,
* src/ielr.c, src/print.c, src/scan-code.l, src/symlist.c,
* src/symlist.h, src/symtab.c, src/tables.c, tests/actions.at,
* tests/calc.at, tests/cxx-type.at, tests/glr-regression.at,
* tests/named-refs.at, tests/torture.at:
Fix warnings, mostly issues about variables used only with assertions,
which are disabled with -DNDEBUG.
This commit is contained in:
Akim Demaille
2015-01-22 19:03:41 +01:00
parent 658b189348
commit a2c525b34c
17 changed files with 33 additions and 22 deletions

View File

@@ -546,7 +546,7 @@ AnnotationList__compute_from_inadequacies (
AnnotationList__insertInto (annotation_node,
&annotation_lists[s->number],
s->nitems);
aver (b);
aver (b); (void) b;
}
/* This aver makes sure the
AnnotationList__computeDominantContribution check above

View File

@@ -66,7 +66,7 @@ symbol *
InadequacyList__getContributionToken (InadequacyList const *self,
ContributionIndex i)
{
aver (0 <= i && i < self->contributionCount);
aver (0 <= i && i < self->contributionCount); (void) i;
return self->inadequacy.conflict.token;
}

View File

@@ -1102,7 +1102,10 @@ ielr (void)
else if (STREQ (type, "canonical-lr"))
lr_type = LR_TYPE__CANONICAL_LR;
else
aver (false);
{
aver (false);
abort ();
}
free (type);
}

View File

@@ -343,6 +343,7 @@ print_reductions (FILE *out, state *s)
|| (STREQ (default_reductions, "consistent")
&& default_reduction_only)
|| (reds->num == 1 && reds->rules[0]->number == 0));
(void) default_reduction_only;
free (default_reductions);
}
}

View File

@@ -664,7 +664,7 @@ handle_action_dollar (symbol_list *rule, char *text, location dollar_loc)
case LHS_REF:
if (!type_name)
type_name = symbol_list_n_type_name_get (rule, dollar_loc, 0);
type_name = symbol_list_n_type_name_get (rule, 0);
if (!type_name)
{
@@ -695,8 +695,7 @@ handle_action_dollar (symbol_list *rule, char *text, location dollar_loc)
if (max_left_semantic_context < 1 - n)
max_left_semantic_context = 1 - n;
if (!type_name && 0 < n)
type_name =
symbol_list_n_type_name_get (effective_rule, dollar_loc, n);
type_name = symbol_list_n_type_name_get (effective_rule, n);
if (!type_name)
{
if (union_seen | tag_seen)

View File

@@ -190,7 +190,7 @@ symbol_list_n_get (symbol_list *l, int n)
`--------------------------------------------------------------*/
uniqstr
symbol_list_n_type_name_get (symbol_list *l, location loc, int n)
symbol_list_n_type_name_get (symbol_list *l, int n)
{
return symbol_list_n_get (l, n)->content.sym->type_name;
}

View File

@@ -124,7 +124,7 @@ symbol_list *symbol_list_n_get (symbol_list *l, int n);
/* Get the data type (alternative in the union) of the value for
symbol N in rule RULE. */
uniqstr symbol_list_n_type_name_get (symbol_list *l, location loc, int n);
uniqstr symbol_list_n_type_name_get (symbol_list *l, int n);
/* Check whether the node is a border element of a rule. */
bool symbol_list_null (symbol_list *node);

View File

@@ -145,7 +145,7 @@ code_props_type_string (code_props_type kind)
case printer:
return "%printer";
}
assert (0);
abort ();
}
/*----------------------------------------.

View File

@@ -698,7 +698,7 @@ pack_vector (vector_number vector)
if (ok)
{
int loc;
int loc PACIFY_CC (= -1);
int k;
for (k = 0; k < t; k++)
{