@@ -527,10 +527,6 @@ module MakeImpl<LocationSig Location, InputSig<Location> Lang> {
527
527
)
528
528
}
529
529
530
- private predicate sourceCallCtx ( CallContext cc ) {
531
- if hasSourceCallCtx ( ) then cc instanceof CallContextSomeCall else cc instanceof CallContextAny
532
- }
533
-
534
530
private predicate hasSinkCallCtx ( ) {
535
531
exists ( FlowFeature feature | feature = Config:: getAFeature ( ) |
536
532
feature instanceof FeatureHasSinkCallContext or
@@ -3474,6 +3470,26 @@ module MakeImpl<LocationSig Location, InputSig<Location> Lang> {
3474
3470
)
3475
3471
}
3476
3472
3473
+ private module PrunedCallContextSensitivityStage5 {
3474
+ private module CallContextSensitivityInput implements CallContextSensitivityInputSig {
3475
+ predicate relevantCallEdgeIn = Stage5:: relevantCallEdgeIn / 2 ;
3476
+
3477
+ predicate relevantCallEdgeOut = Stage5:: relevantCallEdgeOut / 2 ;
3478
+
3479
+ predicate reducedViableImplInCallContextCand =
3480
+ Stage5Param:: reducedViableImplInCallContext / 3 ;
3481
+
3482
+ predicate reducedViableImplInReturnCand = Stage5Param:: reducedViableImplInReturn / 2 ;
3483
+ }
3484
+
3485
+ import CallContextSensitivity< CallContextSensitivityInput >
3486
+ import LocalCallContext
3487
+ }
3488
+
3489
+ private predicate sourceCallCtx ( CallContext cc ) {
3490
+ if hasSourceCallCtx ( ) then cc instanceof CallContextSomeCall else cc instanceof CallContextAny
3491
+ }
3492
+
3477
3493
private newtype TPathNode =
3478
3494
TPathNodeMid (
3479
3495
NodeEx node , FlowState state , CallContext cc , SummaryCtx sc , DataFlowType t , AccessPath ap ,
@@ -4212,22 +4228,6 @@ module MakeImpl<LocationSig Location, InputSig<Location> Lang> {
4212
4228
)
4213
4229
}
4214
4230
4215
- private module PrunedCallContextSensitivityStage5 {
4216
- private module CallContextSensitivityInput implements CallContextSensitivityInputSig {
4217
- predicate relevantCallEdgeIn = Stage5:: relevantCallEdgeIn / 2 ;
4218
-
4219
- predicate relevantCallEdgeOut = Stage5:: relevantCallEdgeOut / 2 ;
4220
-
4221
- predicate reducedViableImplInCallContextCand =
4222
- Stage5Param:: reducedViableImplInCallContext / 3 ;
4223
-
4224
- predicate reducedViableImplInReturnCand = Stage5Param:: reducedViableImplInReturn / 2 ;
4225
- }
4226
-
4227
- import CallContextSensitivity< CallContextSensitivityInput >
4228
- import LocalCallContext
4229
- }
4230
-
4231
4231
pragma [ nomagic]
4232
4232
private predicate pathOutOfCallable1 (
4233
4233
PathNodeMid mid , DataFlowCall call , ReturnKindExt kind , FlowState state , CallContext cc ,
0 commit comments