Special Notations for Repetitive Constructs Repetition – A → A | (left recursive), and – A → A | (right recursive) where and are arbitrary strings of terminals and non-terminals, and – In the first rule does not begin with A and
Symbol table: major inherited attribute and major data structure in a compiler Principal operations: – Insert: store the information provided by name declarations when processing these declarations – Lookup: retrieve the information associated to a name when that name is used in the associated code
A stack-based environment will result in a dangling reference when the procedure is exited if a local variable in a procedure can be returned to the caller The simplest example: