You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
365 lines
12 KiB
365 lines
12 KiB
Index: flex.skl |
|
--- flex.skl.orig 2003-04-01 03:51:38.000000000 +0200 |
|
+++ flex.skl 2004-02-07 13:21:59.000000000 +0100 |
|
@@ -345,19 +345,19 @@ |
|
%# yyscan_t yyscanner; |
|
%# |
|
%# Generate traditional function defs |
|
- m4_define( [[YYFARGS0]], [[(M4_YY_DEF_ONLY_ARG) |
|
+ m4_define( [[YYFARGS0]], [[(M4_YY_DEF_ONLY_ARG) [[\]] |
|
M4_YY_DECL_LAST_ARG]]) |
|
- m4_define( [[YYFARGS1]], [[($2 M4_YY_DEF_LAST_ARG) |
|
- $1 $2; |
|
+ m4_define( [[YYFARGS1]], [[($2 M4_YY_DEF_LAST_ARG) [[\]] |
|
+ $1 $2; [[\]] |
|
M4_YY_DECL_LAST_ARG]]) |
|
- m4_define( [[YYFARGS2]], [[($2,$4 M4_YY_DEF_LAST_ARG) |
|
- $1 $2; |
|
- $3 $4; |
|
+ m4_define( [[YYFARGS2]], [[($2,$4 M4_YY_DEF_LAST_ARG) [[\]] |
|
+ $1 $2; [[\]] |
|
+ $3 $4; [[\]] |
|
M4_YY_DECL_LAST_ARG]]) |
|
- m4_define( [[YYFARGS3]], [[($2,$4,$6 M4_YY_DEF_LAST_ARG) |
|
- $1 $2; |
|
- $3 $4; |
|
- $5 $6; |
|
+ m4_define( [[YYFARGS3]], [[($2,$4,$6 M4_YY_DEF_LAST_ARG) [[\]] |
|
+ $1 $2; [[\]] |
|
+ $3 $4; [[\]] |
|
+ $5 $6; [[\]] |
|
M4_YY_DECL_LAST_ARG]]) |
|
]], |
|
[[ |
|
@@ -724,6 +724,7 @@ |
|
|
|
m4_ifdef( [[M4_YY_NO_UNISTD_H]],, |
|
[[ |
|
+#ifndef YY_NO_UNISTD_H |
|
/* Special case for "unistd.h", since it is non-ANSI. We include it way |
|
* down here because we want the user's section 1 to have been scanned first. |
|
* The user has a chance to override it with an option. |
|
@@ -734,6 +735,7 @@ |
|
%if-c++-only |
|
#include <unistd.h> |
|
%endif |
|
+#endif |
|
]]) |
|
|
|
#ifndef YY_EXTRA_TYPE |
|
@@ -1124,9 +1126,9 @@ |
|
m4_dnl The bison pure parser is used. Redefine yylex to |
|
m4_dnl accept the lval parameter. |
|
|
|
- m4_define( [[M4_YY_LEX_PROTO]], |
|
+ m4_define( [[M4_YY_LEX_PROTO]], [[\]] |
|
[[M4_YY_PARAMS(YYSTYPE * yylval_param M4_YY_PROTO_LAST_ARG)]]) |
|
- m4_define( [[M4_YY_LEX_DECLARATION]], |
|
+ m4_define( [[M4_YY_LEX_DECLARATION]], [[\]] |
|
[[YYFARGS1(YYSTYPE *,yylval_param)]]) |
|
]]) |
|
|
|
@@ -1134,9 +1136,9 @@ |
|
[[ |
|
m4_dnl Locations are used. yylex should also accept the ylloc parameter. |
|
|
|
- m4_define( [[M4_YY_LEX_PROTO]], |
|
+ m4_define( [[M4_YY_LEX_PROTO]], [[\]] |
|
[[M4_YY_PARAMS(YYSTYPE * yylval_param, YYLTYPE * yylloc_param M4_YY_PROTO_LAST_ARG)]]) |
|
- m4_define( [[M4_YY_LEX_DECLARATION]], |
|
+ m4_define( [[M4_YY_LEX_DECLARATION]], [[\]] |
|
[[YYFARGS2(YYSTYPE *,yylval_param, YYLTYPE *,yylloc_param)]]) |
|
]]) |
|
|
|
Index: gen.c |
|
--- gen.c.orig 2003-03-30 21:58:44.000000000 +0200 |
|
+++ gen.c 2004-02-07 13:21:59.000000000 +0100 |
|
@@ -1812,7 +1812,6 @@ |
|
if (yytext_is_array) { |
|
if (!reentrant){ |
|
indent_puts ("static int yy_more_offset = 0;"); |
|
- }else{ |
|
indent_puts ("static int yy_prev_more_offset = 0;"); |
|
} |
|
} |
|
Index: main.c |
|
--- main.c.orig 2003-04-01 03:51:38.000000000 +0200 |
|
+++ main.c 2004-02-07 13:21:59.000000000 +0100 |
|
@@ -1142,7 +1142,6 @@ |
|
break; |
|
|
|
case OPT_NO_UNISTD_H: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_UNISTD_H", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_UNISTD_H",0); |
|
break; |
|
|
|
@@ -1257,7 +1256,6 @@ |
|
break; |
|
|
|
case OPT_STACK: |
|
- //buf_strdefine (&userdef_buf, "YY_STACK_USED", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_STACK_USED",0); |
|
break; |
|
|
|
@@ -1314,87 +1312,66 @@ |
|
break; |
|
|
|
case OPT_NO_YY_PUSH_STATE: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_PUSH_STATE", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_PUSH_STATE",0); |
|
break; |
|
case OPT_NO_YY_POP_STATE: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_POP_STATE", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_POP_STATE",0); |
|
break; |
|
case OPT_NO_YY_TOP_STATE: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_TOP_STATE", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_TOP_STATE",0); |
|
break; |
|
case OPT_NO_UNPUT: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_UNPUT", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_UNPUT",0); |
|
break; |
|
case OPT_NO_YY_SCAN_BUFFER: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_SCAN_BUFFER", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_SCAN_BUFFER",0); |
|
break; |
|
case OPT_NO_YY_SCAN_BYTES: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_SCAN_BYTES", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_SCAN_BYTES",0); |
|
break; |
|
case OPT_NO_YY_SCAN_STRING: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_SCAN_STRING", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_SCAN_STRING",0); |
|
break; |
|
case OPT_NO_YYGET_EXTRA: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_GET_EXTRA", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_GET_EXTRA",0); |
|
break; |
|
case OPT_NO_YYSET_EXTRA: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_SET_EXTRA", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_SET_EXTRA",0); |
|
break; |
|
case OPT_NO_YYGET_LENG: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_GET_LENG", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_GET_LENG",0); |
|
break; |
|
case OPT_NO_YYGET_TEXT: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_GET_TEXT", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_GET_TEXT",0); |
|
break; |
|
case OPT_NO_YYGET_LINENO: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_GET_LINENO", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_GET_LINENO",0); |
|
break; |
|
case OPT_NO_YYSET_LINENO: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_SET_LINENO", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_SET_LINENO",0); |
|
break; |
|
case OPT_NO_YYGET_IN: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_GET_IN", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_GET_IN",0); |
|
break; |
|
case OPT_NO_YYSET_IN: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_SET_IN", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_SET_IN",0); |
|
break; |
|
case OPT_NO_YYGET_OUT: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_GET_OUT", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_GET_OUT",0); |
|
break; |
|
case OPT_NO_YYSET_OUT: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_SET_OUT", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_SET_OUT",0); |
|
break; |
|
case OPT_NO_YYGET_LVAL: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_GET_LVAL", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_GET_LVAL",0); |
|
break; |
|
case OPT_NO_YYSET_LVAL: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_SET_LVAL", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_SET_LVAL",0); |
|
break; |
|
case OPT_NO_YYGET_LLOC: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_GET_LLOC", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_GET_LLOC",0); |
|
break; |
|
case OPT_NO_YYSET_LLOC: |
|
- //buf_strdefine (&userdef_buf, "YY_NO_SET_LLOC", "1"); |
|
buf_m4_define( &m4defs_buf, "M4_YY_NO_SET_LLOC",0); |
|
break; |
|
|
|
@@ -1547,7 +1524,6 @@ |
|
|
|
if (reject){ |
|
out_m4_define( "M4_YY_USES_REJECT", NULL); |
|
- //outn ("\n#define YY_USES_REJECT"); |
|
} |
|
|
|
if (!do_yywrap) { |
|
@@ -1595,7 +1571,6 @@ |
|
outn ("#else"); |
|
outn (yy_stdinit); |
|
outn ("#endif"); |
|
- outn ("#endif"); |
|
} |
|
|
|
else { |
|
Index: scan.l |
|
--- scan.l.orig 2003-04-01 03:51:38.000000000 +0200 |
|
+++ scan.l 2004-02-07 13:21:59.000000000 +0100 |
|
@@ -350,7 +350,7 @@ |
|
stack ACTION_M4_IFDEF( "M4""_YY_STACK_USED", option_sense ); |
|
stdinit do_stdinit = option_sense; |
|
stdout use_stdout = option_sense; |
|
- unistd ACTION_IFDEF("YY_NO_UNISTD_H", ! option_sense); |
|
+ unistd ACTION_M4_IFDEF("M4""_YY_NO_UNISTD_H", ! option_sense); |
|
unput ACTION_M4_IFDEF("M4""_YY_NO_UNPUT", ! option_sense); |
|
verbose printstats = option_sense; |
|
warn nowarn = ! option_sense; |
|
Index: skel.c |
|
--- skel.c.orig 2003-04-01 18:33:08.000000000 +0200 |
|
+++ skel.c 2004-02-07 13:23:16.000000000 +0100 |
|
@@ -404,16 +404,16 @@ |
|
"%# yyscan_t yyscanner;", |
|
"%#", |
|
"%# Generate traditional function defs", |
|
- " m4_define( [[YYFARGS0]], [[(M4_YY_DEF_ONLY_ARG)", |
|
+ " m4_define( [[YYFARGS0]], [[(M4_YY_DEF_ONLY_ARG) [[\\]]", |
|
" M4_YY_DECL_LAST_ARG]])", |
|
- " m4_define( [[YYFARGS1]], [[($2 M4_YY_DEF_LAST_ARG)", |
|
+ " m4_define( [[YYFARGS1]], [[($2 M4_YY_DEF_LAST_ARG) [[\\]]", |
|
" $1 $2;", |
|
" M4_YY_DECL_LAST_ARG]])", |
|
- " m4_define( [[YYFARGS2]], [[($2,$4 M4_YY_DEF_LAST_ARG)", |
|
+ " m4_define( [[YYFARGS2]], [[($2,$4 M4_YY_DEF_LAST_ARG) [[\\]]", |
|
" $1 $2;", |
|
" $3 $4;", |
|
" M4_YY_DECL_LAST_ARG]])", |
|
- " m4_define( [[YYFARGS3]], [[($2,$4,$6 M4_YY_DEF_LAST_ARG)", |
|
+ " m4_define( [[YYFARGS3]], [[($2,$4,$6 M4_YY_DEF_LAST_ARG) [[\\]]", |
|
" $1 $2;", |
|
" $3 $4;", |
|
" $5 $6;", |
|
@@ -787,12 +787,14 @@ |
|
" * down here because we want the user's section 1 to have been scanned first.", |
|
" * The user has a chance to override it with an option.", |
|
" */", |
|
+ "#ifndef YY_NO_UNISTD_H", |
|
"%if-c-only", |
|
"#include <unistd.h>", |
|
"%endif", |
|
"%if-c++-only", |
|
"#include <unistd.h>", |
|
"%endif", |
|
+ "#endif", |
|
"]])", |
|
"", |
|
"#ifndef YY_EXTRA_TYPE", |
|
Index: tables.c |
|
--- tables.c.orig 2002-11-27 15:43:24.000000000 +0100 |
|
+++ tables.c 2004-02-07 13:21:59.000000000 +0100 |
|
@@ -86,7 +86,7 @@ |
|
th->th_magic = YYTBL_MAGIC; |
|
th->th_hsize = 14 + strlen (version_str) + 1 + strlen (name) + 1; |
|
th->th_hsize += yypad64 (th->th_hsize); |
|
- th->th_ssize = 0; // Not known at this point. |
|
+ th->th_ssize = 0; |
|
th->th_flags = 0; |
|
th->th_version = copy_string (version_str); |
|
th->th_name = copy_string (name); |
|
Index: scan.c |
|
--- scan.c.orig 2003-04-01 18:33:17.000000000 +0200 |
|
+++ scan.c 2004-02-08 19:25:53.000000000 +0100 |
|
@@ -1,5 +1,6 @@ |
|
+#line 2 "scan.c" |
|
|
|
-#line 3 "scan.c" |
|
+#line 4 "scan.c" |
|
|
|
#define YY_INT_ALIGNED short int |
|
|
|
@@ -1596,7 +1597,7 @@ |
|
|
|
|
|
|
|
-#line 1600 "scan.c" |
|
+#line 1601 "scan.c" |
|
|
|
#define INITIAL 0 |
|
#define SECT2 1 |
|
@@ -1623,7 +1624,9 @@ |
|
* down here because we want the user's section 1 to have been scanned first. |
|
* The user has a chance to override it with an option. |
|
*/ |
|
+#ifndef YY_NO_UNISTD_H |
|
#include <unistd.h> |
|
+#endif |
|
|
|
#ifndef YY_EXTRA_TYPE |
|
#define YY_EXTRA_TYPE void * |
|
@@ -1786,7 +1789,7 @@ |
|
Char nmdef[MAXLINE]; |
|
|
|
|
|
-#line 1790 "scan.c" |
|
+#line 1793 "scan.c" |
|
|
|
if ( (yy_init) ) |
|
{ |
|
@@ -2388,7 +2391,7 @@ |
|
case 77: |
|
YY_RULE_SETUP |
|
#line 353 "scan.l" |
|
-ACTION_IFDEF("YY_NO_UNISTD_H", ! option_sense); |
|
+ACTION_M4_IFDEF("M4""_YY_NO_UNISTD_H", ! option_sense); |
|
YY_BREAK |
|
case 78: |
|
YY_RULE_SETUP |
|
@@ -3339,7 +3342,7 @@ |
|
#line 821 "scan.l" |
|
YY_FATAL_ERROR( "flex scanner jammed" ); |
|
YY_BREAK |
|
-#line 3343 "scan.c" |
|
+#line 3346 "scan.c" |
|
case YY_STATE_EOF(INITIAL): |
|
case YY_STATE_EOF(SECT2): |
|
case YY_STATE_EOF(CODEBLOCK): |
|
Index: filter.c |
|
--- filter.c.orig 2003-03-25 17:39:08.000000000 +0100 |
|
+++ filter.c 2004-03-31 16:55:21.000000000 +0200 |
|
@@ -158,10 +158,21 @@ |
|
int r; |
|
|
|
/* setup streams again */ |
|
+#if 0 |
|
if ((stdin = fdopen (0, "r")) == NULL) |
|
flexfatal (_("fdopen(0) failed")); |
|
if ((stdout = fdopen (1, "w")) == NULL) |
|
flexfatal (_("fdopen(1) failed")); |
|
+#else |
|
+ /* the above is theoretically correct, but on some |
|
+ platforms (FreeBSD, Solaris, etc) not possible because |
|
+ stdin/stdout/stderr are read-only. Unfortunately there is no |
|
+ standardized alternative except the cheating solution: in most |
|
+ Unix stdio(3) implementations a FILE is nothing more than a C |
|
+ structure referencing a Unix filedescriptor. Hence one can just |
|
+ do nothing as long as the underlying filedescriptor was already |
|
+ changed. */ |
|
+#endif |
|
|
|
if ((r = chain->filter_func (chain)) == -1) |
|
flexfatal (_("filter_func failed")); |
|
@@ -181,8 +192,12 @@ |
|
if (dup2 (pipes[1], 1) == -1) |
|
flexfatal (_("dup2(pipes[1],1)")); |
|
close (pipes[1]); |
|
+#if 0 |
|
if ((stdout = fdopen (1, "w")) == NULL) |
|
flexfatal (_("fdopen(1) failed")); |
|
+#else |
|
+ /* do just nothing (reason: see above) */ |
|
+#endif |
|
|
|
return true; |
|
}
|
|
|