mirror of
https://github.com/github/codeql.git
synced 2026-03-30 20:28:15 +02:00
Java: Preparatory tweaks.
This commit is contained in:
@@ -61,7 +61,7 @@ class Stmt extends StmtParent, ExprParent, @stmt {
|
||||
}
|
||||
|
||||
/** A statement parent is any element that can have a statement as its child. */
|
||||
class StmtParent extends @stmtparent, Top { }
|
||||
class StmtParent extends @stmtparent, ExprParent { }
|
||||
|
||||
/**
|
||||
* An error statement.
|
||||
|
||||
@@ -132,7 +132,7 @@ private module BaseSsaImpl {
|
||||
inner != outer and
|
||||
inner.getDeclaringType() = innerclass and
|
||||
result = parentDef(desugaredGetEnclosingType*(innerclass)) and
|
||||
result.getEnclosingStmt().getEnclosingCallable() = outer and
|
||||
result.getEnclosingCallable() = outer and
|
||||
capturedvar = TLocalVar(outer, v) and
|
||||
closurevar = TLocalVar(inner, v)
|
||||
)
|
||||
|
||||
@@ -115,7 +115,7 @@ private ControlFlowNode captureNode(TrackedVar capturedvar, TrackedVar closureva
|
||||
inner != outer and
|
||||
inner.getDeclaringType() = innerclass and
|
||||
result = parentDef(desugaredGetEnclosingType*(innerclass)) and
|
||||
result.getEnclosingStmt().getEnclosingCallable() = outer and
|
||||
result.getEnclosingCallable() = outer and
|
||||
capturedvar = TLocalVar(outer, v) and
|
||||
closurevar = TLocalVar(inner, v)
|
||||
)
|
||||
|
||||
@@ -42,7 +42,7 @@ private DataFlow::Node getGeneratingWrapperSet(Crypto::NonceArtifactNode a) {
|
||||
}
|
||||
|
||||
private predicate ancestorOfArtifact(
|
||||
Crypto::ArtifactNode a, Callable enclosingCallable, ControlFlow::Node midOrTarget
|
||||
Crypto::ArtifactNode a, Callable enclosingCallable, ControlFlowNode midOrTarget
|
||||
) {
|
||||
a.asElement().(Expr).getEnclosingCallable() = enclosingCallable and
|
||||
(
|
||||
@@ -87,7 +87,7 @@ predicate isArtifactReuse(Crypto::ArtifactNode a, Crypto::ArtifactNode b) {
|
||||
ancestorOfArtifact(b, commonParent, _)
|
||||
)
|
||||
implies
|
||||
exists(Callable commonParent, ControlFlow::Node aMid, ControlFlow::Node bMid |
|
||||
exists(Callable commonParent, ControlFlowNode aMid, ControlFlowNode bMid |
|
||||
ancestorOfArtifact(a, commonParent, aMid) and
|
||||
ancestorOfArtifact(b, commonParent, bMid) and
|
||||
a instanceof Crypto::NonceArtifactNode and
|
||||
|
||||
Reference in New Issue
Block a user