Semantic Analysis The Semantic analysis phase of compiler connects variable definition to their uses, and checks that each expression has a correct type.If both operands of the arithmetic operators "addition" , "subtraction", and "multiplication" are of type integer then the result is of type integer.This checking called "static type checking" to distinguish it from "dynamic type checking" during execution of target program. This phase is characterized be the maintenance of symbol tables mapping identifiers to their types and locations. Semantic Analysis Example of static type checking: 1- Type checks:- A compiler should report an error if an operator is applied to an incompatible operand. 2- Flow of control checks:- Statements that cause flow of control leave construct must have some place to which to transfer the flow of control . For example, a "break" statement in 'C' Language causes control to leave the smallest enclosing while ,for ,or switch statement.Semantic Analysis Example of static type checking: 3- Uniqueness checks:- There situations in which an object must be defined exactly once.Semantic Analysis ?