Mathias Vorreiter Pedersen
|
ca53a8e787
|
C++: Update QLDoc.
|
2025-09-30 14:15:55 +01:00 |
|
Mathias Vorreiter Pedersen
|
1b2bd30a29
|
Update cpp/ql/lib/semmle/code/cpp/controlflow/IRGuards.qll
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com>
|
2025-09-30 14:14:19 +01:00 |
|
Mathias Vorreiter Pedersen
|
c1c1f60241
|
C++: Delete incorrect comment and add a bunch of barrier guard tests.
|
2025-09-25 12:56:46 +01:00 |
|
Mathias Vorreiter Pedersen
|
04ce4057e1
|
C++: Add more comments to describe the constant expression hack.
|
2025-09-25 12:43:57 +01:00 |
|
Mathias Vorreiter Pedersen
|
5b5c1de05b
|
C++: Fix fan-out.
|
2025-09-25 12:33:44 +01:00 |
|
Mathias Vorreiter Pedersen
|
b169ccf29a
|
C++: Fully delete TRange.
|
2025-09-25 08:30:42 +01:00 |
|
Mathias Vorreiter Pedersen
|
a07d03f49b
|
C++: Use the 'StoreInstruction' instead of the 'ReturnValueInstruction' when detecting return expressions.
|
2025-09-24 20:09:35 +01:00 |
|
Mathias Vorreiter Pedersen
|
d15e388f5c
|
C++: Get rid of the case range constant value with and instead implement 'rangeGuard'.
|
2025-09-24 15:52:10 +01:00 |
|
Mathias Vorreiter Pedersen
|
d10d5fd05e
|
C++: Rename in the name of consistency.
|
2025-09-24 15:34:03 +01:00 |
|
Mathias Vorreiter Pedersen
|
99e1a07b8e
|
C++: Add a comment to the 'ConditionalBranchInstruction' case in 'additionalImpliesStep.
|
2025-09-24 10:58:47 +01:00 |
|
Mathias Vorreiter Pedersen
|
2b47ac83e8
|
C++: Remove superfluous inference logic.
|
2025-09-24 10:51:45 +01:00 |
|
Mathias Vorreiter Pedersen
|
b3cbdb5c1a
|
C++: Add QLDoc to TRange.
|
2025-09-24 10:39:27 +01:00 |
|
Mathias Vorreiter Pedersen
|
e22d6656fe
|
C++: Fix barrier guards.
|
2025-09-18 12:16:25 +01:00 |
|
Mathias Vorreiter Pedersen
|
d8f34dba17
|
C++: Do not use the deprecated predicate in queries.
|
2025-09-18 12:16:23 +01:00 |
|
Mathias Vorreiter Pedersen
|
9ed8b75c5d
|
C++: Add a few helper predicates on 'Definition' which the guards library needs.
|
2025-09-18 11:05:55 +01:00 |
|
Mathias Vorreiter Pedersen
|
ac5233d19c
|
C++: Lots of renamings.
|
2025-09-18 11:05:54 +01:00 |
|
Mathias Vorreiter Pedersen
|
840097f121
|
C++: Instantiate the shared guards library.
|
2025-09-18 11:05:52 +01:00 |
|
Mathias Vorreiter Pedersen
|
3a8f77d6f4
|
C++: Qualified import of cpp.
|
2025-09-18 11:05:50 +01:00 |
|
Mathias Vorreiter Pedersen
|
2b0b8402ce
|
C++: Delete a bunch of predicates. Also set up things so that they work after instantiating the shared guards library.
|
2025-09-18 11:05:49 +01:00 |
|
Mathias Vorreiter Pedersen
|
f0f4311b65
|
C++: Sync identical files.
|
2025-09-18 11:05:47 +01:00 |
|
Mathias Vorreiter Pedersen
|
70a8364a38
|
C++: Add another convenience predicate on 'BinaryInstruction'.
|
2025-09-18 11:05:45 +01:00 |
|
Mathias Vorreiter Pedersen
|
19b8e0db9c
|
C++: Add a few subclasses to 'EdgeKind'.
|
2025-09-18 11:05:43 +01:00 |
|
Mathias Vorreiter Pedersen
|
be8195ab7d
|
C++: Do not rely on dataflow nodes when implement 'getAUse' and 'getAnIndirectUse'. This will solve a non-monotonic recursion issue later.
|
2025-09-18 11:05:39 +01:00 |
|
Mathias Vorreiter Pedersen
|
f47dd2bbc6
|
C++: Add a 'hasInputFromBlock' predicate.
|
2025-09-18 11:05:38 +01:00 |
|
Mathias Vorreiter Pedersen
|
f55ace8311
|
C++: Make the return type a bit more precise.
|
2025-09-18 10:10:07 +01:00 |
|
Mathias Vorreiter Pedersen
|
417e79c3c0
|
Merge pull request #20382 from MathiasVP/simplify-ssl-result-not-checked
C++: Simplify `cpp/certificate-not-checked`
|
2025-09-09 12:23:39 +01:00 |
|
Mathias Vorreiter Pedersen
|
702d6d80c4
|
Update cpp/ql/lib/semmle/code/cpp/controlflow/IRGuards.qll
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
2025-09-08 16:19:33 +01:00 |
|
Mathias Vorreiter Pedersen
|
9f47996448
|
C++: Lift a few more predicates to expression guards.
|
2025-09-08 12:28:18 +01:00 |
|
Mathias Vorreiter Pedersen
|
4645bd766a
|
C++: Sync identical files.
|
2025-09-04 19:27:31 +01:00 |
|
Mathias Vorreiter Pedersen
|
a551a55ca0
|
C++: Get rid of a parenthesis pair.
|
2025-09-04 19:27:23 +01:00 |
|
Mathias Vorreiter Pedersen
|
3c35e1e6ee
|
C++: Require a unique IRFunction for each value number case and assign instructions with a non-unique IRFUnction a unique value number.
|
2025-09-04 19:26:42 +01:00 |
|
Mathias Vorreiter Pedersen
|
76f2c6a9f1
|
C++: Remove the IRFunction column from the TUniqueValueNumber branch. The next commits will protect the recursion from instructions which has multiple IRFunctions and assign such instructions a unique value number so it won't make sense for them to have an IRFunction column.
|
2025-09-04 19:10:22 +01:00 |
|
Michael Nebel
|
64d68feab3
|
Merge pull request #20325 from michaelnebel/cpp/ql4ql
C++: Fix some Ql4Ql violations.
|
2025-09-04 14:17:11 +02:00 |
|
Michael Nebel
|
61e8ad264f
|
C++: Address review comments.
|
2025-09-04 12:52:46 +02:00 |
|
Michael Nebel
|
83d53baf82
|
C++: Fix some Ql4Ql violations.
|
2025-09-03 08:19:18 +02:00 |
|
Jeroen Ketema
|
ab3ad20a1e
|
Merge pull request #20319 from jketema/ir-vla-sizeof
C++: Support `sizeof` VLAs in the IR
|
2025-09-02 17:29:18 +02:00 |
|
Jeroen Ketema
|
8de1ed0d85
|
C++: Address review comments
|
2025-09-02 17:03:48 +02:00 |
|
Jeroen Ketema
|
f4df3881f8
|
C++: Handle *& sequences in sizeof VLA expressions
|
2025-09-02 12:29:24 +02:00 |
|
Jeroen Ketema
|
438cc961da
|
C++: Document TranslatedSizeofExpr
|
2025-09-02 12:29:21 +02:00 |
|
Jeroen Ketema
|
f68d3477d4
|
C++: Output necessary conversions in the sizeof VLA IR
|
2025-09-02 12:29:17 +02:00 |
|
Jeroen Ketema
|
f0f66c6d58
|
C++: Minor refactor
* Introduce new instruction tag for the base size
* Introduce some convenience predicates on `VlaDeclStmt`
|
2025-09-02 12:29:15 +02:00 |
|
Jeroen Ketema
|
6a9324fab0
|
C++: Fix obtaining the base type of a VLA
|
2025-09-02 12:29:13 +02:00 |
|
Jeroen Ketema
|
6e8f44da42
|
C++: Handle sizeof VLAs with typedefs
|
2025-09-02 12:29:09 +02:00 |
|
Jeroen Ketema
|
fdab63fd5f
|
C++: Handle ArrayExprs in sizeof VLAs
|
2025-09-02 12:29:04 +02:00 |
|
Jeroen Ketema
|
d9320b3c16
|
C++: Support sizeof VLAs in the IR
|
2025-09-02 12:28:59 +02:00 |
|
Anders Schack-Mulligen
|
144e34c669
|
Shared: Use shared SuccessorType in shared Cfg and BasicBlock libs.
|
2025-09-01 13:43:32 +02:00 |
|
Anders Schack-Mulligen
|
09b2c5abf0
|
BasicBlock: Replace entryBlock predicate with subclass.
|
2025-09-01 11:48:44 +02:00 |
|
Anders Schack-Mulligen
|
6ffb9b129f
|
C++: Extend final IRBlock
|
2025-09-01 11:26:36 +02:00 |
|
Anders Schack-Mulligen
|
a7b2a2fa9f
|
C++: Sync files.
|
2025-09-01 11:26:35 +02:00 |
|
Anders Schack-Mulligen
|
f459ddc40a
|
Languages: Adapt to api changes.
|
2025-09-01 11:26:33 +02:00 |
|