Commit Graph

12799 Commits

Author SHA1 Message Date
Jeroen Ketema
84775b71c3 C++: Support arguments and instantiations of template template parameters 2025-01-02 17:59:06 +01:00
Mathias Vorreiter Pedersen
682dd42caa C++: Accept test changes. 2025-01-02 16:10:19 +01:00
Mathias Vorreiter Pedersen
3d3feb6354 C++: Also resolve typedefs when parsing MaD model parameter names. 2025-01-02 16:06:46 +01:00
Mathias Vorreiter Pedersen
5ccc12cea1 C++: Add a testcase that demonstrates the problem with MaD and typedefs. 2025-01-02 16:06:45 +01:00
Mathias Vorreiter Pedersen
f23e56bdca Merge pull request #18261 from MathiasVP/add-more-atl-string-models
C++: Add more MaD models for ATL string classes
2025-01-02 15:06:04 +00:00
Mathias Vorreiter Pedersen
cda007bae7 C++: Fix constructor model. 2025-01-02 15:39:31 +01:00
Mathias Vorreiter Pedersen
289b938b4d C++: Fix testcase. 2025-01-02 15:37:39 +01:00
Mathias Vorreiter Pedersen
d8cfa711ad C++: Fix testcase for conversion operator. 2025-01-02 15:35:21 +01:00
Mathias Vorreiter Pedersen
c1b997b2cb C++: Make the string constructors value-preserving. 2025-01-02 15:25:23 +01:00
Mathias Vorreiter Pedersen
b8e54627f4 C++: Make some of the string models taint instead of value-preserving. 2025-01-02 15:22:42 +01:00
Mathias Vorreiter Pedersen
052b6f6ec4 C++: Accept test changes. 2025-01-02 15:22:10 +01:00
Mathias Vorreiter Pedersen
71ca9412b0 Update cpp/ql/lib/ext/CSimpleStringT.model.yml
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com>
2025-01-02 14:16:31 +00:00
Mathias Vorreiter Pedersen
e7773770fa C++: Fix missing return value flow out of 'operator=' in lots of MaD models. 2024-12-23 12:00:41 +01:00
Jeroen Ketema
b60c86077d Merge pull request #18353 from jketema/template-parameters-2
C++: Handle `sizeof...` for types and template template parameters
2024-12-20 19:15:50 +01:00
Jeroen Ketema
659ec66b5e Merge pull request #18350 from jketema/test-cleanup-2
C++: Simplify more `semmle-extractor-options`
2024-12-20 17:23:54 +01:00
Jeroen Ketema
e9b9dc23f8 Update cpp/ql/lib/change-notes/2024-12-20-sizeof-pack.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2024-12-20 17:11:38 +01:00
Jeroen Ketema
46e9d0aa0c Merge pull request #18334 from jketema/template-parameters-1
C++: Update test after extractor changes
2024-12-20 17:08:31 +01:00
Jeroen Ketema
46b230ae92 C++: Simplify more semmle-extractor-options
This will allow us to drop a number of special cases from the
extractor.
2024-12-20 16:01:19 +01:00
Jeroen Ketema
6ecaf20cdd C++: Update expected test results 2024-12-20 13:53:35 +01:00
Jeroen Ketema
ecf3c53eba C++: Introduce SizeofPackOperator subclasses for expressions and types
Note that template template parameters are considered types in this context.
2024-12-20 13:51:45 +01:00
Jeroen Ketema
90d8fb1a05 Merge pull request #18335 from jketema/test-cleanup
C++: Simplify some semmle-extractor-options in tests
2024-12-20 13:43:59 +01:00
Calum Grant
d5571c5f68 Merge pull request #18309 from github/calumgrant/bmn/return-stack-allocated-memory
C++: Fix FPs to cpp/return-stack-allocated-memory
2024-12-20 10:54:24 +00:00
Jeroen Ketema
51f625b90c C++: Allow sizeof pack in sizeof_bind 2024-12-20 11:49:37 +01:00
Jeroen Ketema
757d5d6e6d C++: Remove duplicate word from change note 2024-12-20 11:18:26 +01:00
Calum Grant
3193fe856a C++: Update comments 2024-12-20 09:11:58 +00:00
Jeroen Ketema
6f9968d2c2 C++: Update test after extractor changes 2024-12-20 08:27:39 +01:00
Jeroen Ketema
6200a1d5b9 C++: Simplify some semmle-extractor-options in tests 2024-12-19 21:46:33 +01:00
Calum Grant
7abe7003dc Update cpp/ql/test/query-tests/Likely Bugs/Memory Management/ReturnStackAllocatedMemory/test.cpp
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com>
2024-12-19 16:01:05 +00:00
Jeroen Ketema
84b60d2676 Merge pull request #18320 from jketema/template-parameters
C++: Support non-type template parameters
2024-12-19 16:21:49 +01:00
Calum Grant
e067ac92a7 C++: Address review comments 2024-12-19 14:27:13 +00:00
Jeroen Ketema
2209ee6747 C++: Update stats file 2024-12-18 20:53:34 +01:00
Jeroen Ketema
87f12ac801 C++: Add NonTypeTemplateParameter class 2024-12-18 17:37:15 +01:00
Jeroen Ketema
a99c9b58bb C++: Add upgrade and downgrade scripts for non-type template parameters 2024-12-18 17:01:51 +01:00
Jeroen Ketema
8b626266c4 C++: Support non-type template parameters in the database scheme 2024-12-18 16:53:06 +01:00
Calum Grant
fabacebd4b C++: Change note 2024-12-18 14:37:43 +00:00
Mathias Vorreiter Pedersen
927d359cfa Merge pull request #18310 from MathiasVP/fix-recursion-through-forex-in-sign-analysis
C++: Fix `forex` recursion in sign analysis
2024-12-18 12:19:33 +00:00
Mathias Vorreiter Pedersen
4ffe70dd3b C++: Respond to review comments. 2024-12-18 11:26:41 +00:00
Jeroen Ketema
66b2b5df8d Merge pull request #18308 from jketema/template-parameters
C++: Introduce a new base class for template parameters
2024-12-18 10:38:03 +01:00
Jeroen Ketema
ccd3681f83 C++: Expand QLDoc of TemplateParameterBase 2024-12-18 09:45:51 +01:00
Mathias Vorreiter Pedersen
0b2b341283 C++: Work around suboptimal codegen for recursive 'forex'. 2024-12-17 23:58:57 +00:00
Jeroen Ketema
b7d1da8741 C++: Introduce a new base class for template parameters
This will enable us to support non-type template parameters, which we
currently do not support, and error template parameters, which might
become relevant in the `build-mode: none` context.
2024-12-17 20:25:41 +01:00
Mathias Vorreiter Pedersen
2cc6ffbd28 C++: Fix ql-for-ql findings. 2024-12-17 16:55:52 +00:00
Calum Grant
14cef6a207 C++: Fix FPs to cpp/return-stack-allocated-memory 2024-12-17 15:58:39 +00:00
Mathias Vorreiter Pedersen
5ed0222b1a C++: Sync identical files. 2024-12-17 15:28:04 +00:00
Mathias Vorreiter Pedersen
f351558547 C++: While here, let's avoid materializing 'ensuresEq' and 'ensuresLt' when computing unreachable nodes in dataflow. 2024-12-17 15:27:54 +00:00
Mathias Vorreiter Pedersen
9b6f39c1fe C++: Apply similar join order fixes to the other cases. 2024-12-17 15:26:49 +00:00
Mathias Vorreiter Pedersen
eea7804b62 C++: Join with value number only after joining with 'controls'. 2024-12-17 15:25:16 +00:00
Jeroen Ketema
fa5cc90167 Merge pull request #18281 from jketema/changenote
C++: Add word missing from change note
2024-12-16 20:23:47 +01:00
Mathias Vorreiter Pedersen
913357b70d C++: Fix incorrect QLDoc. 2024-12-16 14:02:50 +00:00
Mathias Vorreiter Pedersen
5a90b25c45 C++: Remove the released change note and add a new change note. 2024-12-16 14:02:48 +00:00