Checker Framework has a Dataflow Framework for Java Language. This is useful to infer more specific types in Checker Framework. This framework is not limited to Checker Framework and helps to implement other tools to analyze Java programs.
Dataflow Framework will provide a builder which creates control flow graphs from ASTs. It also provides transfer functions, analyze, abstract value and store interfaces. Checker Framework has their own data flow analyzer to infer more specific types.
Some of dataflow issues are reported which cause false negative or positive and performance problems. In this project, I'll address most of these issues to make it more accurate and faster and remove some false positives or negatives from Checker Framework.
- fix to handle correctly switch, varargs call, try-catch, finally, postfix inc or dec, and inner classes
- improve performance for many assignments in a block
- fix to handle correctly flow expression