diff --git a/python/ql/lib/semmle/python/dataflow/new/FlowSummary.qll b/python/ql/lib/semmle/python/dataflow/new/FlowSummary.qll index c15861ff1d0..800c9592dcc 100644 --- a/python/ql/lib/semmle/python/dataflow/new/FlowSummary.qll +++ b/python/ql/lib/semmle/python/dataflow/new/FlowSummary.qll @@ -37,45 +37,6 @@ abstract class SummarizedCallable extends LibraryCallable, Impl::Public::Summari deprecated class RequiredSummaryComponentStack = Impl::Private::RequiredSummaryComponentStack; -private module LibraryCallbackSummaries { - private predicate libraryCall(CallCfgNode call) { - not exists(NormalCall normalCall | call.getNode() = normalCall.getNode()) - } - - private DataFlow::LocalSourceNode trackLambdaCreation(TypeTracker t) { - t.start() and - lambdaCreation(result, _, _) - or - exists(TypeTracker t2 | result = trackLambdaCreation(t2).track(t2, t)) and - not result.(ParameterNode).getParameter().isSelf() - } - - private predicate libraryCallHasLambdaArg(CallCfgNode call, int i) { - exists(CfgNode arg | - arg = call.getArg(i) and - arg.getALocalSource() = trackLambdaCreation(TypeTracker::end()) and - libraryCall(call) - ) - } - - private class LibraryLambdaMethod extends SummarizedCallable { - LibraryLambdaMethod() { this = "" } - - final override CallCfgNode getACall() { libraryCallHasLambdaArg(result, _) } - - final override ArgumentNode getACallback() { none() } - - override predicate propagatesFlow(string input, string output, boolean preservesValue) { - exists(int i | - i in [0 .. 10] and - input = "Argument[" + i + "]" and - output = "Argument[" + i + "].Parameter[lambda-self]" - ) and - preservesValue = true - } - } -} - private class SummarizedCallableFromModel extends SummarizedCallable { string type; string path; diff --git a/python/ql/test/experimental/dataflow/variable-capture/test_library_calls.py b/python/ql/test/experimental/dataflow/variable-capture/test_library_calls.py index 5db25fc8348..70b07f66557 100644 --- a/python/ql/test/experimental/dataflow/variable-capture/test_library_calls.py +++ b/python/ql/test/experimental/dataflow/variable-capture/test_library_calls.py @@ -45,4 +45,4 @@ def test_library_call(): for x in map(set, [1]): pass - SINK(captured["x"]) #$ captured + SINK(captured["x"]) #$ MISSING: captured