Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion rust/ql/consistency-queries/TypeInferenceConsistency.ql
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,4 @@
* @id rust/diagnostics/type-inference-consistency
*/

import codeql.rust.internal.TypeInferenceConsistency
import codeql.rust.internal.typeinference.TypeInferenceConsistency
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ private import codeql.rust.internal.PathResolution
private import codeql.rust.controlflow.ControlFlowGraph
private import codeql.rust.dataflow.Ssa
private import codeql.rust.dataflow.FlowSummary
private import codeql.rust.internal.TypeInference as TypeInference
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
private import codeql.rust.internal.typeinference.DerefChain
private import Node
private import Content
Expand Down
4 changes: 2 additions & 2 deletions rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll
Original file line number Diff line number Diff line change
Expand Up @@ -205,8 +205,8 @@ private module Debug {
private import Private
private import Content
private import codeql.rust.dataflow.internal.DataFlowImpl
private import codeql.rust.internal.TypeMention
private import codeql.rust.internal.Type
private import codeql.rust.internal.typeinference.TypeMention
private import codeql.rust.internal.typeinference.Type

private predicate relevantManualModel(SummarizedCallableImpl sc, string can) {
exists(Provenance manual |
Expand Down
2 changes: 1 addition & 1 deletion rust/ql/lib/codeql/rust/dataflow/internal/Node.qll
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ private import codeql.rust.controlflow.ControlFlowGraph
private import codeql.rust.controlflow.CfgNodes
private import codeql.rust.dataflow.Ssa
private import codeql.rust.dataflow.FlowSummary
private import codeql.rust.internal.TypeInference as TypeInference
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
private import codeql.rust.internal.typeinference.DerefChain
private import Node as Node
private import DataFlowImpl
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ private import Node as Node
private import Content
private import FlowSummaryImpl as FlowSummaryImpl
private import codeql.rust.internal.CachedStages
private import codeql.rust.internal.TypeInference as TypeInference
private import codeql.rust.internal.Type as Type
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
private import codeql.rust.internal.typeinference.Type as Type
private import codeql.rust.frameworks.stdlib.Builtins as Builtins

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ module Impl {
private import codeql.rust.elements.internal.InvocationExprImpl::Impl as InvocationExprImpl
private import codeql.rust.elements.internal.CallImpl::Impl as CallImpl
private import codeql.rust.internal.PathResolution as PathResolution
private import codeql.rust.internal.TypeInference as TypeInference
private import codeql.rust.internal.typeinference.TypeInference as TypeInference

pragma[nomagic]
Path getFunctionPath(CallExpr ce) { result = ce.getFunction().(PathExpr).getPath() }
Expand Down
2 changes: 1 addition & 1 deletion rust/ql/lib/codeql/rust/elements/internal/CallImpl.qll
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
private import rust

module Impl {
private import codeql.rust.internal.TypeInference as TypeInference
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
private import codeql.rust.elements.internal.ExprImpl::Impl as ExprImpl
private import codeql.rust.elements.internal.InvocationExprImpl::Impl as InvocationExprImpl

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ private import codeql.rust.elements.internal.generated.FieldExpr
*/
module Impl {
private import rust
private import codeql.rust.internal.TypeInference as TypeInference
private import codeql.rust.internal.typeinference.TypeInference as TypeInference

// the following QLdoc is generated: if you need to edit it, do it in the schema file
/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
private import rust

module Impl {
private import codeql.rust.internal.TypeInference as TypeInference
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
private import codeql.rust.elements.internal.ExprImpl::Impl as ExprImpl

private newtype TArgumentPosition =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
private import rust
private import codeql.rust.Concepts
private import codeql.rust.dataflow.DataFlow
private import codeql.rust.internal.TypeInference
private import codeql.rust.internal.Type
private import codeql.rust.internal.typeinference.TypeInference
private import codeql.rust.internal.typeinference.Type

bindingset[algorithmName]
private string simplifyAlgorithmName(string algorithmName) {
Expand Down
4 changes: 2 additions & 2 deletions rust/ql/lib/codeql/rust/internal/CachedStages.qll
Original file line number Diff line number Diff line change
Expand Up @@ -128,8 +128,8 @@ module Stages {
*/
cached
module TypeInferenceStage {
private import codeql.rust.internal.Type
private import codeql.rust.internal.TypeInference
private import codeql.rust.internal.typeinference.Type
private import codeql.rust.internal.typeinference.TypeInference

/**
* Always holds.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@

private import rust
private import codeql.rust.internal.PathResolution
private import codeql.rust.internal.Type
private import codeql.rust.internal.TypeMention
private import codeql.rust.internal.TypeInference
private import Type
private import TypeMention
private import TypeInference

/**
* Holds if `traitBound` is the first non-trivial trait bound of `tp`.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

private import rust
private import codeql.rust.internal.PathResolution
private import codeql.rust.internal.Type
private import codeql.rust.internal.TypeInference
private import codeql.rust.internal.TypeMention
private import Type
private import TypeInference
private import TypeMention
private import codeql.rust.frameworks.stdlib.Stdlib
private import codeql.rust.frameworks.stdlib.Builtins as Builtins
private import codeql.util.UnboundList as UnboundListImpl
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@

private import rust
private import codeql.rust.internal.PathResolution
private import codeql.rust.internal.Type
private import codeql.rust.internal.TypeMention
private import codeql.rust.internal.TypeInference
private import Type
private import TypeMention
private import TypeInference
private import FunctionType

pragma[nomagic]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
private import rust
private import codeql.rust.internal.TypeInference
private import codeql.rust.internal.PathResolution
private import codeql.rust.internal.Type
private import codeql.rust.internal.TypeMention
private import TypeInference
private import Type
private import TypeMention

private newtype TFunctionPosition =
TArgumentFunctionPosition(ArgumentPosition pos) or
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/** Provides classes representing types without type arguments. */

private import rust
private import PathResolution
private import codeql.rust.internal.PathResolution
private import TypeMention
private import codeql.rust.internal.CachedStages
private import codeql.rust.elements.internal.generated.Raw
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@
private import codeql.util.Boolean
private import codeql.util.Option
private import rust
private import PathResolution
private import codeql.rust.internal.PathResolution
private import Type
private import Type as T
private import TypeMention
private import typeinference.DerefChain
private import typeinference.FunctionType
private import typeinference.FunctionOverloading as FunctionOverloading
private import typeinference.BlanketImplementation as BlanketImplementation
private import codeql.rust.internal.typeinference.DerefChain
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
private import codeql.rust.internal.typeinference.DerefChain
private import DerefChain

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unfortunately that results in an error:

reference to 'DerefChain' references a local library, not the named module

It somehow seems that since there's a module named DerefChain the import path can't also be DerefChain.

private import FunctionType
private import FunctionOverloading as FunctionOverloading
private import BlanketImplementation as BlanketImplementation
private import codeql.rust.elements.internal.VariableImpl::Impl as VariableImpl
private import codeql.rust.internal.CachedStages
private import codeql.typeinference.internal.TypeInference
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
/** Provides classes for representing type mentions, used in type inference. */

private import rust
private import codeql.rust.internal.PathResolution
private import codeql.rust.frameworks.stdlib.Stdlib
private import Type
private import PathResolution
private import TypeInference

/** An AST node that may mention a type. */
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@
import rust
private import codeql.rust.dataflow.DataFlow
private import codeql.rust.security.AccessInvalidPointerExtensions
private import codeql.rust.internal.Type
private import codeql.rust.internal.TypeInference as TypeInference
private import codeql.rust.internal.typeinference.Type
private import codeql.rust.internal.typeinference.TypeInference as TypeInference

/**
* Provides default sources, sinks and barriers for detecting accesses to a
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ private import codeql.rust.dataflow.FlowSink
private import codeql.rust.Concepts
private import codeql.rust.dataflow.internal.Node
private import codeql.rust.security.Barriers as Barriers
private import codeql.rust.internal.TypeInference as TypeInference
private import codeql.rust.internal.Type
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
private import codeql.rust.internal.typeinference.Type

/**
* Provides default sources, sinks and barriers for detecting accesses to
Expand Down
4 changes: 2 additions & 2 deletions rust/ql/lib/codeql/rust/security/Barriers.qll
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@

import rust
private import codeql.rust.dataflow.DataFlow
private import codeql.rust.internal.TypeInference as TypeInference
private import codeql.rust.internal.Type
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
private import codeql.rust.internal.typeinference.Type
private import codeql.rust.controlflow.ControlFlowGraph as Cfg
private import codeql.rust.controlflow.CfgNodes as CfgNodes
private import codeql.rust.frameworks.stdlib.Builtins as Builtins
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

private import rust
private import codeql.rust.internal.PathResolution
private import codeql.rust.internal.TypeInference
private import codeql.rust.internal.typeinference.TypeInference
private import utils.test.InlineExpectationsTest

private module ResolveTest implements TestSig {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
* @id rust/diagnostics/type-inference-consistency-counts
*/

private import codeql.rust.internal.TypeInferenceConsistency as Consistency
private import codeql.rust.internal.typeinference.TypeInferenceConsistency as Consistency

// see also `rust/diagnostics/type-inference-consistency`, which lists the
// individual inconsistency results.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
*/

import rust
import codeql.rust.internal.TypeInference
import codeql.rust.internal.typeinference.TypeInference

from int atLimit
where
Expand Down
2 changes: 1 addition & 1 deletion rust/ql/src/queries/summary/Stats.qll
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ private import codeql.rust.dataflow.internal.DataFlowImpl
private import codeql.rust.dataflow.internal.TaintTrackingImpl
private import codeql.rust.internal.AstConsistency as AstConsistency
private import codeql.rust.internal.PathResolutionConsistency as PathResolutionConsistency
private import codeql.rust.internal.TypeInferenceConsistency as TypeInferenceConsistency
private import codeql.rust.internal.typeinference.TypeInferenceConsistency as TypeInferenceConsistency
private import codeql.rust.controlflow.internal.CfgConsistency as CfgConsistency
private import codeql.rust.dataflow.internal.DataFlowConsistency as DataFlowConsistency
private import codeql.rust.dataflow.internal.SsaImpl::Consistency as SsaConsistency
Expand Down
4 changes: 2 additions & 2 deletions rust/ql/src/queries/telemetry/DatabaseQuality.qll
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
import rust
import codeql.util.ReportStats
import codeql.rust.elements.internal.CallExprImpl::Impl as CallExprImpl
import codeql.rust.internal.TypeInference as TypeInference
import codeql.rust.internal.Type
import codeql.rust.internal.typeinference.TypeInference as TypeInference
import codeql.rust.internal.typeinference.Type

/**
* A file that is included in the quality statistics.
Expand Down
4 changes: 2 additions & 2 deletions rust/ql/test/library-tests/type-inference/type-inference.ql
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import rust
import utils.test.InlineExpectationsTest
import codeql.rust.internal.Type
import codeql.rust.internal.TypeInference as TypeInference
import codeql.rust.internal.typeinference.Type
import codeql.rust.internal.typeinference.TypeInference as TypeInference
import TypeInference

private predicate relevantNode(AstNode n) {
Expand Down