1d3d143
diff -urp byacc-20070509/skeleton.c byacc-20070509-pm/skeleton.c
1d3d143
--- byacc-20070509/skeleton.c	2005-05-05 01:39:36.000000000 +0200
1d3d143
+++ byacc-20070509-pm/skeleton.c	2008-07-14 13:03:36.000000000 +0200
1d3d143
@@ -21,6 +21,7 @@ char *banner[] =
b12d530
     "#endif",
1d3d143
     "",
b12d530
     "#include <stdlib.h>",
b12d530
+    "#include <string.h>",
1d3d143
     "",
b12d530
     "#define YYBYACC 1",
1d3d143
     CONCAT1("#define YYMAJOR ", YYMAJOR),
1d3d143
@@ -275,7 +276,10 @@ char *body[] =
b12d530
     "                YYPREFIX, yystate, yyn, yyrule[yyn]);",
b12d530
     "#endif",
b12d530
     "    yym = yylen[yyn];",
b12d530
-    "    yyval = yyvsp[1-yym];",
b12d530
+    "    if (yym)",
b12d530
+    "        yyval = yyvsp[1-yym];",
b12d530
+    "    else",
b12d530
+    "        memset(&yyval, 0, sizeof yyval);",
b12d530
     "    switch (yyn)",
b12d530
     "    {",
b12d530
     0
1d3d143
Only in byacc-20070509-pm/: skeleton.c~