Commit Graph

85654 Commits

Author SHA1 Message Date
Mathias Vorreiter Pedersen
053a749e14 C++: Add change note. 2025-07-11 13:43:01 +01:00
Tom Hvitved
655b3de6bb Rust: Remove Resolvable.resolvesAsItem
Removes one more use of extractor-based resolution.
2025-07-11 14:41:41 +02:00
Mathias Vorreiter Pedersen
649c8831ec Merge pull request #20014 from jketema/wchar
C++: Do not alert on unreachable code in `cpp/incorrect-string-type-conversion`
2025-07-11 13:39:37 +01:00
Tom Hvitved
0a18db8960 Merge pull request #20020 from hvitved/rust/type-inference-pattern-matching
Rust: Type inference for pattern matching
2025-07-11 14:05:10 +02:00
Taus
c6c6a857df Python: Add tests
Also fixes an issue with the return type annotations that caused these
to not work properly.

Currently, annotated assignments don't work properly, due to the fact
that our flow relation doesn't consider flow going to the "type" part of
an annotated assignment. This means that in `x : Foo`, we do correctly
note that `x` is annotated with `Foo`, but we have no idea what `Foo`
is, since it has no incoming flow.

To fix this we should probably just extend the flow relation, but this
may need to be done with some care, so I have left it as future work.
2025-07-11 12:03:14 +00:00
Taus
2c45550a9f Python: Add change note
Co-authored-by: Napalys Klicius <napalys@github.com>
2025-07-11 12:03:14 +00:00
Taus
d1cf7f0624 Python: Support type annotations in call graph
Adds support for tracking instances via type annotations. Also adds a
convenience method to the newly added `Annotation` class,
`getAnnotatedExpression`, that returns the expression that is annotated
with the given type. For return annotations this is any value returned
from the annotated function in question.

Co-authored-by: Napalys Klicius <napalys@github.com>
2025-07-11 12:03:14 +00:00
Jeroen Ketema
232377a583 C++: Fix C++20 concept related class extensions 2025-07-11 13:38:06 +02:00
Geoffrey White
8f6f9f4359 Add change notes. 2025-07-11 11:54:59 +01:00
Tom Hvitved
edf6c7fbd6 Rust: Handle (Enum::)Variant::<TypeArg> type mentions 2025-07-11 12:44:47 +02:00
Tom Hvitved
a96d3d7be8 Rust: Add more type inference tests 2025-07-11 12:42:54 +02:00
Owen Mansel-Chan
7764fbb664 Change note 2025-07-11 11:05:48 +01:00
Owen Mansel-Chan
8e4bd1a102 Add sink for ObjectInput.readObject to make test pass 2025-07-11 11:05:38 +01:00
Owen Mansel-Chan
34fae324a0 Add test for ObjectInput.readObject 2025-07-11 11:03:47 +01:00
Mathias Vorreiter Pedersen
4f538a2b1f C++: Accept taint test changes. 2025-07-11 09:46:22 +01:00
Mathias Vorreiter Pedersen
6d0c8c6d77 C++: Work around an extractor bug. 2025-07-11 09:46:20 +01:00
Mathias Vorreiter Pedersen
df241ad4f6 C++: Fix lambda creation for objects with no constructor. 2025-07-11 09:46:09 +01:00
Tom Hvitved
ac13f408e4 Add change note 2025-07-11 10:42:50 +02:00
Tom Hvitved
4ab2977358 Rust: Type inference for pattern matching 2025-07-11 10:37:40 +02:00
Mathias Vorreiter Pedersen
b53c3547d0 C++: Add lambda dispatch for functors. 2025-07-11 09:36:45 +01:00
Mathias Vorreiter Pedersen
663c3e7b6d C++: Sync identical files. 2025-07-11 09:36:44 +01:00
Mathias Vorreiter Pedersen
11cba94032 C++: Add a missing predicate on 'UninitializedInstruction' that we will use later. 2025-07-11 09:36:42 +01:00
Mathias Vorreiter Pedersen
6736dd4e8f C++: Add some tests with missing flow through function objects. 2025-07-11 09:36:38 +01:00
Tom Hvitved
53ee565fdb Rust: Add more type inference tests 2025-07-11 10:22:24 +02:00
Jonas Jensen
76544f2966 Merge pull request #19943 from asgerf/approximate-related-location
Support approximate related locations
2025-07-11 10:16:24 +02:00
Tom Hvitved
742139927c Merge pull request #19658 from hvitved/rust/type-inference-library-param-fix
Rust: Fix type inference for library parameters
2025-07-11 08:34:19 +02:00
Adnan Khan
07598e8b62 Add test results. 2025-07-11 05:59:13 +00:00
Owen Mansel-Chan
006d77ffdd Refactor QL to make type check more concise 2025-07-11 06:13:01 +01:00
Tom Hvitved
1d7d45e16b Rust: Update expected test output 2025-07-10 19:40:39 +02:00
Tom Hvitved
8cd357a8a0 Rust: Fix type inference for library parameters 2025-07-10 19:40:37 +02:00
Tom Hvitved
1e9520c737 Merge pull request #19995 from hvitved/rust/disambiguate-assoc-function-calls
Rust: Disambiguate associated function calls
2025-07-10 19:38:06 +02:00
Geoffrey White
123458fd21 Sync identical files. 2025-07-10 18:10:24 +01:00
Geoffrey White
6de5a618f3 Rust: Accept consistency changes as well. 2025-07-10 18:03:12 +01:00
Jeroen Ketema
6d8e2f8231 Merge pull request #20017 from jketema/final
C++: Add dataflow predicate for checking if a node is the final value of a parameter
2025-07-10 18:47:09 +02:00
Geoffrey White
01c75e38f7 Rust: The rusqlite row.get() calls are missing a canonical path. 2025-07-10 17:31:37 +01:00
AdnaneKhan
1b794e056a Add extra test suggested by @Napalys 2025-07-10 12:24:36 -04:00
Adnan Khan
7be938c6c3 Handle multiple whitespaces in runner temp regex.
Co-authored-by: Napalys Klicius <napalys@github.com>
2025-07-10 12:22:14 -04:00
Geoffrey White
75078346c0 Rust: Accept .expected changes (mostly renumberings). 2025-07-10 17:05:12 +01:00
Owen Mansel-Chan
c39e5a7d97 Update qhelp: SnakeYaml is safe from version 2.0 2025-07-10 16:54:00 +01:00
Nick Rolfe
3a0def7848 Merge pull request #19989 from github/nickrolfe/ruby-annotations
Ruby: add overlay annotations to AST/CFG/SSA layers
2025-07-10 11:53:21 -04:00
Mathias Vorreiter Pedersen
fefb35bede Merge pull request #20016 from MathiasVP/add-more-thread-create-models
C++: Add more thread creation models
2025-07-10 16:44:04 +01:00
Jeroen Ketema
96c379a076 C++: Fix formatting and typo 2025-07-10 15:56:11 +02:00
Geoffrey White
7ba18fa5d0 Merge branch 'main' into models3b 2025-07-10 14:53:09 +01:00
Jeroen Ketema
214969feaf C++: Add change note 2025-07-10 15:52:27 +02:00
Geoffrey White
439cf7a659 Merge pull request #19942 from geoffw0/models1
Rust: Update legacy MaD models 2
2025-07-10 14:50:48 +01:00
Jeroen Ketema
b32a8c2489 C++: Add dataflow predicate for checking if a node is the final value of a parameter 2025-07-10 15:47:23 +02:00
Jeroen Ketema
990b7f0b70 C++: Add change note 2025-07-10 15:13:15 +02:00
Geoffrey White
0c075abe3f Rust: Fix merge (I picked the wrong version). 2025-07-10 13:59:10 +01:00
Geoffrey White
a6b4a18d51 Rust: Add negative patterns. 2025-07-10 13:56:14 +01:00
Geoffrey White
8f95e26ed6 Rust: Combine regexs where possible (likely better performance). 2025-07-10 13:56:12 +01:00