Hello,

There are 2 more compilation issues in the generated file lex.yy.c :
comparison between signed and unsigned integer.
One of them (line 1708) was due to the third fix, but the first one
needed a new fix.

Please find attached the patch of the makefile.
I don't know how to accommodate the various combination of flex and gcc
versions !

Best regards,
-- 
Francis GASCHET
NUMLOG



--- lib/libipsecconf/Makefile.orig	2016-12-26 18:49:35.734380612 +0100
+++ lib/libipsecconf/Makefile	2016-12-26 18:56:48.242254539 +0100
@@ -59,6 +59,12 @@
 #   also warns about comparisons of different kinds, so we add a third
 #   fix.
 #
+# - flex 2.6.1 and gcc 6.2.1 on debian stretch/sid (2016-12-26) :
+#   got 2 more warnings :
+#     - lex.yy.c:994 : max_size --> (size_t)max_size (new fix)
+#     - lex.yy.c:1708 : caused by the third fix. Removed this line :
+#	    -e 's/if ((int) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {$$/if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {/' \
+#
 # Avoid sed -i which somehow causes unwritable files
 # on fedora 20 with 9p filesystem mount.
 # Avoid creating the target file until it is done.
@@ -69,7 +75,7 @@
 	$(LEX) -o [email protected] $<
 	sed -e 's/for ( i = 0; i < _yybytes_len; ++i )$$/for ( i = 0; (yy_size_t)i < (yy_size_t)_yybytes_len; ++i )/' \
 	    -e '/^extern int isatty.*$$/d' \
-	    -e 's/if ((int) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {$$/if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {/' \
+	    -e 's/for ( n = 0; n < max_size/for ( n = 0; n < (size_t)max_size/' \
 	    < [email protected] > [email protected]
 	rm [email protected]
 	mv [email protected] $@



_______________________________________________
Swan mailing list
[email protected]
https://lists.libreswan.org/mailman/listinfo/swan

Reply via email to