Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit cf35fd4

Browse files
committed
C++: Improve ExternalFlow.qll doc.
1 parent cdafb26 commit cf35fd4

1 file changed

Lines changed: 8 additions & 9 deletions

File tree

cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,7 @@
2525
* types can be short names or fully qualified names (mixing these two options
2626
* is not allowed within a single signature).
2727
* 6. The `ext` column specifies additional API-graph-like edges. Currently
28-
* there are only two valid values: "" and "Annotated". The empty string has no
29-
* effect. "Annotated" applies if `name` and `signature` were left blank and
30-
* acts by selecting an element that is annotated by the annotation type
31-
* selected by the first 4 columns. This can be another member such as a field
32-
* or method, or a parameter.
28+
* there is only one valid value: "".
3329
* 7. The `input` column specifies how data enters the element selected by the
3430
* first 6 columns, and the `output` column specifies how data leaves the
3531
* element selected by the first 6 columns. An `input` can be either:
@@ -43,13 +39,15 @@
4339
* - `n1..n2` syntax can be used to indicate a range of arguments, inclusive
4440
* at both ends. One or more "*" can be added in front of the range to
4541
* indicate indirection on all arguments in the range, for example `*n1..n2`.
42+
* - "Argument" can be specified without any "[]". In this case, any argument
43+
* is accepted.
4644
* - "ReturnValue": Selects a value being returned by the selected element.
4745
* One or more "*" can be added as an argument to indicate indirection, for
4846
* example, "ReturnValue[*]" indicates the first indirection of the return
4947
* value.
5048
*
5149
* An `output` can be either:
52-
* - "": Selects a read of a selected field, or a selected parameter.
50+
* - "": Selects a read of a selected field.
5351
* - "Argument[n]": Selects the post-update value of an argument in a call to
5452
* the selected element. That is, the value of the argument after the call
5553
* returns. The arguments are zero-indexed, and `-1` specifies the qualifier
@@ -60,10 +58,11 @@
6058
* - `n1..n2` syntax can be used to indicate a range of arguments, inclusive
6159
* at both ends. One or more "*" can be added in front of the range to
6260
* indicate indirection on all arguments in the range, for example `*n1..n2`.
63-
* - "Parameter": Selects the value of a parameter of the selected element.
61+
* - "Argument" can be specified without any "[]". In this case, any argument
62+
* is accepted.
63+
* - "Parameter[n]": Selects the value of a parameter of the selected element.
6464
* The syntax is the same as for "Argument", for example "Parameter[0]",
65-
* "Parameter[*0]", "Parameter[0..2]" etc. "Parameter" is also allowed in
66-
* case the selected element is already a parameter itself.
65+
* "Parameter[*0]", "Parameter[0..2]" etc.
6766
* - "ReturnValue": Selects a value being returned by the selected element.
6867
* One or more "*" can be added as an argument to indicate indirection, for
6968
* example, "ReturnValue[*]" indicates the first indirection of the return

0 commit comments

Comments
 (0)