Jeongsoo Lee
d3066af2e2
Create IndirectUninitializedNode and add a bridge from it to LocalVariable
...
This way the changes do not alter the meaning of `UninitializedNode`.
In the meantime, the code still provides a specialized `Node` type
`IndirectUninitializedNode` to access the nodes behind levels of
indirection.
2026-03-13 11:39:57 -07:00
Jeongsoo Lee
8c03136c25
Revert "Expose the indirection index"
...
This reverts commit 6c792e69b3 .
2026-03-13 10:11:40 -07:00
Jeongsoo Lee
6c792e69b3
Expose the indirection index
2026-03-11 13:53:24 -07:00
Idriss Riouak
48a03e2a04
Apply suggestions from code review
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-11 14:25:53 +01:00
idrissrio
a92d97744f
C/C++ overlay: address review comment
2026-03-11 14:25:52 +01:00
idrissrio
ef6c1a9968
C/C++ overlay: fix failing header_dependency test
2026-03-11 14:25:50 +01:00
idrissrio
72142b51f7
C/C++ overlay: switch to updated discard strategy
2026-03-11 14:25:49 +01:00
Ian Lynagh
341059d2d0
Merge pull request #21437 from igfoo/igfoo/onemk
...
C++: Small simplification
2026-03-10 15:36:38 +00:00
Ian Lynagh
dbb8bb86ba
C++: Small simplification
2026-03-09 17:45:38 +00:00
Owen Mansel-Chan
512e27187e
Make new predicate private
2026-03-09 13:44:48 +00:00
Owen Mansel-Chan
097681e705
Update cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-07 10:17:58 +00:00
Owen Mansel-Chan
63e8061917
Add model validation for constructor summary models
2026-03-07 09:57:09 +00:00
Mathias Vorreiter Pedersen
db33dadb8e
C++: Add QLDoc. Also actually implement 'uninitializedNode' since there's no reason not to do so.
2026-02-27 17:36:57 +00:00
Mathias Vorreiter Pedersen
1139059d77
C++: Fix imports.
2026-02-27 17:12:00 +00:00
Mathias Vorreiter Pedersen
92f26027e1
C++: Remove outdated comment.
2026-02-27 16:32:04 +00:00
Mathias Vorreiter Pedersen
85875c2879
C++: Remove unnecessary recursion through Node.toString.
2026-02-27 16:32:01 +00:00
Mathias Vorreiter Pedersen
17e6fd2fe9
C++: Disable magic to prevent re-evaluation.
2026-02-27 16:31:58 +00:00
Mathias Vorreiter Pedersen
5d75b255a8
C++: Remove IR re-evaluation.
2026-02-27 16:31:56 +00:00
Mathias Vorreiter Pedersen
26e8701ae3
C++: Fix a few qualifiers.
2026-02-27 16:22:51 +00:00
Mathias Vorreiter Pedersen
cdb41588a9
C++: Fix some imports.
2026-02-27 16:22:49 +00:00
Mathias Vorreiter Pedersen
1eccb8ea93
C++: Add a cache module to taint-tracking and ensure they happen in the same stage as the dataflow stage.
2026-02-27 16:22:47 +00:00
Mathias Vorreiter Pedersen
66611323e2
C++: No need to keep this in its own module now.
2026-02-27 16:22:44 +00:00
Mathias Vorreiter Pedersen
d804fc5168
C++: Remove the 'ExprFlowCached' module. Instead we have a single cached module.
2026-02-27 16:22:42 +00:00
Mathias Vorreiter Pedersen
f223c957ba
C++: Cache 'toString' and 'getLocation'.
2026-02-27 16:22:39 +00:00
Mathias Vorreiter Pedersen
86bd0c0dc3
C++: Move a bunch of newtypes and predicates into a cached module.
2026-02-27 16:22:36 +00:00
Mathias Vorreiter Pedersen
6e0c5615fe
C++: Move a bunch non-public dataflow node subtypes.
2026-02-27 16:22:33 +00:00
Mathias Vorreiter Pedersen
edde4149aa
C++: Move 'Node' into the public module.
2026-02-27 16:22:29 +00:00
Mathias Vorreiter Pedersen
87478d016a
C++: Move 'FieldAddress' and 'conversionFlow'.
2026-02-27 16:22:26 +00:00
Mathias Vorreiter Pedersen
09d74a3b3e
C++: Move 'CanonicalField' stuff.
2026-02-27 16:22:23 +00:00
Mathias Vorreiter Pedersen
271a759490
C++: Move 'TIRDataFlowNode'.
2026-02-27 16:22:21 +00:00
Mathias Vorreiter Pedersen
b9595d985e
C++: Create a new file.
2026-02-27 16:22:19 +00:00
Mathias Vorreiter Pedersen
15af6c1b20
C++: Provide barrier node API without the unit column when instantiating non-parameterized barrier guards.
2026-02-24 12:32:23 +00:00
Jeroen Ketema
9228304294
Merge branch 'main' into cpp/simple-range-analysis-phi-divide
2026-02-20 16:25:26 +01:00
Simon Friis Vindum
8eed18a8ff
C++: Fix typo
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2026-02-20 16:24:19 +01:00
Simon Friis Vindum
fdbd49a843
C++: Improve clarity in comment
...
Co-authored-by: Mathias Vorreiter Pedersen <mathiasvp@github.com >
2026-02-20 13:38:24 +01:00
Mathias Vorreiter Pedersen
1dba99f47d
Merge pull request #21292 from microsoft/UncheckedLeaprYearAfterModification_Refactor_Upstream
...
C++: Refactor of UncheckedLeapYearAfterModification
2026-02-20 12:11:45 +00:00
Idriss Riouak
22b55f3d6f
Merge pull request #21063 from github/idrissrio/cpp/overlay/single-location
...
C/C++ overlay: discard single location elements
2026-02-18 08:58:21 +01:00
idrissrio
c3f0967e9b
C/C++ overlay: discard single location elements
2026-02-17 10:50:24 +01:00
Jeroen Ketema
31895c04f8
C++: MustFlow minor clean up
2026-02-17 09:06:36 +01:00
Jeroen Ketema
4efbc6ea9b
C++: Handle allowInterproceduralFlow correctly in case of recursive functions
2026-02-16 19:04:23 +01:00
Jeroen Ketema
73194a5e86
C++: Fix QL-for-QL warnings and missing QLDoc
2026-02-16 17:40:18 +01:00
Jeroen Ketema
26a1f4888a
C++: Modernize MustFlow using parameterized modules
2026-02-16 17:27:41 +01:00
Simon Friis Vindum
d0681c6ffb
C++: Divide nr of bounds between branches for phi nodes
2026-02-16 14:36:09 +01:00
Simon Friis Vindum
032c7ea034
C++: Include the actual number of lower/upper bounds for added context in expected files
2026-02-16 14:36:08 +01:00
Jeroen Ketema
7d2b40c657
Merge pull request #21313 from MathiasVP/range-analysis-lower-bound-and-measure-enums
...
C++: Measure bounds for `Enum` constants and reduce `getBoundsLimit`
2026-02-16 11:50:38 +01:00
Mathias Vorreiter Pedersen
84be8517bb
Update cpp/ql/lib/semmle/code/cpp/rangeanalysis/SimpleRangeAnalysis.qll
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-02-16 09:30:56 +00:00
Mathias Vorreiter Pedersen
2dc91a56eb
C++: Lower the treshold for max number of bounds to 2^29.
2026-02-12 09:44:20 +00:00
Mathias Vorreiter Pedersen
a4dd4f91d4
C++: Also compute type bounds for accesses of an enum type.
2026-02-12 09:44:14 +00:00
Mathias Vorreiter Pedersen
9596b7b921
C++: No need to compute this TC.
2026-02-11 20:18:03 +00:00
REDMOND\brodes
2b806ad6fd
C++: Add missing DateTime models for PTIME_FIELDS and TIME_FIELDS
2026-02-06 16:10:04 -05:00