Commit Graph

3218 Commits

Author SHA1 Message Date
Jeroen Ketema
8e660190a9 C++: Add dbscheme upgrade and downgrade script 2025-01-02 21:32:03 +01:00
Jeroen Ketema
795278d5ac C++: Add change note 2025-01-02 21:31:58 +01:00
Jeroen Ketema
cfb98acbf1 C++: Slightly tweak change note to make it more consistent with others 2025-01-02 21:29:04 +01:00
Jeroen Ketema
6bf08f550e C++: Update dbscheme stats file 2025-01-02 17:59:16 +01:00
Jeroen Ketema
84775b71c3 C++: Support arguments and instantiations of template template parameters 2025-01-02 17:59:06 +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
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
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
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
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
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
51f625b90c C++: Allow sizeof pack in sizeof_bind 2024-12-20 11:49:37 +01: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
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
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
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
Mathias Vorreiter Pedersen
5327847744 C++: No need to exclude static and global initializers now that we inline the predicates. 2024-12-16 14:02:46 +00:00
Mathias Vorreiter Pedersen
3bdfdd0573 C++: Change all the 'ensures' and (and most 'compares') predicates to be inlined to prevent explosions. Also remove the caching since this is't necessary now that the main recursion is cached. 2024-12-16 14:02:44 +00:00
Mathias Vorreiter Pedersen
404dd33498 C++: Move the main recursion into to a cached module. 2024-12-16 14:02:42 +00:00
Mathias Vorreiter Pedersen
6f73aa552d C++: Convert IRGuards to use final abstract classes. 2024-12-16 14:02:40 +00:00
Mathias Vorreiter Pedersen
20dfbdc5cc Revert "Merge pull request #18057 from jketema/codeql-cli-2.19.4"
This reverts commit ed922f6519, reversing
changes made to aa4cc72f30.
2024-12-16 14:02:38 +00:00
Jeroen Ketema
da3fcda4fc C++: Address review comments 2024-12-16 14:25:41 +01:00
Michael Nebel
aaf0cd5dee Merge pull request #17968 from michaelnebel/java/movetestutils
Move test utilities to the query pack.
2024-12-16 13:41:30 +01:00
Jeroen Ketema
d6964ff755 C++: Add word missing from change note 2024-12-13 10:48:46 +01:00
Jeroen Ketema
f9bfd969a9 C++: Address review comments 2024-12-12 16:49:24 +01:00
Michael Nebel
0bfc1b6ea8 Also move the postprocessing queries to the library pack. 2024-12-12 15:03:03 +01:00
Michael Nebel
941b0abbf6 Move modules to the library packs. 2024-12-12 15:03:01 +01:00
Jeroen Ketema
35403d4299 C++: Fix IR printing when multiple edges point to the same block 2024-12-12 13:46:45 +01:00
Jeroen Ketema
e43f7fbb48 C++: Fix AST printing for OverloadedArrayExpr 2024-12-12 13:44:24 +01:00
Mathias Vorreiter Pedersen
0acef590b1 C++: Add more MaD models. 2024-12-10 18:29:48 +00:00
Mathias Vorreiter Pedersen
c5bb907fe0 C++: Also handle varargs in MaD parsing. 2024-12-10 18:25:56 +00:00
Mathias Vorreiter Pedersen
c604c44a55 C++: Add CStringT model and accept tests. 2024-12-10 18:22:06 +00:00