GATEverse
← GATE CSE 2026 Set 1

Q43

MSQ2 marks

Consider the following two syntax-directed definitions SDD1\text{SDD1} and SDD2\text{SDD2} for type declarations. SDD1 Grammar (G1)Semantic Rules D \rightarrow T\ V$$D.type = T.type V.type=T.typeV.type = T.type T \rightarrow \text{int}$$T.type = \text{int} T \rightarrow \text{float}$$T.type = \text{float} V \rightarrow V_1\ \text{id}$$V_1.type = V.type put(id.entry, V.type)\text{put(id.entry, V.type)} V \rightarrow \text{id}$$\text{put(id.entry, V.type)} SDD2 Grammar (G2)Semantic Rules D \rightarrow D_1\ \text{id}$$D.type = D_1.type \text{put(id.entry, D_1.type)} D \rightarrow T\ \text{id}$$D.type = T.type put(id.entry, T.type)\text{put(id.entry, T.type)} T \rightarrow \text{int}$$T.type = \text{int} T \rightarrow \text{float}$$T.type = \text{float} DD is the start symbol, and int, float and id are the three terminals. The non-terminal V1V_{1} is the same as VV and the non-terminal D1D_{1} is the same as DD. Here, the subscript is used to differentiate the grammar symbols on the two sides of a production. The function put updates the symbol table with the type information for an identifier. Let P\text{P} and Q\text{Q} be the languages specified by grammars G1\text{G1} and G2\text{G2}, respectively. Which of the following statements is/are true?

Sign in to save attempts.

Loading…