Commit Graph

89 Commits

Author SHA1 Message Date
Owen Mansel-Chan
7458674470 Merge pull request #21584 from owen-mc/shared/update-mad-comments
Shared: update code comments explaining models-as-data format to include barriers and barrier guards
2026-04-14 09:30:28 +01:00
Owen Mansel-Chan
a7fdc4b543 Replace acceptingvalue with acceptingValue 2026-03-27 22:15:45 +00:00
Owen Mansel-Chan
b3285c6ae2 Make description of acceptingvalue column clearer 2026-03-27 11:35:22 +00:00
Owen Mansel-Chan
886a16bfad C++: Add provenance column 2026-03-27 09:47:34 +00:00
Owen Mansel-Chan
e680d49c93 Shared: document extensible relations rather than CSV 2026-03-27 09:47:32 +00:00
Owen Mansel-Chan
61b13d5702 C++: Add provenance to MaD format explanation 2026-03-27 09:47:26 +00:00
Owen Mansel-Chan
10fddc7b96 Add barriers and barrier guards to MaD format explanations 2026-03-27 09:47:24 +00:00
Owen Mansel-Chan
21ecf230ce Small tweaks 2026-03-26 16:39:10 +00:00
copilot-swe-agent[bot]
d69bcca687 Remove CSV model infrastructure from ExternalFlow.qll
Remove SourceModelCsv, SinkModelCsv, SummaryModelCsv classes,
single-argument CSV predicates, CSV parsing in MadInput, and
CSV-specific validation checks. Simplify MadInput to only contain
the namespace separator. Convert test models to .ext.yml format.

Agent-Logs-Url: https://github.com/github/codeql/sessions/89ff81fe-5585-446d-99e2-6fe6966495c5

Co-authored-by: owen-mc <62447351+owen-mc@users.noreply.github.com>
2026-03-26 15:07:39 +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
17e6fd2fe9 C++: Disable magic to prevent re-evaluation. 2026-02-27 16:31:58 +00:00
Tom Hvitved
3b1e062985 C++: Adapt to changes in FlowSummaryImpl 2026-01-26 12:40:20 +01: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
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
Anders Schack-Mulligen
7f8d0771df MaD: Rename file. 2025-12-12 13:50:58 +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
Mathias Vorreiter Pedersen
73b6fa69a9 C++: Fix Code Scanning alert. 2025-11-25 15:03:26 +00:00
Mathias Vorreiter Pedersen
05737af165 C++: Only support non-type template parameters in tail position. 2025-11-25 14:55:44 +00:00
Mathias Vorreiter Pedersen
fd566780a6 Update cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-24 12:17:06 +00:00
Mathias Vorreiter Pedersen
732e55df11 C++: Ignore template non-type parameters in MaD signature matching. 2025-11-24 12:06:24 +00:00
Mathias Vorreiter Pedersen
29a294f8d0 C++: Bind the columns inside the predicate instead of relying on 'bindingset's. The repeated inlining caused by 'bindiingset's created some #shared predicates with repeated regex matching. 2025-11-10 10:21:12 +00:00
Mathias Vorreiter Pedersen
dfdc2a6a15 C++: Delete an incorrect comment. 2025-11-08 16:45:45 +00:00
Mathias Vorreiter Pedersen
3d6b3a31ac C++: Also join on the 'namespace'. 2025-11-08 16:45:39 +00:00
Mathias Vorreiter Pedersen
bfe2b7dc44 C++: Use the new predicate to remove a cartesian-like join. 2025-11-08 16:43:43 +00:00
Mathias Vorreiter Pedersen
a922d5099f C++: Factor out some conjuncts from 'interpretElement0' and into a new predicate. 2025-11-08 16:42:16 +00:00
Jeroen Ketema
0996e6083e C++: Pretty print MaD ids in test output 2025-06-26 23:38:32 +02:00
Mathias Vorreiter Pedersen
94e08e318d C++: Expose a few predicates from 'ExternalFlow'. 2025-04-10 14:18:47 +01:00
Alex Eyers-Taylor
57e985cc21 CPP: Simplify getClassAndNameImpl 2025-02-21 16:23:45 +00:00
Alex Eyers-Taylor
53c5b8ff9e CPP: Prevent forced bad join order. 2025-02-20 16:06:42 +00:00
Mathias Vorreiter Pedersen
d935e9fb0f C++: Also resolve typedefs nested inside arrays. 2025-01-06 14:50:37 +00:00
Mathias Vorreiter Pedersen
99ad184f57 Update cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com>
2025-01-06 13:32:11 +00:00
Mathias Vorreiter Pedersen
75a3b6b613 Update cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com>
2025-01-06 13:32:04 +00:00
Mathias Vorreiter Pedersen
f3085fc865 Update cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com>
2025-01-06 13:30:59 +00:00
Mathias Vorreiter Pedersen
bfd18bc3e3 Update cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com>
2025-01-06 13:30:50 +00:00
Mathias Vorreiter Pedersen
9672af333a C++: Cache 'interpretElement'. This reduces DIL size of 'cpp/unbounded-write' by about 8%. 2025-01-03 10:46:57 +01:00
Mathias Vorreiter Pedersen
3d3feb6354 C++: Also resolve typedefs when parsing MaD model parameter names. 2025-01-02 16:06:46 +01:00
Mathias Vorreiter Pedersen
f23e56bdca Merge pull request #18261 from MathiasVP/add-more-atl-string-models
C++: Add more MaD models for ATL string classes
2025-01-02 15:06:04 +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
c5bb907fe0 C++: Also handle varargs in MaD parsing. 2024-12-10 18:25:56 +00:00
Mathias Vorreiter Pedersen
2c58279137 C++: Add QLDoc to 'isClassConstructedFrom' and 'isFunctionConstructedFrom'. 2024-12-03 17:52:29 +00:00
Mathias Vorreiter Pedersen
3c0af498db C++: Fix bug introduced in an earlier commit and accept test changes. They all look good. 2024-11-27 19:04:25 +00:00
Mathias Vorreiter Pedersen
c00f84d74a C++: Work around the 'wrong' function name for conversion operators. 2024-11-27 16:41:20 +00:00
Mathias Vorreiter Pedersen
f688470324 C++: Since isConstructedFrom only holds for templates we need to explicitly handle the case where the function (or class) is not a template. 2024-11-27 16:41:16 +00:00