mirror of
https://github.com/github/codeql.git
synced 2026-02-08 19:21:07 +01:00
c6a52ed2eaed308896e37df8e8bbf5e02d01b68f
Finds a single result in
```
semmle.code.java.dataflow.internal.rangeanalysis.SignAnalysisSpecific.qll
```
which starts with
```ql
module Private {
import semmle.code.java.dataflow.RangeUtils as RU
private import semmle.code.java.dataflow.SSA as Ssa
private import semmle.code.java.controlflow.Guards as G
private import java as J
private import Sign
...
```
QL analysis support for CodeQL
Part of the May 2021 code scanning hackathon.
Under development.
Building the tools from source
Install Rust (if using VSCode, you may also want the rust-analyzer extension), then run:
cargo build --release
Generating the database schema and QL library
The generated ql/src/ql.dbscheme and ql/src/codeql_ql/ast/internal/TreeSitter.qll files are included in the repository, but they can be re-generated as follows:
./create-extractor-pack.sh
Building a CodeQL database for a QL program
First, get an extractor pack:
Run ./create-extractor-pack.sh (Linux/Mac) or .\create-extractor-pack.ps1 (Windows PowerShell) and the pack will be created in the extractor-pack directory.
Then run
codeql database create <database-path> -l ql -s <project-source-path> --search-path <extractor-pack-path>
Running qltests
Run
codeql test run <test-path> --search-path <repository-root-path>
Languages
CodeQL
32.3%
Kotlin
27.5%
C#
17.1%
Java
7.7%
Python
4.6%
Other
10.6%