fix incorrect C code

Commit 3df32101e7 introduced invalid C
code.  Caught by GCC 7.3.0.

* bootstrap.conf (gnulib_modules): We need assume.
* src/reader.c (find_start_symbol): Fix the signature (too much C++,
sorry...).
Prefer 'assume' to 'assert', so that we don't have these warnings even
when NDEBUG is defined.
This commit is contained in:
Akim Demaille
2018-08-15 13:51:36 +02:00
parent bbd17b68fb
commit 7783ba2d4f
2 changed files with 7 additions and 6 deletions

View File

@@ -17,7 +17,8 @@
# gnulib modules used by this package. # gnulib modules used by this package.
gnulib_modules=' gnulib_modules='
argmatch assert calloc-posix close closeout config-h c-strcase argmatch assert assume
calloc-posix close closeout config-h c-strcase
configmake configmake
dirname dirname
error extensions fdl fopen-safer error extensions fdl fopen-safer

View File

@@ -726,20 +726,20 @@ prepare_percent_define_front_end_variables (void)
/* Find the first LHS which is not a dummy. */ /* Find the first LHS which is not a dummy. */
static symbol * static symbol *
find_start_symbol () find_start_symbol (void)
{ {
symbol_list *res = grammar; symbol_list *res = grammar;
for (; for (;
res != NULL && symbol_is_dummy (res->content.sym); res && symbol_is_dummy (res->content.sym);
res = res->next) res = res->next)
{ {
for (res = res->next; for (res = res->next;
res != NULL && res->content.sym != NULL; res && res->content.sym;
res = res->next) res = res->next)
continue; continue;
aver (res != NULL); assume (res);
} }
aver (res != NULL); assume (res);
return res->content.sym; return res->content.sym;
} }