facebook/infer

A static analyzer for Java, C, C++, and Objective-C

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 21 minutes ago
Added to GitGenius on September 3rd, 2026
Created on January 26th, 2015
Open Issues & Pull Requests: 204 (+0)
GitHub issues: Enabled
Number of forks: 2,100
Total Stargazers: 15,705 (+1)
Total Subscribers: 587 (+0)

Repository Insights (GitGenius)

Most active contributors

Sign in to see contributor activity.

Related repositories by overlapping contributors

No overlapping-contributor repos identified yet.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 187
New in 7 days: 5
Closed in 7 days: 1
Avg open age: 1,509 days
Stale 30+ days: 175
Stale 90+ days: 37

Recent activity

Opened in 7 days: 4
Closed in 7 days: 1
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • stale (190)
  • question (61)
  • false-positive (52)
  • java (45)
  • false-negative (23)
  • c (18)
  • pinned (9)
  • pulse (7)

Most active issues this week

Detailed Description

Infer is a static analyzer for Java, C, C++, and Objective-C that detects bugs and performance issues without executing code.

The tool works by building an abstract model of program behavior and reasoning about possible execution paths to identify defects. It focuses on finding null pointer dereferences, memory leaks, data races, and other critical issues that can cause crashes or undefined behavior. Rather than relying on pattern matching or heuristics, Infer uses formal analysis techniques to prove when certain errors cannot occur or to demonstrate when they might.

Infer suits teams working on codebases where memory safety and correctness are priorities, particularly those maintaining large C, C++, or Objective-C projects where manual code review alone cannot catch all defects. It integrates into continuous integration pipelines to catch issues before they reach production. Java developers benefit from its ability to detect null pointer exceptions and resource leaks. The tool is designed for projects where the cost of bugs is high and where developers want automated verification beyond what conventional linters provide.

The project maintains steady development activity with regular updates addressing new analysis capabilities and improvements to existing checkers. The codebase receives ongoing refinement to reduce false positives and expand detection coverage. The tool continues to be actively maintained with fixes and enhancements applied consistently. Development focuses on practical improvements to analysis accuracy and usability in real-world development environments.