.. | .. |
---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-only |
---|
1 | 2 | /// If list_for_each_entry, etc complete a traversal of the list, the iterator |
---|
2 | 3 | /// variable ends up pointing to an address at an offset from the list head, |
---|
3 | 4 | /// and not a meaningful structure. Thus this value should not be used after |
---|
.. | .. |
---|
7 | 8 | //#may also cause a report to be a false positive. |
---|
8 | 9 | /// |
---|
9 | 10 | // Confidence: Moderate |
---|
10 | | -// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6. GPLv2. |
---|
11 | | -// Copyright: (C) 2012 Gilles Muller, INRIA/LIP6. GPLv2. |
---|
| 11 | +// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6. |
---|
| 12 | +// Copyright: (C) 2012 Gilles Muller, INRIA/LIP6. |
---|
12 | 13 | // URL: http://coccinelle.lip6.fr/ |
---|
13 | 14 | // Comments: |
---|
14 | 15 | // Options: --no-includes --include-headers |
---|
.. | .. |
---|
35 | 36 | iterator name hlist_for_each_entry_safe; |
---|
36 | 37 | statement S; |
---|
37 | 38 | position p1,p2; |
---|
| 39 | +type T; |
---|
38 | 40 | @@ |
---|
39 | 41 | |
---|
40 | 42 | ( |
---|
.. | .. |
---|
125 | 127 | | |
---|
126 | 128 | &c->member |
---|
127 | 129 | | |
---|
| 130 | +T c; |
---|
| 131 | +| |
---|
128 | 132 | c = E |
---|
129 | 133 | | |
---|
130 | 134 | *c@p2 |
---|