File tree Expand file tree Collapse file tree 1 file changed +6
-4
lines changed
cpp/ql/src/semmle/code/cpp/ir/dataflow/internal Expand file tree Collapse file tree 1 file changed +6
-4
lines changed Original file line number Diff line number Diff line change @@ -355,14 +355,16 @@ private class ArrayToPointerConvertInstruction extends ConvertInstruction {
355355 }
356356}
357357
358- private Instruction skipOneCopyValueInstruction ( Instruction instr ) {
359- not instr instanceof CopyValueInstruction and result = instr
358+ private Instruction skipOneCopyValueInstructionRec ( CopyValueInstruction copy ) {
359+ copy . getUnary ( ) = result and not result instanceof CopyValueInstruction
360360 or
361- result = instr . ( CopyValueInstruction ) .getUnary ( )
361+ result = skipOneCopyValueInstructionRec ( copy .getUnary ( ) )
362362}
363363
364364private Instruction skipCopyValueInstructions ( Instruction instr ) {
365- result = skipOneCopyValueInstruction * ( instr ) and not result instanceof CopyValueInstruction
365+ not result instanceof CopyValueInstruction and result = instr
366+ or
367+ result = skipOneCopyValueInstructionRec ( instr )
366368}
367369
368370private predicate arrayReadStep ( Node node1 , ArrayContent a , Node node2 ) {
You can’t perform that action at this time.
0 commit comments