Joogie: Infeasible Code Detection for Java [chapter]

Stephan Arlt, Martin Schäf
2012 Lecture Notes in Computer Science  
We present Joogie, a tool that detects infeasible code in Java programs. Infeasible code is code that does not occur on feasible control-flow paths and thus has no feasible execution. Infeasible code comprises many errors detected by static analysis in modern IDEs such as guaranteed null-pointer dereference or unreachable code. Unlike existing techniques, Joogie identifies infeasible code by proving that a particular statement cannot occur on a terminating execution using techniques from static
more » ... verification. Thus, Joogie is able to detect infeasible code which is overlooked by existing tools. Joogie works fully automatically, it does not require user-provided specifications and (almost) never produces false warnings.
doi:10.1007/978-3-642-31424-7_62 fatcat:snhuuvou2rb6nisit4rcs5vqcq