Write a Blog >>

Infer is an open-source static analyzer that is used to find bugs in code at Facebook. Every month, Infer runs on thousands of code changes and detects hundreds of bugs that are fixed by developers before they reach production. Over the years, Infer has evolved from a standalone separation logic [2, 3]- based analyzer to a powerful framework for quickly implementing modular interprocedural analyses. This framework can take a simple intraprocedural analysis that computes the summary for a single procedure and lift it to a compositional interprocedural analysis that scales to millions of lines of code. Because of compositionality, the analysis can run much more quickly on a code change than on an entire codebase, opening the way to a “move fast” form of deployment which keeps pace with the workflow of developers. Infer analyses target a common intermediate language, which allows each analyzer to be run on Java, C++, Objective-C, and C code with minimal language-specific logic. The goal of this tutorial is to explain the capabilities of this framework and encourage attendees to use Infer as a platform for their own research. Attendees will learn tips and tricks for compositional program analysis at scale and gain hands-on experience in writing new analyses using the Infer infrastructure.

Thu 22 Jun

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

09:00 - 10:00
Building your own modular static analyzer with Facebook InferPLDI Tutorials at Vertex WS219
09:00
60m
Other
Building your own modular static analyzer with Facebook Infer
PLDI Tutorials
Dino Distefano Facebook London, Peter O'Hearn Facebook, Sam Blackshear Facebook
10:30 - 12:10
Building your own modular static analyzer with Facebook Infer (cont'd)PLDI Tutorials at Vertex WS219
10:30
1h40m
Other
Building your own modular static analyzer with Facebook Infer
PLDI Tutorials
Dino Distefano Facebook London, Peter O'Hearn Facebook, Sam Blackshear Facebook