You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/language/learn-ql/beginner/find-the-thief.rst
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -293,5 +293,5 @@ What next?
293
293
----------
294
294
295
295
- Help the villagers track down another criminal in the :doc:`next tutorial <catch-the-fire-starter>`.
296
-
- Find out more about the concepts you discovered in this tutorial in the `QL language handbook<https://help.semmle.com/QL/ql-handbook/index.html>`__.
296
+
- Find out more about the concepts you discovered in this tutorial in the `QL language reference<https://help.semmle.com/QL/ql-handbook/index.html>`__.
297
297
- Explore the libraries that help you get data about code in :doc:`Learning CodeQL <../../index>`.
Copy file name to clipboardExpand all lines: docs/language/learn-ql/cpp/conversions-classes.rst
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -226,5 +226,5 @@ Further reading
226
226
- Explore other ways of querying classes using examples from the `C/C++ cookbook <https://help.semmle.com/wiki/label/CBCPP/class>`__.
227
227
- Take a look at the :doc:`Analyzing data flow in C and C++ <dataflow>` tutorial.
228
228
- Try the worked examples in the following topics: :doc:`Refining a query to account for edge cases <private-field-initialization>`, and :doc:`Detecting a potential buffer overflow <zero-space-terminator>`.
229
-
- Find out more about QL in the `QL language handbook <https://help.semmle.com/QL/ql-handbook/index.html>`__ and `QL language specification <https://help.semmle.com/QL/ql-spec/language.html>`__.
229
+
- Find out more about QL in the `QL language reference<https://help.semmle.com/QL/ql-handbook/index.html>`__.
230
230
- Learn more about the query console in `Using the query console <https://lgtm.com/help/lgtm/using-query-console>`__ on LGTM.com.
Copy file name to clipboardExpand all lines: docs/language/learn-ql/cpp/dataflow.rst
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -299,7 +299,7 @@ Further reading
299
299
---------------
300
300
301
301
- Try the worked examples in the following topics: :doc:`Refining a query to account for edge cases <private-field-initialization>` and :doc:`Detecting a potential buffer overflow <zero-space-terminator>`.
302
-
- Find out more about QL in the `QL language handbook <https://help.semmle.com/QL/ql-handbook/index.html>`__ and `QL language specification <https://help.semmle.com/QL/ql-spec/language.html>`__.
302
+
- Find out more about QL in the `QL language reference<https://help.semmle.com/QL/ql-handbook/index.html>`__.
303
303
- Learn more about the query console in `Using the query console <https://lgtm.com/help/lgtm/using-query-console>`__ on LGTM.com.
Copy file name to clipboardExpand all lines: docs/language/learn-ql/cpp/expressions-types.rst
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -134,5 +134,5 @@ Further reading
134
134
135
135
- Explore other ways of finding types and statements using examples from the C/C++ cookbook for `types <https://help.semmle.com/wiki/label/CBCPP/type>`__ and `statements <https://help.semmle.com/wiki/label/CBCPP/statement>`__.
136
136
- Take a look at the :doc:`Conversions and classes in C and C++ <conversions-classes>` and :doc:`Analyzing data flow in C and C++ <dataflow>` tutorials.
137
-
- Find out more about QL in the `QL language handbook <https://help.semmle.com/QL/ql-handbook/index.html>`__ and `QL language specification <https://help.semmle.com/QL/ql-spec/language.html>`__.
137
+
- Find out more about QL in the `QL language reference<https://help.semmle.com/QL/ql-handbook/index.html>`__.
138
138
- Learn more about the query console in `Using the query console <https://lgtm.com/help/lgtm/using-query-console>`__ on LGTM.com.
Copy file name to clipboardExpand all lines: docs/language/learn-ql/cpp/function-classes.rst
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -94,5 +94,5 @@ Further reading
94
94
95
95
- Explore other ways of finding functions using examples from the `C/C++ cookbook <https://help.semmle.com/wiki/label/CBCPP/function>`__.
96
96
- Take a look at some other tutorials: :doc:`Expressions, types and statements in C and C++ <introduce-libraries-cpp>`, :doc:`Conversions and classes in C and C++ <conversions-classes>`, and :doc:`Analyzing data flow in C and C++ <dataflow>`.
97
-
- Find out more about QL in the `QL language handbook <https://help.semmle.com/QL/ql-handbook/index.html>`__ and `QL language specification <https://help.semmle.com/QL/ql-spec/language.html>`__.
97
+
- Find out more about QL in the `QL language reference<https://help.semmle.com/QL/ql-handbook/index.html>`__.
98
98
- Learn more about the query console in `Using the query console <https://lgtm.com/help/lgtm/using-query-console>`__ on LGTM.com.
Copy file name to clipboardExpand all lines: docs/language/learn-ql/cpp/introduce-libraries-cpp.rst
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -524,5 +524,5 @@ Further reading
524
524
---------------
525
525
526
526
- Experiment with the worked examples in the CodeQL for C/C++ topics: :doc:`Functions in C and C++ <function-classes>`, :doc:`Expressions, types, and statements in C and C++ <expressions-types>`, :doc:`Conversions and classes in C and C++ <conversions-classes>`, and :doc:`Analyzing data flow in C and C++ <dataflow>`.
527
-
- Find out more about QL in the `QL language handbook <https://help.semmle.com/QL/ql-handbook/index.html>`__ and `QL language specification <https://help.semmle.com/QL/ql-spec/language.html>`__.
527
+
- Find out more about QL in the `QL language reference<https://help.semmle.com/QL/ql-handbook/index.html>`__.
528
528
- Learn more about the query console in `Using the query console <https://lgtm.com/help/lgtm/using-query-console>`__ on LGTM.com.
Copy file name to clipboardExpand all lines: docs/language/learn-ql/cpp/private-field-initialization.rst
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -102,7 +102,7 @@ You may also wish to consider methods called by constructors that assign to the
102
102
int m_value;
103
103
};
104
104
105
-
This case can be excluded by creating a recursive predicate. The recursive predicate is given a function and a field, then checks whether the function assigns to the field. The predicate runs itself on all the functions called by the function that it has been given. By passing the constructor to this predicate, we can check for assignments of a field in all functions called by the constructor, and then do the same for all functions called by those functions all the way down the tree of function calls. For more information, see `Recursion <https://help.semmle.com/QL/ql-handbook/recursion.html>`__ in the QL language handbook.
105
+
This case can be excluded by creating a recursive predicate. The recursive predicate is given a function and a field, then checks whether the function assigns to the field. The predicate runs itself on all the functions called by the function that it has been given. By passing the constructor to this predicate, we can check for assignments of a field in all functions called by the constructor, and then do the same for all functions called by those functions all the way down the tree of function calls. For more information, see `Recursion <https://help.semmle.com/QL/ql-handbook/recursion.html>`__ in the QL language reference.
106
106
107
107
.. code-block:: ql
108
108
@@ -126,7 +126,7 @@ This case can be excluded by creating a recursive predicate. The recursive predi
126
126
Refinement 4—simplifying the query
127
127
----------------------------------
128
128
129
-
Finally we can simplify the query by using the transitive closure operator. In this final version of the query, ``c.calls*(fun)`` resolves to the set of all functions that are ``c`` itself, are called by ``c``, are called by a function that is called by ``c``, and so on. This eliminates the need to make a new predicate all together. For more information, see `Transitive closures <https://help.semmle.com/QL/ql-handbook/recursion.html#transitive-closures>`__ in the QL language handbook.
129
+
Finally we can simplify the query by using the transitive closure operator. In this final version of the query, ``c.calls*(fun)`` resolves to the set of all functions that are ``c`` itself, are called by ``c``, are called by a function that is called by ``c``, and so on. This eliminates the need to make a new predicate all together. For more information, see `Transitive closures <https://help.semmle.com/QL/ql-handbook/recursion.html#transitive-closures>`__ in the QL language reference.
130
130
131
131
.. code-block:: ql
132
132
@@ -150,5 +150,5 @@ Further reading
150
150
---------------
151
151
152
152
- Take a look at another example: :doc:`Detecting a potential buffer overflow <zero-space-terminator>`.
153
-
- Find out more about QL in the `QL language handbook <https://help.semmle.com/QL/ql-handbook/index.html>`__ and `QL language specification <https://help.semmle.com/QL/ql-spec/language.html>`__.
153
+
- Find out more about QL in the `QL language reference<https://help.semmle.com/QL/ql-handbook/index.html>`__.
154
154
- Learn more about the query console in `Using the query console <https://lgtm.com/help/lgtm/using-query-console>`__ on LGTM.com.
Copy file name to clipboardExpand all lines: docs/language/learn-ql/cpp/zero-space-terminator.rst
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -224,5 +224,5 @@ The completed query will now identify cases where the result of ``strlen`` is st
224
224
Further reading
225
225
---------------
226
226
227
-
- Find out more about QL in the `QL language handbook <https://help.semmle.com/QL/ql-handbook/index.html>`__ and `QL language specification <https://help.semmle.com/QL/ql-spec/language.html>`__.
227
+
- Find out more about QL in the `QL language reference<https://help.semmle.com/QL/ql-handbook/index.html>`__.
228
228
- Learn more about the query console in `Using the query console <https://lgtm.com/help/lgtm/using-query-console>`__ on LGTM.com.
0 commit comments