From c5f83c4423163a0662e0433f445edbe69cb6cf1d Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 7 Aug 2025 14:43:48 +0100 Subject: [PATCH 1/2] Rust: Add rust/diagnostics/type-inference-consistency-counts. --- .../diagnostics/TypeInferenceConsistencyCounts.ql | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 rust/ql/src/queries/diagnostics/TypeInferenceConsistencyCounts.ql diff --git a/rust/ql/src/queries/diagnostics/TypeInferenceConsistencyCounts.ql b/rust/ql/src/queries/diagnostics/TypeInferenceConsistencyCounts.ql new file mode 100644 index 000000000000..3a98cef3b818 --- /dev/null +++ b/rust/ql/src/queries/diagnostics/TypeInferenceConsistencyCounts.ql @@ -0,0 +1,14 @@ +/** + * @name Type inference inconsistency counts + * @description Counts the number of type inference inconsistencies of each type. This query is intended for internal use. + * @kind diagnostic + * @id rust/diagnostics/type-inference-consistency-counts + */ + +private import codeql.rust.internal.TypeInferenceConsistency as Consistency + +// see also `rust/diagnostics/type-inference-consistency`, which lists the +// individual inconsistency results. +from string type, int num +where num = Consistency::getTypeInferenceInconsistencyCounts(type) +select type, num From 38f4f8d1d2a8da84df47672773dbdd16fd7c2ad9 Mon Sep 17 00:00:00 2001 From: Geoffrey White <40627776+geoffw0@users.noreply.github.com> Date: Thu, 7 Aug 2025 15:28:01 +0100 Subject: [PATCH 2/2] Rust: Update suite lists. --- .../query-suite/rust-code-scanning.qls.expected | 1 + .../query-suite/rust-security-and-quality.qls.expected | 1 + .../query-suite/rust-security-extended.qls.expected | 1 + 3 files changed, 3 insertions(+) diff --git a/rust/ql/integration-tests/query-suite/rust-code-scanning.qls.expected b/rust/ql/integration-tests/query-suite/rust-code-scanning.qls.expected index 97e1cbe67ca4..df46f5273096 100644 --- a/rust/ql/integration-tests/query-suite/rust-code-scanning.qls.expected +++ b/rust/ql/integration-tests/query-suite/rust-code-scanning.qls.expected @@ -5,6 +5,7 @@ ql/rust/ql/src/queries/diagnostics/ExtractedFiles.ql ql/rust/ql/src/queries/diagnostics/ExtractionErrors.ql ql/rust/ql/src/queries/diagnostics/ExtractionWarnings.ql ql/rust/ql/src/queries/diagnostics/SsaConsistencyCounts.ql +ql/rust/ql/src/queries/diagnostics/TypeInferenceConsistencyCounts.ql ql/rust/ql/src/queries/diagnostics/UnextractedElements.ql ql/rust/ql/src/queries/diagnostics/UnresolvedMacroCalls.ql ql/rust/ql/src/queries/security/CWE-020/RegexInjection.ql diff --git a/rust/ql/integration-tests/query-suite/rust-security-and-quality.qls.expected b/rust/ql/integration-tests/query-suite/rust-security-and-quality.qls.expected index ae90e05411f0..5a7ddf642119 100644 --- a/rust/ql/integration-tests/query-suite/rust-security-and-quality.qls.expected +++ b/rust/ql/integration-tests/query-suite/rust-security-and-quality.qls.expected @@ -5,6 +5,7 @@ ql/rust/ql/src/queries/diagnostics/ExtractedFiles.ql ql/rust/ql/src/queries/diagnostics/ExtractionErrors.ql ql/rust/ql/src/queries/diagnostics/ExtractionWarnings.ql ql/rust/ql/src/queries/diagnostics/SsaConsistencyCounts.ql +ql/rust/ql/src/queries/diagnostics/TypeInferenceConsistencyCounts.ql ql/rust/ql/src/queries/diagnostics/UnextractedElements.ql ql/rust/ql/src/queries/diagnostics/UnresolvedMacroCalls.ql ql/rust/ql/src/queries/security/CWE-020/RegexInjection.ql diff --git a/rust/ql/integration-tests/query-suite/rust-security-extended.qls.expected b/rust/ql/integration-tests/query-suite/rust-security-extended.qls.expected index 1e5167f84fba..2e34d57a5222 100644 --- a/rust/ql/integration-tests/query-suite/rust-security-extended.qls.expected +++ b/rust/ql/integration-tests/query-suite/rust-security-extended.qls.expected @@ -5,6 +5,7 @@ ql/rust/ql/src/queries/diagnostics/ExtractedFiles.ql ql/rust/ql/src/queries/diagnostics/ExtractionErrors.ql ql/rust/ql/src/queries/diagnostics/ExtractionWarnings.ql ql/rust/ql/src/queries/diagnostics/SsaConsistencyCounts.ql +ql/rust/ql/src/queries/diagnostics/TypeInferenceConsistencyCounts.ql ql/rust/ql/src/queries/diagnostics/UnextractedElements.ql ql/rust/ql/src/queries/diagnostics/UnresolvedMacroCalls.ql ql/rust/ql/src/queries/security/CWE-020/RegexInjection.ql