Static Program Analysis Jun Ma majun@nju.edu.cn
Static Program Analysis majun@nju.edu.cn Jun Ma
Static Prgram Analysis: Overview
Static Prgram Analysis: Overview
What is Static Analysis? A program that takes programs as input and produces useful results. Transformed code (assembly,instrumented code,...) Code or Binary Static Analyser Useful Results Potential bugs(bad practices,null pointers,...) Software artifacts(diagrams,architecture,...) ■Examples Compilers (and optimization passes) Static checkers (e.g.,-Wall,lint,...) Useful results for SE practices
What is Static Analysis? Code or Binary Static Analyser Useful Results Transformed code (assembly, instrumented code, ...) Potential bugs (bad practices, null pointers, ...) Software artifacts (diagrams, architecture, ...) Examples Compilers (and optimization passes) Static checkers (e.g., -Wall, lint, …) Useful results for SE practices A program that takes programs as input and produces useful results
Categories of Static Program Analysis Static Analysis Lexical Analysis Syntax Analysis Semantic Analysis
Categories of Static Program Analysis Static Analysis Lexical Analysis Syntax Analysis Semantic Analysis
Lexical Analysis Treating program as a sequence of Symbols/Tokens
Lexical Analysis Treating program as a sequence of Symbols/Tokens