Commit Graph

2783 Commits

Author SHA1 Message Date
Mathias Vorreiter Pedersen
d89967ce8e C++: Add ''isLiveAtEndOfBlock' predicate to 'Definition'. 2026-01-21 20:27:39 +00:00
Mathias Vorreiter Pedersen
e1089c8d89 Merge branch 'main' into ir-support-for-assertions 2026-01-21 13:56:30 +00:00
Mathias Vorreiter Pedersen
e4ec79255b C++: Fix bugs in variable resolution for assertions following review comments. 2026-01-21 13:50:27 +00:00
Mathias Vorreiter Pedersen
c30dffc7b9 C++: Add more tests. 2026-01-21 13:50:13 +00:00
Mathias Vorreiter Pedersen
6ae1ea73f7 Merge pull request #21185 from MathiasVP/mad-cpp-guards
C++: Support models-as-data barriers and barrier guards
2026-01-21 12:13:49 +00:00
Jeroen Ketema
701569bb20 Update cpp/ql/lib/semmle/code/cpp/Preprocessor.qll
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-20 16:05:51 +01:00
Jeroen Ketema
e7044061fb C++: Support C23/C++26 #embed preprocessor directives 2026-01-20 14:38:58 +01:00
Mathias Vorreiter Pedersen
d183dcd6fc C++: Add 'internal: do not use' comment. 2026-01-19 12:04:12 +00:00
Mathias Vorreiter Pedersen
c11b464492 C++: Autoformat. 2026-01-19 11:58:11 +00:00
Mathias Vorreiter Pedersen
b3631545d4 C++: Delete unnecessary conjuncts after review comments. 2026-01-19 11:57:45 +00:00
Mathias Vorreiter Pedersen
c47a9ddf83 Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-19 11:46:42 +00:00
Mathias Vorreiter Pedersen
c70633a0f7 C++: Fix Code Scanning alert. 2026-01-19 11:41:26 +00:00
Mathias Vorreiter Pedersen
58a3260c96 Update cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com>
2026-01-19 11:33:48 +00:00
Mathias Vorreiter Pedersen
a11b271d6e C++: Finish up implementation of MaD barriers. 2026-01-19 11:30:23 +00:00
Anders Schack-Mulligen
48254800b1 WIP
C++: Add support for MaD barriers and barrier guards.
2026-01-19 11:30:21 +00:00
Mathias Vorreiter Pedersen
07ac8a5d81 C++: Parameterize the BarrierGuard modules. This is useful for barrier guards with flow states and will be necessary in the next commit for adding MaD specified barriers. 2026-01-19 11:30:19 +00:00
Mathias Vorreiter Pedersen
dc7ce3fba3 Merge pull request #21171 from MathiasVP/fix-conflation-in-guards
C++: Fix conflation in barrier guards
2026-01-19 11:29:05 +00:00
Mathias Vorreiter Pedersen
f05bff01e4 C++: Switch another 'DataFlowType' to 'Type'. 2026-01-16 12:42:33 +00:00
Mathias Vorreiter Pedersen
5e9fd12d8c Update cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-16 12:25:12 +00:00
Mathias Vorreiter Pedersen
03d6528687 Update cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedAssertion.qll
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com>
2026-01-15 15:58:28 +00:00
Mathias Vorreiter Pedersen
1b117900c2 Update cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com>
2026-01-15 14:42:11 +00:00
Mathias Vorreiter Pedersen
d6ca1ca846 Update cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedStmt.qll
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com>
2026-01-15 14:41:13 +00:00
Mathias Vorreiter Pedersen
28681508f3 C++: Fix bug and accept test changes. 2026-01-15 11:17:15 +00:00
Mathias Vorreiter Pedersen
27a437a514 C++: Modify test to reveal a bug. 2026-01-15 11:16:15 +00:00
Jeroen Ketema
3327193a11 Merge pull request #21164 from jketema/jketema/builtin
C++: More builtins and information regarding this param refs
2026-01-15 08:21:01 +01:00
Jeroen Ketema
17a453bb33 Merge pull request #21126 from jketema/subscript
C++: Add predicates to support C++23 multidimensional subscript operators
2026-01-14 14:48:14 +01:00
Jeroen Ketema
047fa068ff C++: Add isThisAccess predicate to ParamAccessForType 2026-01-14 13:35:50 +01:00
Jeroen Ketema
3d959abdeb C++: Support new builtin operations 2026-01-14 13:35:46 +01:00
Jeroen Ketema
a20f0a11e8 C++: No longer expose _Decimal{32,64,128} 2026-01-13 16:11:06 +01:00
Mathias Vorreiter Pedersen
4f4baee888 C++: Fix Code Scanning alerts. 2026-01-12 21:08:02 +00:00
Mathias Vorreiter Pedersen
aa058c2cca C++: Generate IR for assertions in release builds. 2026-01-12 21:07:55 +00:00
Mathias Vorreiter Pedersen
a18f3b6859 C++: Avoid generating IR for a few cases where we will be synthesizing assertions. 2026-01-12 21:06:09 +00:00
Mathias Vorreiter Pedersen
67ab0fee83 C++: Add a few helper predicates. 2026-01-12 21:06:07 +00:00
Simon Friis Vindum
3a135888c7 C++: Improve bounds from inequalities on integers 2026-01-09 10:26:36 +01:00
Jeroen Ketema
4c3fb0c7c4 C++: Deprecate getArrayOffset/0 2026-01-08 13:22:38 +01:00
Jeroen Ketema
3907fc7e5a C++: Add predicates to support multidimensional subscript operators 2026-01-08 13:13:10 +01:00
Simon Friis Vindum
26bd332617 Merge pull request #21113 from paldepind/cpp/range-analysis-float-ceil
C++: Remove `safeFloor` in simple range analysis
2026-01-08 13:07:30 +01:00
Simon Friis Vindum
f5ddb1d51d C++: Remove safeFloor in simple range analysis 2026-01-07 12:49:09 +01:00
Jeroen Ketema
c567197f29 C++: Simplify expression 2026-01-06 21:58:43 +01:00
Jeroen Ketema
063e5d300e C++: Remove redundant SSA branch after IR fix 2026-01-06 17:40:52 +01:00
Jeroen Ketema
740518d23f C++: Use the loaded this instead of the this initialization 2026-01-06 17:11:22 +01:00
Anders Schack-Mulligen
64a48e4e7b MaD: Use "namespace" instead "package" in shared code. 2025-12-12 13:57:02 +01:00
Anders Schack-Mulligen
7f8d0771df MaD: Rename file. 2025-12-12 13:50:58 +01:00
Anders Schack-Mulligen
5bddc8d289 Go: Move Go package-grouping support into shared lib. 2025-12-12 09:17:51 +01:00
Anders Schack-Mulligen
e262438557 C++: Use shared model coverage code. 2025-12-12 08:20:20 +01:00
Anders Schack-Mulligen
07252519c8 Java/C++: Thread additional models through the shared lib. 2025-12-12 08:20:20 +01:00
Anders Schack-Mulligen
47dcf05a32 C++/Go/Java: Don't import top-level extensible predicates. 2025-12-12 08:20:19 +01:00
Anders Schack-Mulligen
0915db4f6b C++/C#/Go: Use shared interpretModelForTest. 2025-12-12 08:20:18 +01:00
Anders Schack-Mulligen
f0e7f1af2c C++/C#/Go: Align ExternalFlowExtensions with Java. 2025-12-12 08:20:18 +01:00
Anders Schack-Mulligen
7285a8e1c5 Merge pull request #20986 from aschackmull/java/mad-barriers
Java: Support for MaD barriers and barrier guards.
2025-12-12 07:53:53 +01:00