Semantic analysis (compilers): Difference between revisions

Content deleted Content added
Suggested merge
Alphachimpbot (talk | contribs)
m BOT - updating merge tags to appear in Category:Merge by month
Line 1:
{{mergetoMergeto-date|September 2006|compiler}}
 
In [[computer science]], '''semantic analysis''' is a pass by a [[compiler]] that adds semantical information to the [[parse tree]] and performs certain checks based on this information. It logically follows the [[parsing]] phase, in which the parse tree is generated, and logically precedes the [[code generation]] phase, in which executable code is generated. (In a compiler implementation, it may be possible to fold different phases into one pass). Typical examples of semantical information that is added and checked is typing information ([[type checking]]) and the binding of variables and function names to their definitions ([[object binding]]). Sometimes also some early code optimization is done in this phase.