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 |
|
Simon Friis Vindum
|
a36095d85b
|
Rust: Add local data flow test with if expression
|
2024-11-01 11:28:10 +01:00 |
|
Paolo Tranquilli
|
e5a199b821
|
Rust: accept test changes due to toString implementations
|
2024-10-31 16:02:56 +01:00 |
|
Simon Friis Vindum
|
44bebedae6
|
Rust: Add basic skeleton setup for data flow
|
2024-10-30 13:16:26 +01:00 |
|
Tom Hvitved
|
7ddc8f087d
|
Merge pull request #17786 from paldepind/rust-saa-additions
Rust: SSA additions
|
2024-10-29 09:51:38 +01:00 |
|
Simon Friis Vindum
|
c5b01eb629
|
Merge branch 'main' into rust-saa-additions
|
2024-10-28 11:42:32 +01:00 |
|
Arthur Baars
|
fdf99e2f50
|
Rust: filter out definitions that are inside expanded macros
|
2024-10-28 11:27:59 +01:00 |
|
Arthur Baars
|
c4126e4410
|
Rust: add tests for Definitions.qll
|
2024-10-28 11:17:48 +01:00 |
|
Arthur Baars
|
9dc5e2fa36
|
Merge pull request #17791 from github/aibaars/rust-format-templates
Rust: parse formatting templates
|
2024-10-25 12:42:35 +02:00 |
|
Simon Friis Vindum
|
334602a50a
|
Rust: Handle calls that might read/write variables through closures
This implementation is copied and adapted from the Ruby SSA
implementation.
|
2024-10-25 10:50:32 +02:00 |
|
Simon Friis Vindum
|
75103f4b26
|
Merge branch 'main' into rust-saa-additions
|
2024-10-25 10:43:59 +02:00 |
|
Paolo Tranquilli
|
41d0085918
|
Rust: address review
|
2024-10-24 17:54:18 +02:00 |
|
Arthur Baars
|
8f2c7c1239
|
Rust: parse formatting templates
|
2024-10-24 15:10:59 +02:00 |
|
Paolo Tranquilli
|
3f8d438851
|
Rust: move qltest to rust code, add options with cargo check
|
2024-10-24 12:55:23 +02:00 |
|
Simon Friis Vindum
|
85e59c9920
|
Merge branch 'main' into rust-saa-additions
|
2024-10-21 13:30:02 +02:00 |
|
Simon Friis Vindum
|
9c172f62a4
|
Rust: Fix dead end in CFG for match expressions with no arms
|
2024-10-21 09:59:23 +02:00 |
|
Simon Friis Vindum
|
381f061e7f
|
Rust: Add CFG test for match with no arms
|
2024-10-21 09:29:28 +02:00 |
|
Simon Friis Vindum
|
28f111b7c0
|
Rust: Remove erroneous CFG edge from return to break
|
2024-10-18 13:26:11 +02:00 |
|
Simon Friis Vindum
|
4ca6b0eceb
|
Rust: Add a CFG test for a return within a break
|
2024-10-18 13:22:39 +02:00 |
|
Simon Friis Vindum
|
7aa28a0449
|
Rust: Fix multiple CFG successors in range pattern without lower bound
|
2024-10-18 11:19:21 +02:00 |
|
Simon Friis Vindum
|
b0625f83c6
|
Rust: Add CFG test of range patterns
|
2024-10-18 11:19:19 +02:00 |
|
Simon Friis Vindum
|
272d12fee1
|
Rust: Step correctly over method arguments
Previously the math was wrong and the first argument (with `i` being `0`) had two edges out of it.
|
2024-10-18 11:19:07 +02:00 |
|
Simon Friis Vindum
|
b2032fc6fd
|
Rust: Only normal completion of a let statement initializer steps to the pattern
|
2024-10-17 16:28:57 +02:00 |
|
Simon Friis Vindum
|
e6f1edcbb5
|
Rust: Conditional completion of match arm expression should now flow to next arm
|
2024-10-17 16:25:19 +02:00 |
|
Simon Friis Vindum
|
04f2062942
|
Rust: Label the non-return CFG edge out of question mark as match
|
2024-10-17 16:22:07 +02:00 |
|
Simon Friis Vindum
|
fd5d6255c1
|
Rust: Avoid creating CFG scopes for trait signatures without implementations
|
2024-10-17 16:20:30 +02:00 |
|
Simon Friis Vindum
|
b0cd44e47f
|
Rust: Add CFG test cases
|
2024-10-17 16:09:17 +02:00 |
|
Simon Friis Vindum
|
2d1c62b6df
|
Rust: Fix dead end in CFG for empty tuple and struct patterns
|
2024-10-17 10:40:34 +02:00 |
|
Simon Friis Vindum
|
b97ec405d0
|
Rust: Add CFG tests with empty tuple and struct patterns
|
2024-10-17 10:34:49 +02:00 |
|
Simon Friis Vindum
|
76e1885355
|
Rust: Make mutable variables that are only borrowed immutably amenable for SSA
|
2024-10-16 15:07:46 +02:00 |
|
Simon Friis Vindum
|
577afc3fd5
|
Rust: Support capture of mutable variables in SSA
|
2024-10-16 14:57:46 +02:00 |
|
Simon Friis Vindum
|
a1db359ba1
|
Rust: Add variable tests involving borrowing and capture
|
2024-10-16 13:05:53 +02:00 |
|
Simon Friis Vindum
|
cc1e33fb64
|
Merge pull request #17713 from hvitved/rust/ssa
Rust: Initial SSA implementation
|
2024-10-15 09:59:48 +02:00 |
|
Simon Friis Vindum
|
8e4e663739
|
Rust: Handle question mark operator in CFG
|
2024-10-14 11:38:35 +02:00 |
|
Simon Friis Vindum
|
2f07f1c730
|
Rust: Abnormal completion in scrutinee does not continue to match arms
|
2024-10-14 11:32:22 +02:00 |
|
Simon Friis Vindum
|
23ee7b955c
|
Rust: Add CFG tests for question mark operator and scrutinee with return
|
2024-10-14 11:27:32 +02:00 |
|
Tom Hvitved
|
6290be2922
|
Rust: Initial SSA implementation
|
2024-10-11 19:39:28 +02:00 |
|
Tom Hvitved
|
b0ea175021
|
Rust: Add more variables tests
|
2024-10-11 19:36:04 +02:00 |
|
Arthur Baars
|
5f45402cf7
|
Merge remote-tracking branch 'upstream/main' into aibaars/rust-macros
|
2024-10-11 15:40:07 +02:00 |
|
Arthur Baars
|
9fad5410c0
|
Rust: implement CFG for macros
|
2024-10-11 10:37:24 +02:00 |
|
Tom Hvitved
|
756affa4aa
|
Rust: Fix bugs in LetExprTree and MethodCallExprTree
|
2024-10-10 21:05:01 +02:00 |
|
Tom Hvitved
|
2f14ec9f2a
|
Rust: Include patterns in the CFG
|
2024-10-10 21:05:00 +02:00 |
|
Tom Hvitved
|
f6f54c6e3b
|
Rust: Include parameters in the CFG
|
2024-10-10 21:04:58 +02:00 |
|
Tom Hvitved
|
665da3958a
|
Rust: Add CFG test for nested function
|
2024-10-10 21:04:57 +02:00 |
|
Arthur Baars
|
796da126b8
|
Rust: update expected output
|
2024-10-10 15:52:57 +02:00 |
|
Geoffrey White
|
25b3d76f71
|
Merge pull request #17718 from geoffw0/unusedvar4
Rust: Restrict variables to lowercase (for now).
|
2024-10-10 08:22:52 +01:00 |
|
Geoffrey White
|
5ac9c2db74
|
Rust: Accept variables test change.
|
2024-10-09 17:00:15 +01:00 |
|
Tom Hvitved
|
5afd2d5bf0
|
Rust: Account for captured variables
|
2024-10-09 10:17:01 +02:00 |
|
Tom Hvitved
|
a3a0c2b269
|
Rust: Add more variable tests
|
2024-10-09 10:17:00 +02:00 |
|