Oink - Trac
Welcome to Oink! Oink is a collaboration of C++ static analysis tools. The C/C++ front-end for Oink is Elsa by Scott McPeak. Currently the main tool provided by Oink is CQual++, a polymorphic whole-program dataflow analysis for C++. CQual++ was inspired by Jeff Foster's Cqual tool and shares the backend solver with it.
Oink aims to be
1. industrial-strength for immediate utility in finding bugs,
2. extensible for ease in adding backends, and
3. composable for ease in combining existing backends.
Oink computes both
1. expression-level and type-level dataflow, and
2. statement-level intra-procedural controlflow (by delegating to Elsa)
It easy to get started by using the two demo backends that print graphs of these flows. Oink also comes with a client of the dataflow analysis that does type qualifier inference: Cqual++, a C/C++ frontend for Cqual Whole-program analyses may be attempted using the linker imitator.