Rule: Semantic Action:
1: S ® i
= Ek { generate(‘=’, Ek .loc, , i.loc)}
2: Ei ® Ej + Ek {
generate(‘+’, Ej .loc, Ek .loc, Ei .loc)}
3: Ei ® Ej * Ek {
generate(‘*’, Ej .loc, Ek .loc, Ei .loc)}
4: Ei ® (Ej) { generate(‘=’, Ej .loc, , Ei .loc)}
5: Ei ®
i {
generate(‘=’, i.loc, , Ei .loc)}
3
E4
*
(‘*’, E2.loc,E3.loc,E4.loc)
2
E5
+
(‘+’, E1.loc,E4.loc,E5.loc)