1*4882a593SmuzhiyunUpstream-Status: Inappropriate [1] 2*4882a593Smuzhiyun 3*4882a593Smuzhiyun[1] Not the author, the patch is from: 4*4882a593Smuzhiyunhttp://vault.centos.org/5.8/os/SRPMS/rdist-6.1.5-44.src.rpm 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun--- rdist-6.1.5/src/gram.y.bison 1998-11-10 05:10:42.000000000 +0100 7*4882a593Smuzhiyun+++ rdist-6.1.5/src/gram.y 2003-06-04 16:02:19.000000000 +0200 8*4882a593Smuzhiyun@@ -90,10 +90,10 @@ 9*4882a593Smuzhiyun struct namelist *namel; 10*4882a593Smuzhiyun } 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun-%type <optval> OPTION, options 13*4882a593Smuzhiyun-%type <string> NAME, STRING 14*4882a593Smuzhiyun-%type <subcmd> INSTALL, NOTIFY, EXCEPT, PATTERN, SPECIAL, CMDSPECIAL, cmdlist, cmd 15*4882a593Smuzhiyun-%type <namel> namelist, names, opt_namelist nlist 16*4882a593Smuzhiyun+%type <optval> OPTION options 17*4882a593Smuzhiyun+%type <string> NAME STRING 18*4882a593Smuzhiyun+%type <subcmd> INSTALL NOTIFY EXCEPT PATTERN SPECIAL CMDSPECIAL cmdlist cmd 19*4882a593Smuzhiyun+%type <namel> namelist names opt_namelist nlist 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun %% 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun@@ -101,19 +101,19 @@ 24*4882a593Smuzhiyun | file command 25*4882a593Smuzhiyun ; 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun-command: NAME '=' namelist = { 28*4882a593Smuzhiyun+command: NAME '=' namelist { 29*4882a593Smuzhiyun (void) lookup($1, INSERT, $3); 30*4882a593Smuzhiyun } 31*4882a593Smuzhiyun- | namelist ARROW namelist cmdlist = { 32*4882a593Smuzhiyun+ | namelist ARROW namelist cmdlist { 33*4882a593Smuzhiyun insert((char *)NULL, $1, $3, $4); 34*4882a593Smuzhiyun } 35*4882a593Smuzhiyun- | NAME COLON namelist ARROW namelist cmdlist = { 36*4882a593Smuzhiyun+ | NAME COLON namelist ARROW namelist cmdlist { 37*4882a593Smuzhiyun insert($1, $3, $5, $6); 38*4882a593Smuzhiyun } 39*4882a593Smuzhiyun- | namelist DCOLON NAME cmdlist = { 40*4882a593Smuzhiyun+ | namelist DCOLON NAME cmdlist { 41*4882a593Smuzhiyun append((char *)NULL, $1, $3, $4); 42*4882a593Smuzhiyun } 43*4882a593Smuzhiyun- | NAME COLON namelist DCOLON NAME cmdlist = { 44*4882a593Smuzhiyun+ | NAME COLON namelist DCOLON NAME cmdlist { 45*4882a593Smuzhiyun append($1, $3, $5, $6); 46*4882a593Smuzhiyun } 47*4882a593Smuzhiyun | error 48*4882a593Smuzhiyun@@ -133,10 +133,10 @@ 49*4882a593Smuzhiyun } 50*4882a593Smuzhiyun ; 51*4882a593Smuzhiyun 52*4882a593Smuzhiyun-nlist: NAME = { 53*4882a593Smuzhiyun+nlist: NAME { 54*4882a593Smuzhiyun $$ = makenl($1); 55*4882a593Smuzhiyun } 56*4882a593Smuzhiyun- | '(' names ')' = { 57*4882a593Smuzhiyun+ | '(' names ')' { 58*4882a593Smuzhiyun $$ = $2; 59*4882a593Smuzhiyun } 60*4882a593Smuzhiyun ; 61*4882a593Smuzhiyun@@ -144,7 +144,7 @@ 62*4882a593Smuzhiyun names: /* VOID */ { 63*4882a593Smuzhiyun $$ = last_n = NULL; 64*4882a593Smuzhiyun } 65*4882a593Smuzhiyun- | names NAME = { 66*4882a593Smuzhiyun+ | names NAME { 67*4882a593Smuzhiyun if (last_n == NULL) 68*4882a593Smuzhiyun $$ = last_n = makenl($2); 69*4882a593Smuzhiyun else { 70*4882a593Smuzhiyun@@ -158,7 +158,7 @@ 71*4882a593Smuzhiyun cmdlist: /* VOID */ { 72*4882a593Smuzhiyun $$ = last_sc = NULL; 73*4882a593Smuzhiyun } 74*4882a593Smuzhiyun- | cmdlist cmd = { 75*4882a593Smuzhiyun+ | cmdlist cmd { 76*4882a593Smuzhiyun if (last_sc == NULL) 77*4882a593Smuzhiyun $$ = last_sc = $2; 78*4882a593Smuzhiyun else { 79*4882a593Smuzhiyun@@ -169,7 +169,7 @@ 80*4882a593Smuzhiyun } 81*4882a593Smuzhiyun ; 82*4882a593Smuzhiyun 83*4882a593Smuzhiyun-cmd: INSTALL options opt_namelist ';' = { 84*4882a593Smuzhiyun+cmd: INSTALL options opt_namelist ';' { 85*4882a593Smuzhiyun register struct namelist *nl; 86*4882a593Smuzhiyun 87*4882a593Smuzhiyun $1->sc_options = $2 | options; 88*4882a593Smuzhiyun@@ -185,17 +185,17 @@ 89*4882a593Smuzhiyun } 90*4882a593Smuzhiyun $$ = $1; 91*4882a593Smuzhiyun } 92*4882a593Smuzhiyun- | NOTIFY namelist ';' = { 93*4882a593Smuzhiyun+ | NOTIFY namelist ';' { 94*4882a593Smuzhiyun if ($2 != NULL) 95*4882a593Smuzhiyun $1->sc_args = expand($2, E_VARS); 96*4882a593Smuzhiyun $$ = $1; 97*4882a593Smuzhiyun } 98*4882a593Smuzhiyun- | EXCEPT namelist ';' = { 99*4882a593Smuzhiyun+ | EXCEPT namelist ';' { 100*4882a593Smuzhiyun if ($2 != NULL) 101*4882a593Smuzhiyun $1->sc_args = expand($2, E_ALL); 102*4882a593Smuzhiyun $$ = $1; 103*4882a593Smuzhiyun } 104*4882a593Smuzhiyun- | PATTERN namelist ';' = { 105*4882a593Smuzhiyun+ | PATTERN namelist ';' { 106*4882a593Smuzhiyun struct namelist *nl; 107*4882a593Smuzhiyun char *cp, *re_comp(); 108*4882a593Smuzhiyun 109*4882a593Smuzhiyun@@ -205,13 +205,13 @@ 110*4882a593Smuzhiyun $1->sc_args = expand($2, E_VARS); 111*4882a593Smuzhiyun $$ = $1; 112*4882a593Smuzhiyun } 113*4882a593Smuzhiyun- | SPECIAL opt_namelist STRING ';' = { 114*4882a593Smuzhiyun+ | SPECIAL opt_namelist STRING ';' { 115*4882a593Smuzhiyun if ($2 != NULL) 116*4882a593Smuzhiyun $1->sc_args = expand($2, E_ALL); 117*4882a593Smuzhiyun $1->sc_name = $3; 118*4882a593Smuzhiyun $$ = $1; 119*4882a593Smuzhiyun } 120*4882a593Smuzhiyun- | CMDSPECIAL opt_namelist STRING ';' = { 121*4882a593Smuzhiyun+ | CMDSPECIAL opt_namelist STRING ';' { 122*4882a593Smuzhiyun if ($2 != NULL) 123*4882a593Smuzhiyun $1->sc_args = expand($2, E_ALL); 124*4882a593Smuzhiyun $1->sc_name = $3; 125*4882a593Smuzhiyun@@ -219,18 +219,18 @@ 126*4882a593Smuzhiyun } 127*4882a593Smuzhiyun ; 128*4882a593Smuzhiyun 129*4882a593Smuzhiyun-options: /* VOID */ = { 130*4882a593Smuzhiyun+options: /* VOID */ { 131*4882a593Smuzhiyun $$ = 0; 132*4882a593Smuzhiyun } 133*4882a593Smuzhiyun- | options OPTION = { 134*4882a593Smuzhiyun+ | options OPTION { 135*4882a593Smuzhiyun $$ |= $2; 136*4882a593Smuzhiyun } 137*4882a593Smuzhiyun ; 138*4882a593Smuzhiyun 139*4882a593Smuzhiyun-opt_namelist: /* VOID */ = { 140*4882a593Smuzhiyun+opt_namelist: /* VOID */ { 141*4882a593Smuzhiyun $$ = NULL; 142*4882a593Smuzhiyun } 143*4882a593Smuzhiyun- | namelist = { 144*4882a593Smuzhiyun+ | namelist { 145*4882a593Smuzhiyun $$ = $1; 146*4882a593Smuzhiyun } 147*4882a593Smuzhiyun ; 148