| # | Line 586 | Line 586 | getE4() /* E4 -> ADDOP E5 */ | |
|---|---|---|
| 586 | ep2->v.num = -ep2->v.num; | |
| 587 | return(ep2); | |
| 588 | } | |
| 589 | + | if (ep2->type == UMINUS) { /* don't generate -(-E5) */ |
| 590 | + | efree((char *)ep2); |
| 591 | + | return(ep2->v.kid); |
| 592 | + | } |
| 593 | ep1 = newnode(); | |
| 594 | ep1->type = UMINUS; | |
| 595 | addekid(ep1, ep2); | |
| – | Removed lines |
| + | Added lines |
| < | Changed lines |
| > | Changed lines |