SVF is an open-source static program analysis framework and points-to analysis library that tracks memory references, variable aliases, and data dependencies across whole programs. The platform translates compiled intermediate code formats into unified internal representations, constructing constraint graphs, call graphs, and control-flow graphs to model interprocedural execution behavior and memory state. The framework incorporates specialized engines for flow-sensitive, flow-insensitive, and context-sensitive pointer analysis alongside sparse value-flow graph generation. It features memory
Reek is a static code analyzer for Ruby projects designed to identify design flaws and maintainability issues known as code smells. It functions as a quality assurance tool that inspects source code without executing it to find structural weaknesses and architectural debt. The analyzer identifies specific patterns such as large classes, long methods, and uncommunicative naming. It also detects more complex design issues, including feature envy, data clumps, simulated polymorphism, and control coupling. The tool includes capabilities for issue baselining to manage legacy code and configuratio
go-tools is a collection of utilities for Go static analysis and memory layout optimization. It provides a toolset designed to analyze source code to detect bugs and dead code, alongside specialized tools for optimizing how structs are arranged in memory. The project includes a memory alignment visualizer to display physical memory layouts and padding, as well as a struct layout optimizer that reorders fields to minimize memory padding. Additionally, it provides a boilerplate generator to automate the creation of registration and test files required for developing custom Go analyzers. The to
Infer is a static analysis toolset for Java, C, C++, and Objective-C designed to detect memory leaks, null dereferences, and resource bugs. It functions as a multi-language bug finder that identifies race conditions, deadlocks, and memory safety issues by translating source code into a common intermediate representation for analysis. The project distinguishes itself through an inter-procedural data flow analyzer that tracks movement between sources and sinks to detect tainted flows and generate data flow graphs. It also includes a framework for verifying temporal properties and reachability u
Nilaway is a static analysis tool and linter plugin for Go designed to identify potential nil pointer dereferences in source code to prevent runtime panics. It functions as an inter-procedural pointer analyzer that tracks data flow across functions and packages to detect memory safety issues.
Las características principales de uber-go/nilaway son: Nil Pointer Detection, Inter-procedural Data Flow Analyzers, Interprocedural Pointer Analysis, Static Analysis Tools, Nil Dereference Detection, Pointer Analysis Frameworks, Go Source Code Analyzers, Static Code Analysis.
Las alternativas de código abierto para uber-go/nilaway incluyen: svf-tools/svf — SVF is an open-source static program analysis framework and points-to analysis library that tracks memory references,… troessner/reek — Reek is a static code analyzer for Ruby projects designed to identify design flaws and maintainability issues known as… facebook/infer — Infer is a static analysis toolset for Java, C, C++, and Objective-C designed to detect memory leaks, null… dominikh/go-tools — go-tools is a collection of utilities for Go static analysis and memory layout optimization. It provides a toolset… golang/tools — This project is a collection of official toolsets and server implementations designed for the parsing, formatting, and… mgechev/revive — Revive is a configurable static analysis linter and code quality tool for Go. It analyzes source code to detect common…