mirror of
https://github.com/github/codeql.git
synced 2026-04-30 11:15:13 +02:00
Python: FIx flow
This commit is contained in:
@@ -71,6 +71,7 @@ edges
|
||||
| test.py:0:0:0:0 | ModuleVariableNode for Global Variable SOURCE in Module test | test.py:556:31:556:36 | ControlFlowNode for SOURCE |
|
||||
| test.py:0:0:0:0 | ModuleVariableNode for Global Variable SOURCE in Module test | test.py:556:41:556:46 | ControlFlowNode for SOURCE |
|
||||
| test.py:0:0:0:0 | ModuleVariableNode for Global Variable SOURCE in Module test | test.py:584:12:584:17 | ControlFlowNode for SOURCE |
|
||||
| test.py:0:0:0:0 | ModuleVariableNode for Global Variable SOURCE in Module test | test.py:584:31:584:36 | ControlFlowNode for SOURCE |
|
||||
| test.py:0:0:0:0 | ModuleVariableNode for Global Variable SOURCE in Module test | test.py:692:16:692:21 | ControlFlowNode for SOURCE |
|
||||
| test.py:20:1:20:6 | GSSA Variable SOURCE | test.py:0:0:0:0 | ModuleVariableNode for Global Variable SOURCE in Module test |
|
||||
| test.py:20:10:20:17 | ControlFlowNode for Str | test.py:20:1:20:6 | GSSA Variable SOURCE |
|
||||
@@ -238,6 +239,7 @@ edges
|
||||
| test.py:546:18:546:23 | ControlFlowNode for SOURCE | test.py:546:10:546:34 | ControlFlowNode for Tuple [Tuple element at index 1] |
|
||||
| test.py:547:5:547:5 | SSA variable a | test.py:548:10:548:10 | ControlFlowNode for a |
|
||||
| test.py:547:5:547:12 | ControlFlowNode for Tuple [Tuple element at index 0] | test.py:547:5:547:5 | SSA variable a |
|
||||
| test.py:547:5:547:12 | ControlFlowNode for Tuple [Tuple element at index 0] | test.py:547:8:547:9 | IterableElement |
|
||||
| test.py:547:5:547:12 | ControlFlowNode for Tuple [Tuple element at index 1] | test.py:547:8:547:9 | IterableElement |
|
||||
| test.py:547:8:547:9 | IterableElement | test.py:547:8:547:9 | SSA variable b [List element] |
|
||||
| test.py:547:8:547:9 | SSA variable b [List element] | test.py:550:10:550:10 | ControlFlowNode for b [List element] |
|
||||
@@ -319,8 +321,13 @@ edges
|
||||
| test.py:584:11:584:47 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 0] | test.py:596:6:596:18 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 0] |
|
||||
| test.py:584:11:584:47 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 0] | test.py:605:5:605:19 | IterableSequence [Tuple element at index 0, Tuple element at index 0] |
|
||||
| test.py:584:11:584:47 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 0] | test.py:614:6:614:18 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 0] |
|
||||
| test.py:584:11:584:47 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 2] | test.py:596:6:596:18 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 2] |
|
||||
| test.py:584:11:584:47 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 2] | test.py:605:5:605:19 | IterableSequence [Tuple element at index 0, Tuple element at index 2] |
|
||||
| test.py:584:12:584:17 | ControlFlowNode for SOURCE | test.py:584:12:584:36 | ControlFlowNode for Tuple [Tuple element at index 0] |
|
||||
| test.py:584:12:584:17 | ControlFlowNode for SOURCE | test.py:584:31:584:36 | ControlFlowNode for SOURCE |
|
||||
| test.py:584:12:584:36 | ControlFlowNode for Tuple [Tuple element at index 0] | test.py:584:11:584:47 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 0] |
|
||||
| test.py:584:12:584:36 | ControlFlowNode for Tuple [Tuple element at index 2] | test.py:584:11:584:47 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 2] |
|
||||
| test.py:584:31:584:36 | ControlFlowNode for SOURCE | test.py:584:12:584:36 | ControlFlowNode for Tuple [Tuple element at index 2] |
|
||||
| test.py:587:5:587:19 | ControlFlowNode for List [List element, List element] | test.py:587:6:587:14 | IterableSequence [List element] |
|
||||
| test.py:587:5:587:19 | ControlFlowNode for List [List element, Tuple element at index 0] | test.py:587:6:587:14 | IterableSequence [Tuple element at index 0] |
|
||||
| test.py:587:5:587:19 | IterableElement [Tuple element at index 0] | test.py:587:5:587:19 | ControlFlowNode for List [List element, Tuple element at index 0] |
|
||||
@@ -341,17 +348,39 @@ edges
|
||||
| test.py:590:12:590:13 | ControlFlowNode for a2 [List element] | test.py:590:12:590:16 | ControlFlowNode for Subscript |
|
||||
| test.py:591:10:591:11 | ControlFlowNode for a2 [List element] | test.py:591:10:591:14 | ControlFlowNode for Subscript |
|
||||
| test.py:596:6:596:18 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 0] | test.py:596:7:596:13 | IterableSequence [Tuple element at index 0] |
|
||||
| test.py:596:6:596:18 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 2] | test.py:596:7:596:13 | IterableSequence [Tuple element at index 2] |
|
||||
| test.py:596:7:596:8 | SSA variable a1 | test.py:597:10:597:11 | ControlFlowNode for a1 |
|
||||
| test.py:596:7:596:13 | ControlFlowNode for Tuple [Tuple element at index 0] | test.py:596:6:596:18 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 0] |
|
||||
| test.py:596:7:596:13 | ControlFlowNode for Tuple [Tuple element at index 0] | test.py:596:7:596:8 | SSA variable a1 |
|
||||
| test.py:596:7:596:13 | ControlFlowNode for Tuple [Tuple element at index 0] | test.py:596:11:596:13 | IterableElement |
|
||||
| test.py:596:7:596:13 | ControlFlowNode for Tuple [Tuple element at index 2] | test.py:596:6:596:18 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 2] |
|
||||
| test.py:596:7:596:13 | ControlFlowNode for Tuple [Tuple element at index 2] | test.py:596:11:596:13 | IterableElement |
|
||||
| test.py:596:7:596:13 | IterableSequence [Tuple element at index 0] | test.py:596:7:596:13 | ControlFlowNode for Tuple [Tuple element at index 0] |
|
||||
| test.py:596:7:596:13 | IterableSequence [Tuple element at index 2] | test.py:596:7:596:13 | ControlFlowNode for Tuple [Tuple element at index 2] |
|
||||
| test.py:596:11:596:13 | IterableElement | test.py:596:11:596:13 | SSA variable a2 [List element] |
|
||||
| test.py:596:11:596:13 | SSA variable a2 [List element] | test.py:599:12:599:13 | ControlFlowNode for a2 [List element] |
|
||||
| test.py:596:11:596:13 | SSA variable a2 [List element] | test.py:600:10:600:11 | ControlFlowNode for a2 [List element] |
|
||||
| test.py:599:12:599:13 | ControlFlowNode for a2 [List element] | test.py:599:12:599:16 | ControlFlowNode for Subscript |
|
||||
| test.py:600:10:600:11 | ControlFlowNode for a2 [List element] | test.py:600:10:600:14 | ControlFlowNode for Subscript |
|
||||
| test.py:605:5:605:19 | ControlFlowNode for List [List element, Tuple element at index 0] | test.py:605:7:605:13 | IterableSequence [Tuple element at index 0] |
|
||||
| test.py:605:5:605:19 | ControlFlowNode for List [List element, Tuple element at index 2] | test.py:605:7:605:13 | IterableSequence [Tuple element at index 2] |
|
||||
| test.py:605:5:605:19 | IterableElement [Tuple element at index 0] | test.py:605:5:605:19 | ControlFlowNode for List [List element, Tuple element at index 0] |
|
||||
| test.py:605:5:605:19 | IterableElement [Tuple element at index 2] | test.py:605:5:605:19 | ControlFlowNode for List [List element, Tuple element at index 2] |
|
||||
| test.py:605:5:605:19 | IterableSequence [Tuple element at index 0, Tuple element at index 0] | test.py:605:5:605:19 | IterableElement [Tuple element at index 0] |
|
||||
| test.py:605:5:605:19 | IterableSequence [Tuple element at index 0, Tuple element at index 2] | test.py:605:5:605:19 | IterableElement [Tuple element at index 2] |
|
||||
| test.py:605:7:605:8 | SSA variable a1 | test.py:606:10:606:11 | ControlFlowNode for a1 |
|
||||
| test.py:605:7:605:13 | ControlFlowNode for Tuple [Tuple element at index 0] | test.py:605:5:605:19 | ControlFlowNode for List [List element, Tuple element at index 0] |
|
||||
| test.py:605:7:605:13 | ControlFlowNode for Tuple [Tuple element at index 0] | test.py:605:7:605:8 | SSA variable a1 |
|
||||
| test.py:605:7:605:13 | ControlFlowNode for Tuple [Tuple element at index 0] | test.py:605:11:605:13 | IterableElement |
|
||||
| test.py:605:7:605:13 | ControlFlowNode for Tuple [Tuple element at index 2] | test.py:605:5:605:19 | ControlFlowNode for List [List element, Tuple element at index 2] |
|
||||
| test.py:605:7:605:13 | ControlFlowNode for Tuple [Tuple element at index 2] | test.py:605:11:605:13 | IterableElement |
|
||||
| test.py:605:7:605:13 | IterableSequence [Tuple element at index 0] | test.py:605:7:605:13 | ControlFlowNode for Tuple [Tuple element at index 0] |
|
||||
| test.py:605:7:605:13 | IterableSequence [Tuple element at index 2] | test.py:605:7:605:13 | ControlFlowNode for Tuple [Tuple element at index 2] |
|
||||
| test.py:605:11:605:13 | IterableElement | test.py:605:11:605:13 | SSA variable a2 [List element] |
|
||||
| test.py:605:11:605:13 | SSA variable a2 [List element] | test.py:608:12:608:13 | ControlFlowNode for a2 [List element] |
|
||||
| test.py:605:11:605:13 | SSA variable a2 [List element] | test.py:609:10:609:11 | ControlFlowNode for a2 [List element] |
|
||||
| test.py:608:12:608:13 | ControlFlowNode for a2 [List element] | test.py:608:12:608:16 | ControlFlowNode for Subscript |
|
||||
| test.py:609:10:609:11 | ControlFlowNode for a2 [List element] | test.py:609:10:609:14 | ControlFlowNode for Subscript |
|
||||
| test.py:614:6:614:14 | ControlFlowNode for List [List element] | test.py:614:6:614:18 | ControlFlowNode for Tuple [Tuple element at index 0, List element] |
|
||||
| test.py:614:6:614:14 | ControlFlowNode for List [List element] | test.py:614:7:614:8 | SSA variable a1 |
|
||||
| test.py:614:6:614:14 | ControlFlowNode for List [List element] | test.py:614:11:614:13 | IterableElement |
|
||||
@@ -656,8 +685,11 @@ nodes
|
||||
| test.py:577:12:577:13 | ControlFlowNode for a2 | semmle.label | ControlFlowNode for a2 |
|
||||
| test.py:578:10:578:11 | ControlFlowNode for a3 | semmle.label | ControlFlowNode for a3 |
|
||||
| test.py:584:11:584:47 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 0] | semmle.label | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 0] |
|
||||
| test.py:584:11:584:47 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 2] | semmle.label | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 2] |
|
||||
| test.py:584:12:584:17 | ControlFlowNode for SOURCE | semmle.label | ControlFlowNode for SOURCE |
|
||||
| test.py:584:12:584:36 | ControlFlowNode for Tuple [Tuple element at index 0] | semmle.label | ControlFlowNode for Tuple [Tuple element at index 0] |
|
||||
| test.py:584:12:584:36 | ControlFlowNode for Tuple [Tuple element at index 2] | semmle.label | ControlFlowNode for Tuple [Tuple element at index 2] |
|
||||
| test.py:584:31:584:36 | ControlFlowNode for SOURCE | semmle.label | ControlFlowNode for SOURCE |
|
||||
| test.py:587:5:587:19 | ControlFlowNode for List [List element, List element] | semmle.label | ControlFlowNode for List [List element, List element] |
|
||||
| test.py:587:5:587:19 | ControlFlowNode for List [List element, Tuple element at index 0] | semmle.label | ControlFlowNode for List [List element, Tuple element at index 0] |
|
||||
| test.py:587:5:587:19 | IterableElement [Tuple element at index 0] | semmle.label | IterableElement [Tuple element at index 0] |
|
||||
@@ -676,17 +708,37 @@ nodes
|
||||
| test.py:591:10:591:11 | ControlFlowNode for a2 [List element] | semmle.label | ControlFlowNode for a2 [List element] |
|
||||
| test.py:591:10:591:14 | ControlFlowNode for Subscript | semmle.label | ControlFlowNode for Subscript |
|
||||
| test.py:596:6:596:18 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 0] | semmle.label | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 0] |
|
||||
| test.py:596:6:596:18 | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 2] | semmle.label | ControlFlowNode for Tuple [Tuple element at index 0, Tuple element at index 2] |
|
||||
| test.py:596:7:596:8 | SSA variable a1 | semmle.label | SSA variable a1 |
|
||||
| test.py:596:7:596:13 | ControlFlowNode for Tuple [Tuple element at index 0] | semmle.label | ControlFlowNode for Tuple [Tuple element at index 0] |
|
||||
| test.py:596:7:596:13 | ControlFlowNode for Tuple [Tuple element at index 2] | semmle.label | ControlFlowNode for Tuple [Tuple element at index 2] |
|
||||
| test.py:596:7:596:13 | IterableSequence [Tuple element at index 0] | semmle.label | IterableSequence [Tuple element at index 0] |
|
||||
| test.py:596:7:596:13 | IterableSequence [Tuple element at index 2] | semmle.label | IterableSequence [Tuple element at index 2] |
|
||||
| test.py:596:11:596:13 | IterableElement | semmle.label | IterableElement |
|
||||
| test.py:596:11:596:13 | SSA variable a2 [List element] | semmle.label | SSA variable a2 [List element] |
|
||||
| test.py:597:10:597:11 | ControlFlowNode for a1 | semmle.label | ControlFlowNode for a1 |
|
||||
| test.py:599:12:599:13 | ControlFlowNode for a2 [List element] | semmle.label | ControlFlowNode for a2 [List element] |
|
||||
| test.py:599:12:599:16 | ControlFlowNode for Subscript | semmle.label | ControlFlowNode for Subscript |
|
||||
| test.py:600:10:600:11 | ControlFlowNode for a2 [List element] | semmle.label | ControlFlowNode for a2 [List element] |
|
||||
| test.py:600:10:600:14 | ControlFlowNode for Subscript | semmle.label | ControlFlowNode for Subscript |
|
||||
| test.py:605:5:605:19 | ControlFlowNode for List [List element, Tuple element at index 0] | semmle.label | ControlFlowNode for List [List element, Tuple element at index 0] |
|
||||
| test.py:605:5:605:19 | ControlFlowNode for List [List element, Tuple element at index 2] | semmle.label | ControlFlowNode for List [List element, Tuple element at index 2] |
|
||||
| test.py:605:5:605:19 | IterableElement [Tuple element at index 0] | semmle.label | IterableElement [Tuple element at index 0] |
|
||||
| test.py:605:5:605:19 | IterableElement [Tuple element at index 2] | semmle.label | IterableElement [Tuple element at index 2] |
|
||||
| test.py:605:5:605:19 | IterableSequence [Tuple element at index 0, Tuple element at index 0] | semmle.label | IterableSequence [Tuple element at index 0, Tuple element at index 0] |
|
||||
| test.py:605:5:605:19 | IterableSequence [Tuple element at index 0, Tuple element at index 2] | semmle.label | IterableSequence [Tuple element at index 0, Tuple element at index 2] |
|
||||
| test.py:605:7:605:8 | SSA variable a1 | semmle.label | SSA variable a1 |
|
||||
| test.py:605:7:605:13 | ControlFlowNode for Tuple [Tuple element at index 0] | semmle.label | ControlFlowNode for Tuple [Tuple element at index 0] |
|
||||
| test.py:605:7:605:13 | ControlFlowNode for Tuple [Tuple element at index 2] | semmle.label | ControlFlowNode for Tuple [Tuple element at index 2] |
|
||||
| test.py:605:7:605:13 | IterableSequence [Tuple element at index 0] | semmle.label | IterableSequence [Tuple element at index 0] |
|
||||
| test.py:605:7:605:13 | IterableSequence [Tuple element at index 2] | semmle.label | IterableSequence [Tuple element at index 2] |
|
||||
| test.py:605:11:605:13 | IterableElement | semmle.label | IterableElement |
|
||||
| test.py:605:11:605:13 | SSA variable a2 [List element] | semmle.label | SSA variable a2 [List element] |
|
||||
| test.py:606:10:606:11 | ControlFlowNode for a1 | semmle.label | ControlFlowNode for a1 |
|
||||
| test.py:608:12:608:13 | ControlFlowNode for a2 [List element] | semmle.label | ControlFlowNode for a2 [List element] |
|
||||
| test.py:608:12:608:16 | ControlFlowNode for Subscript | semmle.label | ControlFlowNode for Subscript |
|
||||
| test.py:609:10:609:11 | ControlFlowNode for a2 [List element] | semmle.label | ControlFlowNode for a2 [List element] |
|
||||
| test.py:609:10:609:14 | ControlFlowNode for Subscript | semmle.label | ControlFlowNode for Subscript |
|
||||
| test.py:614:6:614:14 | ControlFlowNode for List [List element] | semmle.label | ControlFlowNode for List [List element] |
|
||||
| test.py:614:6:614:14 | ControlFlowNode for List [Tuple element at index 0] | semmle.label | ControlFlowNode for List [Tuple element at index 0] |
|
||||
| test.py:614:6:614:14 | IterableElement | semmle.label | IterableElement |
|
||||
@@ -859,8 +911,20 @@ nodes
|
||||
| test.py:591:10:591:14 | ControlFlowNode for Subscript | test.py:584:12:584:17 | ControlFlowNode for SOURCE | test.py:591:10:591:14 | ControlFlowNode for Subscript | Flow found |
|
||||
| test.py:597:10:597:11 | ControlFlowNode for a1 | test.py:20:10:20:17 | ControlFlowNode for Str | test.py:597:10:597:11 | ControlFlowNode for a1 | Flow found |
|
||||
| test.py:597:10:597:11 | ControlFlowNode for a1 | test.py:584:12:584:17 | ControlFlowNode for SOURCE | test.py:597:10:597:11 | ControlFlowNode for a1 | Flow found |
|
||||
| test.py:599:12:599:16 | ControlFlowNode for Subscript | test.py:20:10:20:17 | ControlFlowNode for Str | test.py:599:12:599:16 | ControlFlowNode for Subscript | Flow found |
|
||||
| test.py:599:12:599:16 | ControlFlowNode for Subscript | test.py:584:12:584:17 | ControlFlowNode for SOURCE | test.py:599:12:599:16 | ControlFlowNode for Subscript | Flow found |
|
||||
| test.py:599:12:599:16 | ControlFlowNode for Subscript | test.py:584:31:584:36 | ControlFlowNode for SOURCE | test.py:599:12:599:16 | ControlFlowNode for Subscript | Flow found |
|
||||
| test.py:600:10:600:14 | ControlFlowNode for Subscript | test.py:20:10:20:17 | ControlFlowNode for Str | test.py:600:10:600:14 | ControlFlowNode for Subscript | Flow found |
|
||||
| test.py:600:10:600:14 | ControlFlowNode for Subscript | test.py:584:12:584:17 | ControlFlowNode for SOURCE | test.py:600:10:600:14 | ControlFlowNode for Subscript | Flow found |
|
||||
| test.py:600:10:600:14 | ControlFlowNode for Subscript | test.py:584:31:584:36 | ControlFlowNode for SOURCE | test.py:600:10:600:14 | ControlFlowNode for Subscript | Flow found |
|
||||
| test.py:606:10:606:11 | ControlFlowNode for a1 | test.py:20:10:20:17 | ControlFlowNode for Str | test.py:606:10:606:11 | ControlFlowNode for a1 | Flow found |
|
||||
| test.py:606:10:606:11 | ControlFlowNode for a1 | test.py:584:12:584:17 | ControlFlowNode for SOURCE | test.py:606:10:606:11 | ControlFlowNode for a1 | Flow found |
|
||||
| test.py:608:12:608:16 | ControlFlowNode for Subscript | test.py:20:10:20:17 | ControlFlowNode for Str | test.py:608:12:608:16 | ControlFlowNode for Subscript | Flow found |
|
||||
| test.py:608:12:608:16 | ControlFlowNode for Subscript | test.py:584:12:584:17 | ControlFlowNode for SOURCE | test.py:608:12:608:16 | ControlFlowNode for Subscript | Flow found |
|
||||
| test.py:608:12:608:16 | ControlFlowNode for Subscript | test.py:584:31:584:36 | ControlFlowNode for SOURCE | test.py:608:12:608:16 | ControlFlowNode for Subscript | Flow found |
|
||||
| test.py:609:10:609:14 | ControlFlowNode for Subscript | test.py:20:10:20:17 | ControlFlowNode for Str | test.py:609:10:609:14 | ControlFlowNode for Subscript | Flow found |
|
||||
| test.py:609:10:609:14 | ControlFlowNode for Subscript | test.py:584:12:584:17 | ControlFlowNode for SOURCE | test.py:609:10:609:14 | ControlFlowNode for Subscript | Flow found |
|
||||
| test.py:609:10:609:14 | ControlFlowNode for Subscript | test.py:584:31:584:36 | ControlFlowNode for SOURCE | test.py:609:10:609:14 | ControlFlowNode for Subscript | Flow found |
|
||||
| test.py:615:10:615:11 | ControlFlowNode for a1 | test.py:20:10:20:17 | ControlFlowNode for Str | test.py:615:10:615:11 | ControlFlowNode for a1 | Flow found |
|
||||
| test.py:615:10:615:11 | ControlFlowNode for a1 | test.py:584:12:584:17 | ControlFlowNode for SOURCE | test.py:615:10:615:11 | ControlFlowNode for a1 | Flow found |
|
||||
| test.py:617:12:617:16 | ControlFlowNode for Subscript | test.py:20:10:20:17 | ControlFlowNode for Str | test.py:617:12:617:16 | ControlFlowNode for Subscript | Flow found |
|
||||
|
||||
@@ -596,8 +596,8 @@ def test_iterated_unpacking_assignment_conversion():
|
||||
((a1, *a2), *b) = tt
|
||||
SINK(a1)
|
||||
SINK_F(a2) # The list itself is not tainted
|
||||
SINK_F(a2[0])
|
||||
SINK(a2[1]) # Flow not found since `*a2` does not know to read from index 2
|
||||
SINK_F(a2[0]) # FP here due to list abstraction
|
||||
SINK(a2[1])
|
||||
SINK_F(b) # The list itself is not tainted
|
||||
SINK_F(b[0])
|
||||
|
||||
@@ -605,8 +605,8 @@ def test_iterated_unpacking_assignment_conversion():
|
||||
[(a1, *a2), *b] = tt
|
||||
SINK(a1)
|
||||
SINK_F(a2) # The list itself is not tainted
|
||||
SINK_F(a2[0])
|
||||
SINK(a2[1]) # Flow not found since `*a2` does not know to read from index 2
|
||||
SINK_F(a2[0]) # FP here due to list abstraction
|
||||
SINK(a2[1])
|
||||
SINK_F(b) # The list itself is not tainted
|
||||
SINK_F(b[0]) # Expected FP here due to list abstraction
|
||||
|
||||
|
||||
Reference in New Issue
Block a user