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 |
|
Anders Schack-Mulligen
|
bb3abc815f
|
SSA: Update input to use member predicates.
|
2025-09-01 11:19:48 +02:00 |
|
Mathias Vorreiter Pedersen
|
2c2b1e4116
|
Merge pull request #20306 from MathiasVP/fix-new-initializer-bug
C++: Fix IR construction for implicit conversions in `new` initializers
|
2025-08-28 16:40:37 +02:00 |
|
Jeroen Ketema
|
31126649a9
|
Update cpp/ql/lib/semmle/code/cpp/PchFile.qll
Co-authored-by: Idriss Riouak <idrissrio@github.com>
|
2025-08-28 13:10:39 +02:00 |
|
Mathias Vorreiter Pedersen
|
2033552bb2
|
C++: Handle conversions in new initializers.
|
2025-08-28 12:13:02 +02:00 |
|
Jeroen Ketema
|
fd752d36cb
|
C++: Add missing QLDoc
|
2025-08-27 13:48:10 +02:00 |
|
Jeroen Ketema
|
e20ce57023
|
C++: Expose PCH file creation as usage in QL
|
2025-08-26 22:12:27 +02:00 |
|
Mathias Vorreiter Pedersen
|
dfda5a0793
|
Merge pull request #20249 from MathiasVP/type-tracking-for-cpp-3
C++: Use the shared type-tracking library for virtual dispatch resolution
|
2025-08-21 11:14:12 +02:00 |
|
Mathias Vorreiter Pedersen
|
70d3e69ce5
|
C++: Rename 'lambda' to 'virtual'.
|
2025-08-20 10:38:22 +02:00 |
|
Mathias Vorreiter Pedersen
|
0631bd7466
|
C++: Add object/flow conflation for unions when resolving function pointers.
|
2025-08-19 13:57:13 +02:00 |
|
Mathias Vorreiter Pedersen
|
16508b1800
|
C++: Fix off-by-one error in getType on 'FinalGlobalValue' nodes and accept test changes.
|
2025-08-19 13:57:11 +02:00 |
|
Mathias Vorreiter Pedersen
|
cca5bd9ada
|
C++: Update 'mayBenefitFromCallContext' to not use the old virtual dispatch local flow predicate.
|
2025-08-19 13:57:07 +02:00 |
|
Mathias Vorreiter Pedersen
|
383799ce67
|
C++: Perform 6 rounds of virtual dispatch resolution like Java.
|
2025-08-19 13:57:05 +02:00 |
|
Mathias Vorreiter Pedersen
|
d4188d59a8
|
C++: Instantiate the type tracking module inside a reusable module like it's done in Java.
|
2025-08-19 13:57:03 +02:00 |
|
Mathias Vorreiter Pedersen
|
caf7464f3b
|
C++: Prefix with 'DataflowPrivate'.
|
2025-08-19 12:46:12 +02:00 |
|
Mathias Vorreiter Pedersen
|
fdb9f7ba2a
|
C++: Move these predicates to make the diff smaller.
|
2025-08-19 12:42:15 +02:00 |
|
Mathias Vorreiter Pedersen
|
42fcfca849
|
C++: Remove the old virtual dispatch case from 'defaultViableCallable' and slightly reorganize the code in preparation for the next commit.
|
2025-08-19 12:39:26 +02:00 |
|
Mathias Vorreiter Pedersen
|
af00e46fc8
|
C++: Mark fprintf and friends as a partial write of the stream argument.
|
2025-08-18 18:15:14 +02:00 |
|
Mathias Vorreiter Pedersen
|
4551875e2e
|
C++: Drive-by improvement: Use 'partialFlowFunc' since it is in scope anyway.
|
2025-08-18 18:10:35 +02:00 |
|
Mathias Vorreiter Pedersen
|
9ee313ff0a
|
C++: Remove code that is now subsumed.
|
2025-08-13 16:29:49 +02:00 |
|
Mathias Vorreiter Pedersen
|
bf4a84ba8f
|
C++: Drive-by: Add forgotten disjuncts involving '__builtin_expect'.
|
2025-08-13 16:29:42 +02:00 |
|
Mathias Vorreiter Pedersen
|
e6cd27a992
|
C++: Skip non-Boolean instructions in the new inference step.
|
2025-08-13 16:20:21 +02:00 |
|
Mathias Vorreiter Pedersen
|
e67b6d6c9a
|
C++: Add another inference step.
|
2025-08-13 16:20:19 +02:00 |
|
Jeroen Ketema
|
f9f99a043c
|
Merge pull request #20126 from MathiasVP/fix-missing-global-flow
C++: Fix missing global variable flow
|
2025-08-11 11:54:35 +02:00 |
|
Mathias Vorreiter Pedersen
|
851cb04d36
|
Merge pull request #20193 from MathiasVP/fix-fp-in-overflow-buffer
C++: Fix FP in `cpp/overflow-buffer`
|
2025-08-11 10:45:06 +02:00 |
|
Mathias Vorreiter Pedersen
|
ccfcd90f08
|
Merge pull request #20156 from MathiasVP/value-numbering-for-noop-casts
C++: Value numbering for casts that only modify specifiers
|
2025-08-11 10:33:58 +02:00 |
|
Mathias Vorreiter Pedersen
|
56aacb1e55
|
Merge pull request #20145 from MathiasVP/fix-type-error-in-ir
C++: Fix missing `bool` -> `int` conversions in C code
|
2025-08-11 10:26:54 +02:00 |
|
Mathias Vorreiter Pedersen
|
d76ce4fb69
|
C++: Also handle reference types when computing 'trueSize'.
|
2025-08-08 15:12:45 +01:00 |
|
Mathias Vorreiter Pedersen
|
c726285cac
|
C++: Sync identical files.
|
2025-08-03 12:17:31 +01:00 |
|
Mathias Vorreiter Pedersen
|
0d9e298250
|
C++: Specifier-only converting instructions preserve GVNs.
|
2025-08-03 12:17:19 +01:00 |
|
Mathias Vorreiter Pedersen
|
73e4bfdd3e
|
C++: Fix missing flow by also generating final global uses for functions that have a post-update node for the global variable.
|
2025-08-02 16:41:23 +01:00 |
|
Mathias Vorreiter Pedersen
|
7561190bd1
|
C++: Fix type errors in C code.
|
2025-08-01 16:09:42 +01:00 |
|
Mathias Vorreiter Pedersen
|
0e9286dd34
|
C++: Fix QLDoc.
|
2025-08-01 11:37:12 +01:00 |
|