File tree Expand file tree Collapse file tree 1 file changed +7
-7
lines changed
cpp/ql/src/semmle/code/cpp/ir/dataflow/internal Expand file tree Collapse file tree 1 file changed +7
-7
lines changed Original file line number Diff line number Diff line change @@ -22,13 +22,7 @@ Function viableCallable(CallInstruction call) {
2222 )
2323 or
2424 // Virtual dispatch
25- result = call .( VirtualDispatch:: DataSensitiveCall ) .resolve ( ) and
26- (
27- call .getNumberOfArguments ( ) <= result .getEffectiveNumberOfParameters ( ) and
28- call .getNumberOfArguments ( ) >= result .getEffectiveNumberOfParameters ( )
29- or
30- result .isVarargs ( )
31- )
25+ result = call .( VirtualDispatch:: DataSensitiveCall ) .resolve ( )
3226}
3327
3428/**
@@ -141,6 +135,12 @@ private module VirtualDispatch {
141135 exists ( FunctionInstruction fi |
142136 this .flowsFrom ( DataFlow:: instructionNode ( fi ) , _) and
143137 result = fi .getFunctionSymbol ( )
138+ ) and
139+ (
140+ this .getNumberOfArguments ( ) <= result .getEffectiveNumberOfParameters ( ) and
141+ this .getNumberOfArguments ( ) >= result .getEffectiveNumberOfParameters ( )
142+ or
143+ result .isVarargs ( )
144144 )
145145 }
146146 }
You can’t perform that action at this time.
0 commit comments