mirror of
https://github.com/github/codeql.git
synced 2026-02-23 10:23:41 +01:00
Merge pull request #15853 from hvitved/dataflow/get-location
Data flow: Replace `hasLocationInfo` with `getLocation`
This commit is contained in:
@@ -8,6 +8,6 @@ import java
|
||||
module DataFlow {
|
||||
private import semmle.code.java.dataflow.internal.DataFlowImplSpecific
|
||||
private import codeql.dataflow.DataFlow
|
||||
import DataFlowMake<JavaDataFlow>
|
||||
import DataFlowMake<Location, JavaDataFlow>
|
||||
import semmle.code.java.dataflow.internal.DataFlowImpl1
|
||||
}
|
||||
|
||||
@@ -12,6 +12,6 @@ module TaintTracking {
|
||||
private import semmle.code.java.dataflow.internal.DataFlowImplSpecific
|
||||
private import semmle.code.java.dataflow.internal.TaintTrackingImplSpecific
|
||||
private import codeql.dataflow.TaintTracking
|
||||
import TaintFlowMake<JavaDataFlow, JavaTaintTracking>
|
||||
import TaintFlowMake<Location, JavaDataFlow, JavaTaintTracking>
|
||||
import semmle.code.java.dataflow.internal.tainttracking1.TaintTrackingImpl
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
private import DataFlowImplSpecific
|
||||
private import codeql.dataflow.internal.DataFlowImpl
|
||||
import MakeImpl<JavaDataFlow>
|
||||
private import semmle.code.Location
|
||||
import MakeImpl<Location, JavaDataFlow>
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
private import DataFlowImplSpecific
|
||||
private import semmle.code.Location
|
||||
private import codeql.dataflow.internal.DataFlowImplCommon
|
||||
import MakeImplCommon<JavaDataFlow>
|
||||
import MakeImplCommon<Location, JavaDataFlow>
|
||||
|
||||
@@ -8,10 +8,10 @@ private import DataFlowImplSpecific
|
||||
private import TaintTrackingImplSpecific
|
||||
private import codeql.dataflow.internal.DataFlowImplConsistency
|
||||
|
||||
private module Input implements InputSig<JavaDataFlow> {
|
||||
private module Input implements InputSig<Location, JavaDataFlow> {
|
||||
predicate argHasPostUpdateExclude(JavaDataFlow::ArgumentNode n) {
|
||||
n.getType() instanceof ImmutableType or n instanceof Public::ImplicitVarargsArray
|
||||
}
|
||||
}
|
||||
|
||||
module Consistency = MakeConsistency<JavaDataFlow, JavaTaintTracking, Input>;
|
||||
module Consistency = MakeConsistency<Location, JavaDataFlow, JavaTaintTracking, Input>;
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
* Provides Java-specific definitions for use in the data flow library.
|
||||
*/
|
||||
|
||||
private import semmle.code.Location
|
||||
private import codeql.dataflow.DataFlow
|
||||
|
||||
module Private {
|
||||
@@ -13,7 +14,7 @@ module Public {
|
||||
import DataFlowUtil
|
||||
}
|
||||
|
||||
module JavaDataFlow implements InputSig {
|
||||
module JavaDataFlow implements InputSig<Location> {
|
||||
import Private
|
||||
import Public
|
||||
|
||||
|
||||
@@ -163,7 +163,7 @@ module Public {
|
||||
* For more information, see
|
||||
* [Locations](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/).
|
||||
*/
|
||||
predicate hasLocationInfo(
|
||||
deprecated predicate hasLocationInfo(
|
||||
string filepath, int startline, int startcolumn, int endline, int endcolumn
|
||||
) {
|
||||
this.getLocation().hasLocationInfo(filepath, startline, startcolumn, endline, endcolumn)
|
||||
|
||||
@@ -26,7 +26,7 @@ private string positionToString(int pos) {
|
||||
if pos = -1 then result = "this" else result = pos.toString()
|
||||
}
|
||||
|
||||
module Input implements InputSig<DataFlowImplSpecific::JavaDataFlow> {
|
||||
module Input implements InputSig<Location, DataFlowImplSpecific::JavaDataFlow> {
|
||||
class SummarizedCallableBase = FlowSummary::SummarizedCallableBase;
|
||||
|
||||
ArgumentPosition callbackSelfParameterPosition() { result = -1 }
|
||||
@@ -85,7 +85,7 @@ module Input implements InputSig<DataFlowImplSpecific::JavaDataFlow> {
|
||||
}
|
||||
}
|
||||
|
||||
private import Make<DataFlowImplSpecific::JavaDataFlow, Input> as Impl
|
||||
private import Make<Location, DataFlowImplSpecific::JavaDataFlow, Input> as Impl
|
||||
|
||||
private module TypesInput implements Impl::Private::TypesInputSig {
|
||||
DataFlowType getSyntheticGlobalType(Impl::Private::SyntheticGlobal sg) {
|
||||
@@ -186,7 +186,7 @@ private predicate correspondingKotlinParameterDefaultsArgSpec(
|
||||
}
|
||||
|
||||
module SourceSinkInterpretationInput implements
|
||||
Impl::Private::External::SourceSinkInterpretationInputSig<Location>
|
||||
Impl::Private::External::SourceSinkInterpretationInputSig
|
||||
{
|
||||
private import java as J
|
||||
|
||||
@@ -294,7 +294,7 @@ module Private {
|
||||
|
||||
module External {
|
||||
import Impl::Private::External
|
||||
import Impl::Private::External::SourceSinkInterpretation<Location, SourceSinkInterpretationInput>
|
||||
import Impl::Private::External::SourceSinkInterpretation<SourceSinkInterpretationInput>
|
||||
|
||||
/**
|
||||
* Holds if an external flow summary exists for `c` with input specification
|
||||
|
||||
@@ -4,7 +4,8 @@
|
||||
|
||||
private import codeql.dataflow.TaintTracking
|
||||
private import DataFlowImplSpecific
|
||||
private import semmle.code.Location
|
||||
|
||||
module JavaTaintTracking implements InputSig<JavaDataFlow> {
|
||||
module JavaTaintTracking implements InputSig<Location, JavaDataFlow> {
|
||||
import TaintTrackingUtil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user