1

Consider the following expression grammar. The seman-tic rules for expression calculation are stated next to each grammar production. E → number E.val = number. val | E '+' E E(1).val = E(2).val + E(3).val | E '×' E E(1).val = E(2).val × E(3).val The above grammar and the semantic rules are fed to a yacc tool (which is an LALR (1) parser generator) for parsing and evaluating arithmetic expressions. Which one of the following is true about the action of yacc for the given grammar?

Correct Answer: It detects shift-reduce conflict, and resolves the conflict in favor of a shift over a reduce action

Make the most of this question

This page focuses on one Theory of Computation and Compiler Design question from Engineering. After checking the answer, return to the topic list to practice more or run a timed set.

Theory of Computation and Compiler Design MCQ: Consider the following expression grammar. The seman-tic rules for expression calculation are stated next to each grammar production. E → number E.val = number. val | E '+' E E(1).val = E(2).val + E(3).val | E '×' E E(1).val = E(2).val × E(3).val The above grammar and the semantic rules are fed to a yacc tool (which is an LALR (1) parser generator) for parsing and evaluating arithmetic expressions. Which one of the following is true about the action of yacc for the given grammar? | Extra Education