Examsnet
Unconfined exams practice
Home
Exams
Banking Entrance Exams
CUET Exam Papers
Defence Exams
Engineering Exams
Finance Entrance Exams
GATE Exam Practice
Insurance Exams
International Exams
JEE Exams
LAW Entrance Exams
MBA Entrance Exams
MCA Entrance Exams
Medical Entrance Exams
Other Entrance Exams
Police Exams
Public Service Commission (PSC)
RRB Entrance Exams
SSC Exams
State Govt Exams
Subjectwise Practice
Teacher Exams
SET Exams(State Eligibility Test)
UPSC Entrance Exams
Aptitude
Algebra and Higher Mathematics
Arithmetic
Commercial Mathematics
Data Based Mathematics
Geometry and Mensuration
Number System and Numeracy
Problem Solving
Board Exams
Andhra
Bihar
CBSE
Gujarat
Haryana
ICSE
Jammu and Kashmir
Karnataka
Kerala
Madhya Pradesh
Maharashtra
Odisha
Tamil Nadu
Telangana
Uttar Pradesh
English
Competitive English
Certifications
Technical
Cloud Tech Certifications
Security Tech Certifications
Management
IT Infrastructure
More
About
Careers
Contact Us
Our Apps
Privacy
Test Index
GATE Computer Science (CS) 2021 Shift 1 Solved Paper
Show Para
Hide Para
Share question:
© examsnet.com
Question : 36
Total: 65
Consider the following grammar (that admits a series of declarations, followed by expressions) and the associated syntax directed translation (SDT) actions, given as pseudo-code:
P → D* E*
D → int ID {record that ID.lexeme is of type int}
D → bool ID { record that ID.lexeme is of type bool}
E → E
1
+ E
2
{check that E
1
.type = E
2
.type = int; set E.type := int}
E → !E
1
{check that E
1
.type = bool; set E.type := bool}
E → ID {set E.type := int}
With respect to the above grammar; which one of the following choices is correct?
The actions will lead to infinite loop.
The actions can be used to correctly type-check any syntactically correct program.
The actions can be used to type-check syntactically correct boolean variable declarations and boolean expressions.
The actions can be used to type-check syntactically correct integer variable declarations and integer expressions.
Validate
Solution:
© examsnet.com
Go to Question:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
Prev Question
Next Question