@@ -1626,8 +1626,12 @@ private module MkStage<StageSig PrevStage> {
16261626 )
16271627 or
16281628 // flow into a callable
1629- revFlowInNotToReturn ( node , state , returnAp , ap , config ) and
1630- returnCtx = TReturnCtxNone ( )
1629+ exists ( ParamNodeEx p , boolean allowsFieldFlow |
1630+ revFlow ( p , state , TReturnCtxNone ( ) , returnAp , ap , config ) and
1631+ flowIntoCall ( _, node , p , allowsFieldFlow , config ) and
1632+ ( if allowsFieldFlow = false then ap instanceof ApNil else any ( ) ) and
1633+ returnCtx = TReturnCtxNone ( )
1634+ )
16311635 or
16321636 // flow through a callable
16331637 exists ( DataFlowCall call , ReturnKindExt returnKind0 , Ap returnAp0 |
@@ -1683,17 +1687,6 @@ private module MkStage<StageSig PrevStage> {
16831687 )
16841688 }
16851689
1686- pragma [ nomagic]
1687- private predicate revFlowInNotToReturn (
1688- ArgNodeEx arg , FlowState state , ApOption returnAp , Ap ap , Configuration config
1689- ) {
1690- exists ( ParamNodeEx p , boolean allowsFieldFlow |
1691- revFlow ( p , state , TReturnCtxNone ( ) , returnAp , ap , config ) and
1692- flowIntoCall ( _, arg , p , allowsFieldFlow , config ) and
1693- if allowsFieldFlow = false then ap instanceof ApNil else any ( )
1694- )
1695- }
1696-
16971690 pragma [ nomagic]
16981691 private predicate revFlowInToReturn (
16991692 DataFlowCall call , ArgNodeEx arg , FlowState state , ReturnKindExt kind , Ap returnAp , Ap ap ,
0 commit comments