Skip to content

Commit 7dab89e

Browse files
committed
C++: More details about lib implementation changes
This commit mostly restores the previous note about library changes but avoids mentioning queries in the library section.
1 parent 9191190 commit 7dab89e

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

change-notes/1.24/analysis-cpp.md

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,21 @@ The following changes in version 1.24 affect C/C++ analysis in all applications.
3838
* The built-in C++20 "spaceship operator" (`<=>`) is now supported via the QL
3939
class `SpaceshipExpr`. Overloaded forms are modeled as calls to functions
4040
named `operator<=>`.
41-
* The data-flow library has been improved, which affects and improves some security queries. The improvements are:
41+
* The data-flow library (`semmle.code.cpp.dataflow.DataFlow` and
42+
`semmle.code.cpp.dataflow.TaintTracking`) has been improved, which affects
43+
and improves some security queries. The improvements are:
4244
- Track flow through functions that combine taint tracking with flow through fields.
4345
- Track flow through clone-like functions, that is, functions that read contents of a field from a
4446
parameter and stores the value in the field of a returned object.
47+
* The security pack taint tracking library
48+
(`semmle.code.cpp.security.TaintTracking`) uses a new intermediate
49+
representation. This provides a more precise analysis of flow through
50+
parameters and pointers. For new queries, however, we continue to recommend
51+
using `semmle.code.cpp.dataflow.TaintTracking`.
52+
* The global value numbering library
53+
(`semmle.code.cpp.valuenumbering.GlobalValueNumbering`) uses a new
54+
intermediate representation to provide a more precise analysis of
55+
heap-allocated memory and pointers to stack variables.
4556
* Created the `semmle.code.cpp.models.interfaces.Allocation` library to model
4657
allocation such as `new` expressions and calls to `malloc`. This in intended
4758
to replace the functionality in `semmle.code.cpp.commons.Alloc` with a more

0 commit comments

Comments
 (0)