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
Mathias Vorreiter Pedersen
ba0ba15e88
C++: Add CSimpleStringT model and accept tests.
2024-12-10 18:13:42 +00:00
Mathias Vorreiter Pedersen
0f5786e4e6
Merge pull request #18251 from MathiasVP/fix-uncertain-array-writes
...
C++: Consider writes to arrays as uncertain
2024-12-10 12:38:47 +00:00
Mathias Vorreiter Pedersen
1266b244f5
Merge pull request #18136 from MathiasVP/model-active-template-library
...
C++: Model Microsoft's "Active Template Library"
2024-12-09 16:05:19 +00:00
Mathias Vorreiter Pedersen
9bcdfb6d01
C++: VariableAddressInstructions with array types are not single-object types.
2024-12-09 15:06:22 +00:00
Mathias Vorreiter Pedersen
8bdd10c0c2
C++: Fix spurious columns in 'CRegKey'.
2024-12-09 14:31:17 +00:00
Mathias Vorreiter Pedersen
5f33733b6e
C++: Fix 'QueryValue' model.
2024-12-09 14:27:24 +00:00
Mathias Vorreiter Pedersen
184dfc24b9
C++: Fix 'QueryStringValue' model.
2024-12-09 13:42:39 +00:00
Mathias Vorreiter Pedersen
7f87a25768
C++: Fix 'QueryMultiStringValue' model.
2024-12-09 13:41:14 +00:00
Mathias Vorreiter Pedersen
674dbce36d
C++: Add taint flow through 'CRegKey::Create'.
2024-12-09 13:38:37 +00:00
Mathias Vorreiter Pedersen
d3dc318ba1
C++: Make 'GetValueAt' a value-preserving step.
2024-12-09 13:26:46 +00:00
Mathias Vorreiter Pedersen
d735a1433b
C++: Also flow to the return value of 'operator='.
2024-12-09 13:24:21 +00:00
Mathias Vorreiter Pedersen
59f4b3c0db
C++: Get rid of the model for 'Create'.
2024-12-06 15:58:07 +00:00
Mathias Vorreiter Pedersen
3d0a2057f6
C++: Fix 'BSTRToArray' stub and MaD model.
2024-12-06 15:46:14 +00:00
Mathias Vorreiter Pedersen
66de42c576
C++: Fix MaD row for 'operator&' on 'CComBSTR's.
2024-12-06 15:33:29 +00:00
Mathias Vorreiter Pedersen
6388a9af95
C++: Delete duplicated MaD row.
2024-12-06 15:31:33 +00:00
Mathias Vorreiter Pedersen
f7b55e05eb
C++: 'Attach' is value-preserving.
2024-12-06 15:30:34 +00:00
Mathias Vorreiter Pedersen
904db38a5f
C++: Add missing space between type name and '&'.
2024-12-06 15:29:13 +00:00
Mathias Vorreiter Pedersen
d0bf3b84e4
C++: Add missing MaD row for move constructor.
2024-12-06 15:27:17 +00:00
Mathias Vorreiter Pedersen
c51153203b
C++: Fix two bad joins that happen in 'UnboundedWrite' on #18207 .
2024-12-06 15:10:08 +00:00
REDMOND\brodes
3619b01ace
Merge branch 'brodes/seh_flow_phase2_splitting_seh_edges' of https://github.com/microsoft/codeql into brodes/seh_flow_phase2_splitting_seh_edges
2024-12-05 10:50:17 -05:00
REDMOND\brodes
48c86979f0
Deleting unused predicate.
2024-12-05 10:50:06 -05:00
Ben Rodes
3115833847
Update cpp/ql/lib/semmle/code/cpp/ir/implementation/EdgeKind.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2024-12-05 10:49:33 -05:00