--- ../yacc/skeleton.c  1993-12-22 14:28:01.000000000 +0300
+++ skeleton.c  2004-01-29 23:05:26.000000000 +0300
@@ -16,7 +16,7 @@
{
    "#ifndef lint",
    "/*static char yysccsid[] = \"from: @(#)yaccpar    1.9 (Berkeley) 02/21/93\";*/",
-    "static char yyrcsid[] = \"$Id: skeleton.c,v 1.4 1993/12/21 18:45:32 jtc Exp $\";",
+    "static char yyrcsid[] = \"$Id: skeleton.c,v 1.4 1993/12/21 18:45:32 jtc Exp $\\n 2002/10/22 VD reiser4\";",
    "#endif",
    "#define YYBYACC 1",
    "#define YYMAJOR 1",
@@ -30,6 +30,9 @@

char *tables[] =
{
+    "#if defined(YYREISER4_DEF)",
+    "#define extern static",
+    "#endif",
    "extern short yylhs[];",
    "extern short yylen[];",
    "extern short yydefred[];",
@@ -49,28 +52,45 @@

char *header[] =
{
-    "#ifdef YYSTACKSIZE",
-    "#undef YYMAXDEPTH",
-    "#define YYMAXDEPTH YYSTACKSIZE",
-    "#else",
-    "#ifdef YYMAXDEPTH",
-    "#define YYSTACKSIZE YYMAXDEPTH",
+    "#if defined(YYREISER4_DEF)",
+      "#define YYSTACKSIZE 500",
+      "#define YYMAXDEPTH 500",
+      "#define yydebug ws->ws_yydebug ",
+      "#define yynerrs ws->ws_yynerrs",
+      "#define yyerrflag ws->ws_yyerrflag",
+      "#define yychar ws->ws_yychar",
+      "#define yyssp ws->ws_yyssp",
+      "#define yyvsp ws->ws_yyvsp",
+      "#define yyval ws->ws_yyval",
+      "#define yylval ws->ws_yylval",
+      "#define yyss ws->ws_yyss",
+      "#define yyvs ws->ws_yyvs",
+      "#define yystacksize ws->ws_yystacksize",
    "#else",
-    "#define YYSTACKSIZE 500",
-    "#define YYMAXDEPTH 500",
+      "#ifdef YYSTACKSIZE",
+        "#undef YYMAXDEPTH",
+        "#define YYMAXDEPTH YYSTACKSIZE",
+      "#else",
+        "#ifdef YYMAXDEPTH",
+          "#define YYSTACKSIZE YYMAXDEPTH",
+        "#else",
+          "#define YYSTACKSIZE 500",
+          "#define YYMAXDEPTH 500",
+        "#endif",
+      "#endif",
+      "int yydebug;",
+      "int yynerrs;",
+      "int yyerrflag;",
+      "int yychar;",
+      "short *yyssp;",
+      "YYSTYPE *yyvsp;",
+      "YYSTYPE yyval;",
+      "YYSTYPE yylval;",
+      "short yyss[YYSTACKSIZE];",
+      "YYSTYPE yyvs[YYSTACKSIZE];",
+      "#define yystacksize YYSTACKSIZE",
    "#endif",
-    "#endif",
-    "int yydebug;",
-    "int yynerrs;",
-    "int yyerrflag;",
-    "int yychar;",
-    "short *yyssp;",
-    "YYSTYPE *yyvsp;",
-    "YYSTYPE yyval;",
-    "YYSTYPE yylval;",
-    "short yyss[YYSTACKSIZE];",
-    "YYSTYPE yyvs[YYSTACKSIZE];",
-    "#define yystacksize YYSTACKSIZE",
+
    0
};

@@ -82,11 +102,15 @@
    "#define YYACCEPT goto yyaccept",
    "#define YYERROR goto yyerrlab",
    "int",
+    "#if defined(YYREISER4_DEF)",
+    "yyparse(struct reiser4_syscall_w_space  * ws)",
+    "#else",
    "#if defined(__STDC__)",
    "yyparse(void)",
    "#else",
    "yyparse()",
    "#endif",
+    "#endif",
    "{",
    "    register int yym, yyn, yystate;",
    "#if YYDEBUG",
@@ -150,7 +174,11 @@
    "        goto yyreduce;",
    "    }",
    "    if (yyerrflag) goto yyinrecovery;",
+    "#if defined(YYREISER4_DEF)",
+    "    yyerror(ws,11111,yystate,yychar);",
+    "#else ",
    "    yyerror(\"syntax error\");",
+    "#endif",
    "#ifdef lint",
    "    goto yyerrlab;",
    "#endif",
@@ -275,7 +303,11 @@
    "    *++yyvsp = yyval;",
    "    goto yyloop;",
    "yyoverflow:",
+    "#if defined(YYREISER4_DEF)",
+    "    yyerror(ws,101); /*yacc stack overflow*/",
+    "#else ",
    "    yyerror(\"yacc stack overflow\");",
+    "#endif",
    "yyabort:",
    "    return (1);",
    "yyaccept:",