GATEverse
← GATE CSE 2001

Q17

NATMarks unknown

The syntax of the repeat-until statement is given by the following grammar S→ repeat S1 until ES \rightarrow\text{ repeat }S_1\text{ until }E where E stands for expressions, SS and S1S_1 stand for statements. The non-terminals SS and S1S_1 have an attribute code that represents generated code. The non-terminal E has two attributes. The attribute code represents generated code to evaluate the expression and store its value in a distinct variable, and the attribute varName contains the name of the variable in which the truth value is stored. The truth-value stored in the variable is 1 if E is true, 0 if E is false. Give a syntax-directed definition to generate three-address code for the repeat-until statement. Assume that you can call a function newlabel() that returns a distinct label for a statement. Use the operator '\\' to concatenate two strings and the function gen(s) to generate a line containing the string s.

Sign in to save attempts.

Loading…