Processid always processes an identifier entry (from the previous slide) and transforms it into whatever that identifier represents as specified in the symbol table. As a consequence, processid is ONLY called when the name should have been previously declared. Here the variable being assigned to should have been declared, so it will have an entry in the symbol table. A variable is represented in the semantic stack with an expr entry giving the address of the variable.
Next Page