Interesting, but than the issue is how do I make > > higher than > and ?: but lower than * I think i'm going to go through severe pain. I'm going to keep this last so i can make all syntax changes at the end and break everything once.
On Wed, Apr 3, 2013 at 12:39 AM, Akim Demaille <a...@lrde.epita.fr> wrote: > > Le 3 avr. 2013 à 04:52, Adam Smalin <acidzombi...@gmail.com> a écrit : > > > It didnt seem to do anything. First i wrote > > > > | rval '<' rval > > | rval '<' '<' rval %dprec 1 > > | rval '>' rval %dprec 1 > > | rval '>' '>' rval > > > > than after not getting the results i tried adding %dprec 2 to the other > two > > lines. Then i changed one to 3s wondering if that would solve it. All in > > all it didnt seem to do anything :| is it because i already have > precedence > > rules on '<' and '>'? > > > > I than tried moving the above out of my main expression and doing > something > > similar with your sum/prod example. The problem is if i hide rval in the > > prod (pretend i'm doing addition/multiplication) I > > > > 1) have to go straight to literals which means higher precedence wont > work > > because i'm not using rval > > 2) use rval which would break everything because you cant have a rval > rval > > in the language and actually that rule would mean rval+ where + means one > > or more > > 3) rewrite all my rules to be like the prod/sum example. The expr rule > (am > > i calling it right?) is 150lines so that is going to be brutal to > rewrite. > > > > The way i been checking if this works is by looking at 1>2< <3>4 and > seeing > > if the left (and right) are both literals (vs an expression for > failure). I > > checked with << and saw it pass. Than did < < and saw it fail with > %prec, > > %dprec 1/3 (with the other having no dprec and a 2) > > > > crap. I have no idea how i can fix this without rewriting it all. > > If %left and %right seem to do things why doesnt %prec seem to do what i > > need. There must be a way? I'm just going to pretend i will have to > rewrite > > this because now after going through the above i think i need to rewrite > > those 150+ lines which is going to be difficult. > > You should post a small, self contained, example, if you'd like people > to give a try to your problem. No need for the whole set of operators, > just a few. > > For %dprec to be useful, you need to leave conflicts for the given > tokens, if you "fix" everything with %left and others, it cannot come into > action. > > _______________________________________________ help-bison@gnu.org https://lists.gnu.org/mailman/listinfo/help-bison