Module Name: src
Committed By: christos
Date: Tue Jan 3 01:56:04 UTC 2017
Modified Files:
src/external/bsd/flex/dist/src: flex.skl main.c
Log Message:
fix the re-entrant prefixed case.
To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.9 src/external/bsd/flex/dist/src/flex.skl
cvs rdiff -u -r1.5 -r1.6 src/external/bsd/flex/dist/src/main.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/external/bsd/flex/dist/src/flex.skl
diff -u src/external/bsd/flex/dist/src/flex.skl:1.8 src/external/bsd/flex/dist/src/flex.skl:1.9
--- src/external/bsd/flex/dist/src/flex.skl:1.8 Mon Jan 2 19:50:11 2017
+++ src/external/bsd/flex/dist/src/flex.skl Mon Jan 2 20:56:03 2017
@@ -113,7 +113,7 @@ m4_ifdef( [[M4_YY_PREFIX]],, [[m4_define
m4preproc_define(`M4_GEN_PREFIX',
``[[#define yy$1 ]]M4_YY_PREFIX[[$1]]
-m4_define([[yy$1]], [[M4_YY_PREFIX[[$1]]m4_ifelse($'`#,0,,[[($'`@)]])]])'')
+%# m4_define([[yy$1]], [[M4_YY_PREFIX[[$1]]m4_ifelse($'`#,0,,[[($'`@)]])]])'')
%if-c++-only
/* The c++ scanner is a mess. The FlexLexer.h header file relies on the
@@ -126,7 +126,8 @@ m4_define([[yy$1]], [[M4_YY_PREFIX[[$1]]
%endif
%if-c-only
-m4_ifelse(M4_YY_PREFIX,M4_YY_PREFIX,,
+%if-reentrant
+m4_ifelse(M4_YY_PREFIX,yy,,
M4_GEN_PREFIX(`_create_buffer')
M4_GEN_PREFIX(`_delete_buffer')
M4_GEN_PREFIX(`_scan_buffer')
@@ -164,6 +165,7 @@ m4_ifelse(M4_YY_PREFIX,M4_YY_PREFIX,,
M4_GEN_PREFIX(`wrap')
)
%endif
+%endif
m4_ifdef( [[M4_YY_BISON_LVAL]],
[[
Index: src/external/bsd/flex/dist/src/main.c
diff -u src/external/bsd/flex/dist/src/main.c:1.5 src/external/bsd/flex/dist/src/main.c:1.6
--- src/external/bsd/flex/dist/src/main.c:1.5 Mon Jan 2 19:22:56 2017
+++ src/external/bsd/flex/dist/src/main.c Mon Jan 2 20:56:03 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: main.c,v 1.5 2017/01/03 00:22:56 christos Exp $ */
+/* $NetBSD: main.c,v 1.6 2017/01/03 01:56:03 christos Exp $ */
/* flex - tool to generate fast lexical analyzers */
@@ -33,7 +33,7 @@
/* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR */
/* PURPOSE. */
#include "flexdef.h"
-__RCSID("$NetBSD: main.c,v 1.5 2017/01/03 00:22:56 christos Exp $");
+__RCSID("$NetBSD: main.c,v 1.6 2017/01/03 01:56:03 christos Exp $");
#include "version.h"
@@ -1590,9 +1590,9 @@ void readin (void)
if (!do_yywrap) {
if (!C_plus_plus) {
if (reentrant)
- outn ("\n#define yywrap(yyscanner) (/*CONSTCOND*/1)");
+ out_str ("\n#define %swrap(yyscanner) (/*CONSTCOND*/1)\n", prefix);
else
- outn ("\n#define yywrap() (/*CONSTCOND*/1)");
+ out_str ("\n#define %swrap() (/*CONSTCOND*/1)\n", prefix);
}
outn ("#define YY_SKIP_YYWRAP");
}