mirror of
https://github.com/github/codeql.git
synced 2026-04-29 10:45:15 +02:00
Ruby: support Proc.new alongside 'proc' and 'lambda'
This commit is contained in:
@@ -1333,7 +1333,12 @@ predicate lambdaCreation(Node creation, LambdaCallKind kind, DataFlowCallable c)
|
||||
creation.asExpr() =
|
||||
any(CfgNodes::ExprNodes::MethodCallCfgNode mc |
|
||||
c.asCallable() = mc.getBlock().getExpr() and
|
||||
mc.getExpr().getMethodName() = ["lambda", "proc"]
|
||||
(
|
||||
mc.getExpr().getMethodName() = ["lambda", "proc"]
|
||||
or
|
||||
mc.getExpr().getMethodName() = "new" and
|
||||
mc.getReceiver().getExpr().(ConstantReadAccess).getAQualifiedName() = "Proc"
|
||||
)
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
failures
|
||||
testFailures
|
||||
| explicit-proc.rb:10:7:10:78 | # $ reachableFromSource=Member[Foo].Method[bar].Argument[0].Parameter[0] | Missing result:reachableFromSource=Member[Foo].Method[bar].Argument[0].Parameter[0] |
|
||||
|
||||
Reference in New Issue
Block a user