File tree Expand file tree Collapse file tree 5 files changed +40
-0
lines changed
csharp/ql/lib/semmle/code/csharp/dataflow/internal
go/ql/lib/semmle/go/dataflow/internal
python/ql/lib/semmle/python/dataflow/new/internal
ruby/ql/lib/codeql/ruby/dataflow/internal
swift/ql/lib/codeql/swift/dataflow/internal Expand file tree Collapse file tree 5 files changed +40
-0
lines changed Original file line number Diff line number Diff line change @@ -505,6 +505,9 @@ module Private {
505
505
or
506
506
// Add the post-update node corresponding to the requested argument node
507
507
outputState ( c , s ) and isCallbackParameter ( s )
508
+ or
509
+ // Add the parameter node for parameter side-effects
510
+ outputState ( c , s ) and s = SummaryComponentStack:: argument ( _)
508
511
}
509
512
510
513
private newtype TSummaryNodeState =
@@ -713,6 +716,11 @@ module Private {
713
716
head = TSyntheticGlobalSummaryComponent ( sg ) and
714
717
result = getSyntheticGlobalType ( sg )
715
718
)
719
+ or
720
+ exists ( ParameterPosition pos |
721
+ head = TArgumentSummaryComponent ( pos ) and
722
+ result = getParameterType ( c , pos )
723
+ )
716
724
)
717
725
or
718
726
n = summaryNodeOutputState ( c , s ) and
Original file line number Diff line number Diff line change @@ -505,6 +505,9 @@ module Private {
505
505
or
506
506
// Add the post-update node corresponding to the requested argument node
507
507
outputState ( c , s ) and isCallbackParameter ( s )
508
+ or
509
+ // Add the parameter node for parameter side-effects
510
+ outputState ( c , s ) and s = SummaryComponentStack:: argument ( _)
508
511
}
509
512
510
513
private newtype TSummaryNodeState =
@@ -713,6 +716,11 @@ module Private {
713
716
head = TSyntheticGlobalSummaryComponent ( sg ) and
714
717
result = getSyntheticGlobalType ( sg )
715
718
)
719
+ or
720
+ exists ( ParameterPosition pos |
721
+ head = TArgumentSummaryComponent ( pos ) and
722
+ result = getParameterType ( c , pos )
723
+ )
716
724
)
717
725
or
718
726
n = summaryNodeOutputState ( c , s ) and
Original file line number Diff line number Diff line change @@ -505,6 +505,9 @@ module Private {
505
505
or
506
506
// Add the post-update node corresponding to the requested argument node
507
507
outputState ( c , s ) and isCallbackParameter ( s )
508
+ or
509
+ // Add the parameter node for parameter side-effects
510
+ outputState ( c , s ) and s = SummaryComponentStack:: argument ( _)
508
511
}
509
512
510
513
private newtype TSummaryNodeState =
@@ -713,6 +716,11 @@ module Private {
713
716
head = TSyntheticGlobalSummaryComponent ( sg ) and
714
717
result = getSyntheticGlobalType ( sg )
715
718
)
719
+ or
720
+ exists ( ParameterPosition pos |
721
+ head = TArgumentSummaryComponent ( pos ) and
722
+ result = getParameterType ( c , pos )
723
+ )
716
724
)
717
725
or
718
726
n = summaryNodeOutputState ( c , s ) and
Original file line number Diff line number Diff line change @@ -505,6 +505,9 @@ module Private {
505
505
or
506
506
// Add the post-update node corresponding to the requested argument node
507
507
outputState ( c , s ) and isCallbackParameter ( s )
508
+ or
509
+ // Add the parameter node for parameter side-effects
510
+ outputState ( c , s ) and s = SummaryComponentStack:: argument ( _)
508
511
}
509
512
510
513
private newtype TSummaryNodeState =
@@ -713,6 +716,11 @@ module Private {
713
716
head = TSyntheticGlobalSummaryComponent ( sg ) and
714
717
result = getSyntheticGlobalType ( sg )
715
718
)
719
+ or
720
+ exists ( ParameterPosition pos |
721
+ head = TArgumentSummaryComponent ( pos ) and
722
+ result = getParameterType ( c , pos )
723
+ )
716
724
)
717
725
or
718
726
n = summaryNodeOutputState ( c , s ) and
Original file line number Diff line number Diff line change @@ -505,6 +505,9 @@ module Private {
505
505
or
506
506
// Add the post-update node corresponding to the requested argument node
507
507
outputState ( c , s ) and isCallbackParameter ( s )
508
+ or
509
+ // Add the parameter node for parameter side-effects
510
+ outputState ( c , s ) and s = SummaryComponentStack:: argument ( _)
508
511
}
509
512
510
513
private newtype TSummaryNodeState =
@@ -713,6 +716,11 @@ module Private {
713
716
head = TSyntheticGlobalSummaryComponent ( sg ) and
714
717
result = getSyntheticGlobalType ( sg )
715
718
)
719
+ or
720
+ exists ( ParameterPosition pos |
721
+ head = TArgumentSummaryComponent ( pos ) and
722
+ result = getParameterType ( c , pos )
723
+ )
716
724
)
717
725
or
718
726
n = summaryNodeOutputState ( c , s ) and
You can’t perform that action at this time.
0 commit comments