* lib/diffseq.h (diag): Use an if, not an ifdef, for most of the heuristic check. This way, GCC 7 with --enable-gcc-warnings does not complain about big_snake being defined but not used. --- ChangeLog | 7 +++++++ lib/diffseq.h | 8 ++++++-- 2 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/ChangeLog b/ChangeLog index 2e332a4..55bc3c5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2017-06-17 Paul Eggert <egg...@cs.ucla.edu> + + diffseq: port to GCC 7 with --enable-gcc-warnings + * lib/diffseq.h (diag): Use an if, not an ifdef, for most of the + heuristic check. This way, GCC 7 with --enable-gcc-warnings does + not complain about big_snake being defined but not used. + 2017-06-15 Bruno Haible <br...@clisp.org> gettext-h: Update theoretical condition for use of variable size arrays. diff --git a/lib/diffseq.h b/lib/diffseq.h index d7a3743..a3cf140 100644 --- a/lib/diffseq.h +++ b/lib/diffseq.h @@ -279,6 +279,11 @@ diag (OFFSET xoff, OFFSET xlim, OFFSET yoff, OFFSET ylim, bool find_minimal, continue; #ifdef USE_HEURISTIC + bool heuristic = ctxt->heuristic; +#else + bool heuristic = false; +#endif + /* Heuristic: check occasionally for a diagonal that has made lots of progress compared with the edit distance. If we have any such, find the one that has made the most progress and return it @@ -287,7 +292,7 @@ diag (OFFSET xoff, OFFSET xlim, OFFSET yoff, OFFSET ylim, bool find_minimal, With this heuristic, for vectors with a constant small density of changes, the algorithm is linear in the vector size. */ - if (200 < c && big_snake && ctxt->heuristic) + if (200 < c && big_snake && heuristic) { { OFFSET best = 0; @@ -367,7 +372,6 @@ diag (OFFSET xoff, OFFSET xlim, OFFSET yoff, OFFSET ylim, bool find_minimal, } } } -#endif /* USE_HEURISTIC */ /* Heuristic: if we've gone well beyond the call of duty, give up and report halfway between our best results so far. */ -- 2.9.4