On Sun, Jul 21, 2019 at 03:01:57PM +1000, Brendan O'Dea wrote: > On Sat, Jul 20, 2019 at 01:10:19PM -0400, Thomas Dickey wrote: > >Actually it's debatable whether flex "new" is maintained. > > I did a test build against the current version (2.6.4), and it no longer has > the issue[0] which caused me to revert to flex-old some time ago. > > Some brief testing of a handful of modes (mail, ada, html, c) appears to work > pretty much the same as the package built with flex-old. There may be subtle > behaviour changes which I didn't see, but the egregious symbol naming issue is > gone. I don't recall if that was changed in flex, or worked around in > configure at this point.
I'm unsure - I'll take a look to see if bisecting flex shows me a change. > Note that there seem to have been quite a few changes made to flex since I > last used it, and it appears to produce code with less warnings now than > flex-old does (using these[1] gcc warning flags). I'll note that some are > conversion flags, and you've suggested that there may be issues with those, > but there are still fewer in the newer flex. thanks (I'll check on that, too) > Compilation output of awk-filt.l attached for both. > > I can't think of a compelling reason at this point to stick with flex-old, so > will upload a new package with the build-dependency changed and see how that > goes. > > --bod > > [0] http://bugs.debian.org/832973 > [1] https://invisible-island.net/personal/lint-tools.html#tool_gcc > /bin/sh ../../plink.sh gcc -Wall -Wstrict-prototypes -Wmissing-prototypes > -Wshadow -Wconversion -rdynamic -o vile-au3-filt.so -shared au3-filt.o > compiling awk-filt.l > echo '#include <flt_defs.h>' > awk-filt.c > flex -Pawk_ -t ../../filters/awk-filt.l >> awk-filt.c > gcc -c -fPIC -I. -I.. -I../../filters -I../.. -DHAVE_CONFIG_H > -I../../filters/filters -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=500 > -D_FILE_OFFSET_BITS=64 -I../../filters/filters -Wall -Wstrict-prototypes > -Wmissing-prototypes -Wshadow -Wconversion -rdynamic -Dfilter_def=define_awk > -Dprivate_yywrap=awk_wrap ./awk-filt.c > ../../filters/awk-filt.l: In function ‘awk_lex’: > ../../filters/awk-filt.l:92:28: warning: conversion from ‘int’ to ‘YY_CHAR’ > {aka ‘unsigned char’} may change value [-Wconversion] > > ^ > ../../filters/awk-filt.l:102:13: warning: conversion from ‘int’ to ‘YY_CHAR’ > {aka ‘unsigned char’} may change value [-Wconversion] > pop_state(); > ^~~~ > ../../filters/awk-filt.l:104:56: warning: conversion to ‘unsigned int’ from > ‘short int’ may change the sign of the result [-Wsign-conversion] > > ^ > ../../filters/awk-filt.l: In function ‘yy_get_next_buffer’: > ../../filters/awk-filt.l:282:35: warning: conversion to ‘yy_size_t’ {aka > ‘unsigned int’} from ‘int’ may change the sign of the result > [-Wsign-conversion] > ../../filters/awk-filt.l:282:4: warning: conversion to ‘int’ from ‘yy_size_t’ > {aka ‘unsigned int’} may change the sign of the result [-Wsign-conversion] > ../../filters/awk-filt.l:299:20: warning: conversion to ‘int’ from > ‘yy_size_t’ {aka ‘unsigned int’} may change the sign of the result > [-Wsign-conversion] > ../../filters/awk-filt.l:321:49: warning: conversion to ‘yy_size_t’ {aka > ‘unsigned int’} from ‘int’ may change the sign of the result > [-Wsign-conversion] > ../../filters/awk-filt.l:321:18: warning: conversion to ‘int’ from > ‘yy_size_t’ {aka ‘unsigned int’} may change the sign of the result > [-Wsign-conversion] > ../../filters/awk-filt.l: In function ‘yy_get_previous_state’: > ../../filters/awk-filt.l:377:27: warning: conversion from ‘int’ to ‘YY_CHAR’ > {aka ‘unsigned char’} may change value [-Wconversion] > ../../filters/awk-filt.l:387:12: warning: conversion from ‘int’ to ‘YY_CHAR’ > {aka ‘unsigned char’} may change value [-Wconversion] > ../../filters/awk-filt.l:389:55: warning: conversion to ‘unsigned int’ from > ‘short int’ may change the sign of the result [-Wsign-conversion] > ../../filters/awk-filt.l: In function ‘yy_try_NUL_trans’: > ../../filters/awk-filt.l:422:11: warning: conversion from ‘int’ to ‘YY_CHAR’ > {aka ‘unsigned char’} may change value [-Wconversion] > ../../filters/awk-filt.l:424:54: warning: conversion to ‘unsigned int’ from > ‘short int’ may change the sign of the result [-Wsign-conversion] > ../../filters/awk-filt.l: At top level: > ../../filters/awk-filt.l:479:12: warning: function declaration isn’t a > prototype [-Wstrict-prototypes] > ../../filters/awk-filt.l: In function ‘awk__create_buffer’: > ../../filters/awk-filt.l:622:19: warning: conversion to ‘yy_size_t’ {aka > ‘unsigned int’} from ‘int’ may change the sign of the result > [-Wsign-conversion] > ../../filters/awk-filt.l: In function ‘awk__scan_buffer’: > ../../filters/awk-filt.l:751:18: warning: conversion to ‘int’ from > ‘yy_size_t’ {aka ‘unsigned int’} may change the sign of the result > [-Wsign-conversion] > ../../filters/awk-filt.l: In function ‘awk__scan_bytes’: > ../../filters/awk-filt.l:796:6: warning: conversion to ‘yy_size_t’ {aka > ‘unsigned int’} from ‘int’ may change the sign of the result > [-Wsign-conversion] > At top level: > ../../filters/awk-filt.l:877:13: warning: ‘yy_fatal_error’ defined but not > used [-Wunused-function] > ../../filters/awk-filt.l:479:12: warning: ‘input’ defined but not used > [-Wunused-function] > rm -f awk-filt.c > /bin/sh ../../plink.sh gcc -Wall -Wstrict-prototypes -Wmissing-prototypes > -Wshadow -Wconversion -rdynamic -o vile-au3-filt.so -shared au3-filt.o > compiling awk-filt.l > echo '#include <flt_defs.h>' > awk-filt.c > flex -Pawk_ -t ../../filters/awk-filt.l >> awk-filt.c > gcc -c -fPIC -I. -I.. -I../../filters -I../.. -DHAVE_CONFIG_H > -I../../filters/filters -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=500 > -D_FILE_OFFSET_BITS=64 -I../../filters/filters -Wall -Wstrict-prototypes > -Wmissing-prototypes -Wshadow -Wconversion -rdynamic -Dfilter_def=define_awk > -Dprivate_yywrap=awk_wrap ./awk-filt.c > <stdout>:2017:24: warning: ‘yy_fatal_error’ defined but not used > [-Wunused-function] > rm -f awk-filt.c -- Thomas E. Dickey <dic...@invisible-island.net> https://invisible-island.net ftp://ftp.invisible-island.net
signature.asc
Description: PGP signature