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

  •        146

A static analyzer for Java, C and Objective-C. It is a tool to detect bugs in Android and iOS apps.

http://fbinfer.com/
https://github.com/facebook/infer

Tags
Implementation
License
Platform

   




Related Projects

csslint - Automated linting of Cascading Stylesheets


CSSLint is an open source CSS code quality tool originally written by Nicholas C. Zakas and Nicole Sullivan. It was released in June 2011 at the Velocity conference.A lint tool performs static analysis of source code and flags patterns that might be errors or otherwise cause problems for the developer.

Codelyzer - Static analysis for Angular projects.


A set of tslint rules for static code analysis of Angular TypeScript projects.You can run the static code analyzer over web apps, NativeScript, Ionic, etc.

pelusa - Static analysis Lint-type tool to improve your OO Ruby code


Static analysis Lint-type tool to improve your OO Ruby code

JSHint - A Static Code Analysis Tool for JavaScript


JSHint is a community-driven tool to detect errors in JavaScript code and enforce your team's coding conventions.

ruby-lint - Moved to https://gitlab.com/yorickpeterse/ruby-lint


ruby-lint is a static code analysis tool for Ruby. It is inspired by tools such as jshint, flake8 and similar tools. ruby-lint primarily focuses on logic related errors such as the use of non existing variables instead of focusing on semantics (e.g. the amount of characters per line). The features of ruby-lint include but are not limited to the detection of unused variables, the use of undefined methods and method calls with invalid argument amounts and more. More in-depth analysis will be added over time.


SpotBugs - FindBugs' successor, A tool for static analysis to look for bugs in Java code.


SpotBugs is the spiritual successor of FindBugs, carrying on from the point where it left off with support of its community. SpotBugs is a program which uses static analysis to look for bugs in Java code.

credo - A static code analysis tool for the Elixir language with a focus on code consistency and teaching


Credo is a static code analysis tool for the Elixir language with a focus on teaching and code consistency. It implements its own style guide.

awesome-static-analysis - A curated list of static analysis tools, linters and code quality checkers for various programming languages


This is a collection of static analysis tools and code quality checkers. Pull requests are very welcome! Note: ©️ stands for proprietary software. All other tools are Open Source. To the extent possible under law, Matthias Endler has waived all copyright and related or neighboring rights to this work. Title image Designed by Freepik.

PMD - An extensible cross-language static code analyzer


PMD is a source code analyzer. It finds common programming flaws like unused variables, empty catch blocks, unnecessary object creation, and so forth. It supports Java, JavaScript, Salesforce.com Apex and Visualforce, PLSQL, Apache Velocity, XML, XSL.

PHPStan - PHP Static Analysis Tool - discover bugs in your code without running it!


PHPStan focuses on finding errors in your code without actually running it. It catches whole classes of bugs even before you write tests for the code.PHPStan moves PHP closer to compiled languages in the sense that the correctness of each line of the code can be checked before you run the actual line.

FindBugs - Static Analysis Tool for Java


FindBugs uses static analysis to look for bugs in Java code. it can analyze programs compiled for any version of Java. Eclipse and Maven plugins are available. FindBugs has been downloaded more than 700,000 times.

JSLint - The JavaScript Code Quality Tool


JSLint is a JavaScript program that looks for problems in JavaScript programs. It is a code quality tool. JSLint takes a JavaScript source and scans it. If it finds a problem, it returns a message describing the problem and an approximate location within the source. The problem is not necessarily a syntax error, although it often is. JSLint looks at some style conventions as well as structural problems. It does not prove that your program is correct.

Checkstyle - Checks Java coding standard


Checkstyle is a tool to help programmers write Java code that adheres to a coding standard. Checkstyle is highly configurable and can be made to support almost any coding standard. Checkstyle provides checks that find class design problems, duplicate code, or bug patterns like double checked locking. This tool could be integrated as Ant task.

SPDisposeCheck Static Code Analysis Ruleset for Visual Studio 2012


SPDisposeCheck Static Code Analysis Ruleset allows SharePoint 2010 developers to ensure SharePoint APIs are properly disposed using Visual Studio 2012.

mcsema - Framework for lifting x86, amd64, and aarch64 program binaries to LLVM bitcode


McSema is an executable lifter. It translates ("lifts") executable binaries from native machine code to LLVM bitcode. LLVM bitcode is an intermediate representation form of a program that was originally created for the retargetable LLVM compiler, but which is also very useful for performing program analysis methods that would not be possible to perform on an executable binary directly. McSema enables analysts to find and retroactively harden binary programs against security bugs, independently validate vendor source code, and generate application tests with high code coverage. McSema isn’t just for static analysis. The lifted LLVM bitcode can also be fuzzed with libFuzzer, an LLVM-based instrumented fuzzer that would otherwise require the target source code. The lifted bitcode can even be compiled back into a runnable program! This is a procedure known as static binary rewriting, binary translation, or binary recompilation.

CodeNarc - Static Analysis for Groovy


CodeNarc analyzes Groovy code for defects, bad practices, inconsistencies, style issues, coding standards, best practices and more. CodeNarc triggers violations based on rules which are predefined or custom rules. The static analysis report is generated in XML or HTML format. It is well integrated with the Ant Task and plugins exist for Maven, Gradle, Grails, Griffon, Sonar and Hudson.

PyChecker - finds bugs in Python


PyChecker is a tool for finding bugs in python source code. It is similar to lint. PyChecker checks for each function, class and method for possible problems. It is capable to identify import errors.

JLint - static analysis for Java


Jlint will check your Java code and find bugs, inconsistencies and synchronization problems by doing data flow analysis and building the lock graph. Jlint is extremely fast. It is easy to learn and requires no changes to the class files. Jlint has been used in an industrial environment and successfully uncovered faults with little effort.