expr: '(' expr ')' = $$ = $2;
| '-' expr %prec xxuminus = $$ = addroot($1,xxuminus,$2,0);
expr: '(' expr ')' = $$ = $2;
| '-' expr %prec xxuminus = $$ = addroot($1,xxuminus,$2,0);
| '!' expr = $$ = addroot($1,'!',$2,0);
| expr '+' expr = $$ = addroot($2,'+',$1,$3);
| expr '-' expr = $$ = addroot($2,'-',$1,$3);
| '!' expr = $$ = addroot($1,'!',$2,0);
| expr '+' expr = $$ = addroot($2,'+',$1,$3);
| expr '-' expr = $$ = addroot($2,'-',$1,$3);