洩れはタイガースフアンだ!
というのはおいといてw

bisonとも限らないのですが、単項の負を処理するときに、

%left NEG
...
| '-' exp %prec NEG {...}

とよく書きますけど、厳密には %left でなくて %right じゃないでしょうか?
たとえば、---5というのは、普通-(-(-5))だと思うんですが...

どこかおかしいですか???