Commit Graph

202 Commits

Author SHA1 Message Date
Tom Hvitved
2f8b04b225 Rust: Models-as-data for flow summaries 2024-12-09 13:41:55 +01:00
Paolo Tranquilli
b59b90ba6d Rust: accept test changes 2024-12-06 09:12:16 +01:00
Simon Friis Vindum
a19f1d0b8b Rust: Remove store step for repeat operand in array expression 2024-12-04 14:01:53 +01:00
Simon Friis Vindum
c62b7d139f Merge branch 'main' into rust-df-array 2024-12-04 13:55:26 +01:00
Simon Friis Vindum
ed6f873478 Merge branch 'main' into rust-df-try-expr 2024-12-04 11:33:41 +01:00
Paolo Tranquilli
c0676f4269 Merge pull request #18198 from github/redsun82/rust-tuple-struct-pat-to-string
Rust: improve `TupleStructPat.toString`
2024-12-04 11:20:42 +01:00
Paolo Tranquilli
b6f0ae0460 Rust: accept test changes 2024-12-04 11:05:01 +01:00
Simon Friis Vindum
7092f13584 Merge branch 'main' into rust-df-try-expr 2024-12-04 10:59:07 +01:00
Simon Friis Vindum
bb015cf56d Merge branch 'main' into rust-df-closure 2024-12-04 09:25:18 +01:00
Simon Friis Vindum
70c60868a6 Rust: Model ? as reading from Option and Result 2024-12-03 17:01:34 +01:00
Simon Friis Vindum
b50834aee8 Rust: Add data flow tests for question mark operator 2024-12-03 16:21:26 +01:00
Simon Friis Vindum
cac4514eae Rust: Add basic data flow through arrays 2024-12-03 14:15:54 +01:00
Simon Friis Vindum
3346b64e96 Rust: Add variables and data flow array tests 2024-12-03 14:14:41 +01:00
Tom Hvitved
3c767b086b Rust: Use canonical paths for variants in data flow 2024-12-03 10:19:33 +01:00
Simon Friis Vindum
e377a0e05a Merge branch 'main' into rust-df-closure 2024-12-03 10:09:52 +01:00
Tom Hvitved
3e5f4b7f89 Rust: Add a model for unwrap 2024-12-03 09:12:01 +01:00
Simon Friis Vindum
e1c65aae90 Rust: Tuple writes target post update node 2024-12-02 14:48:20 +01:00
Simon Friis Vindum
3420f1f43f Address review comments, store step for tuple indexing 2024-12-02 13:27:26 +01:00
Simon Friis Vindum
b8d60cbb13 Rust: Implement predicates for lambdas/closures in the data flow library 2024-11-29 09:32:04 +01:00
Simon Friis Vindum
ad7480591b Rust: Add data flow tests involving closures 2024-11-29 09:30:26 +01:00
Simon Friis Vindum
d89678f49f Rust: Data flow through tuple and struct fields 2024-11-27 14:53:01 +01:00
Simon Friis Vindum
9ec9d79b4f Rust: Add additional tests for flow through structs 2024-11-27 10:10:49 +01:00
Tom Hvitved
5e7cd46117 Rust: Flow through variants 2024-11-25 19:17:57 +01:00
Tom Hvitved
2fb670a27c Rust: Do not print unit type in data flow 2024-11-25 19:14:44 +01:00
Tom Hvitved
511f791511 Rust: Add more flow tests 2024-11-25 19:14:42 +01:00
Paolo Tranquilli
e7c10c6325 Merge branch 'main' into redsun82/rust-str 2024-11-22 14:44:48 +01:00
Simon Friis Vindum
fffeac6a13 Rust: Extend data flow library instantiation for global data flow 2024-11-21 15:11:25 +01:00
Paolo Tranquilli
6a6154913b Merge branch 'main' into redsun82/rust-str 2024-11-21 11:50:38 +01:00
Tom Hvitved
e6887f982e Rust: Use nodes from CfgNodes.qll in DataFlowImpl.qll 2024-11-21 10:21:13 +01:00
Tom Hvitved
1c2fdc29a3 Rust: Add more local data flow tests 2024-11-21 10:21:09 +01:00
Paolo Tranquilli
fd45e11f4b Rust: accept test changes 2024-11-20 16:49:20 +01:00
Paolo Tranquilli
b4af5a61d1 Rust: more advanced toString 2024-11-20 16:21:23 +01:00
Paolo Tranquilli
4d04c5af83 Rust: fix non-existent string representations 2024-11-20 12:08:51 +01:00
Paolo Tranquilli
57973df795 Rust: make CallExpr.toString use call identifier if present 2024-11-20 10:00:10 +01:00
Paolo Tranquilli
fce13aeb35 Rust: accept test changes 2024-11-19 17:50:14 +01:00
Simon Friis Vindum
2c9bee6208 Rust: Only add data flow edge to SSA write definitions from their underlying CFG node 2024-11-19 14:32:31 +01:00
Simon Friis Vindum
23bfa8a9bc Rust: Add local data flow edge for SSA definitons 2024-11-19 12:19:47 +01:00
Simon Friis Vindum
bacc37d886 Rust: Add additional tests for intraprocedural data flow 2024-11-19 12:07:26 +01:00
Simon Friis Vindum
78edafc94c Rust: Include patterns as data flow nodes 2024-11-12 18:43:06 +01:00
Simon Friis Vindum
6a3d417836 Rust: Implement enclosing callable for additional classes 2024-11-11 11:11:29 +01:00
Simon Friis Vindum
55796badaf Rust: Mark SSA data flow nodes in output and hide them in paths 2024-11-11 08:48:48 +01:00
Simon Friis Vindum
dadc6059a8 Rust: Implement enclosing callable 2024-11-06 16:23:24 +01:00
Simon Friis Vindum
60986d8c9b Rust: Fix unique type data flow inconsistency 2024-11-06 13:48:10 +01:00
Simon Friis Vindum
262a9f0cfa Rust: Make fixes in data flow based on PR feedback 2024-11-05 15:37:44 +01:00
Simon Friis Vindum
d9636b37b6 Rust: Add data flow test with assignment to mutable variable 2024-11-04 20:00:36 +01:00
Simon Friis Vindum
6b25bea2e5 Rust: Accept consistency results 2024-11-04 11:28:26 +01:00
Simon Friis Vindum
a3c7d5a469 Merge branch 'main' into rust-data-flow-consistency 2024-11-04 11:10:48 +01:00
Simon Friis Vindum
7f344fab78 Rust: Add data flow consistency queries 2024-11-04 10:17:50 +01:00
Simon Friis Vindum
82076ee0b8 Rust: Propagate data flow through a few expression types 2024-11-03 16:12:59 +01:00
Simon Friis Vindum
2bab29d31b Rust: Add local data flow step tests 2024-11-03 16:12:58 +01:00