diff options
| author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2022-03-05 11:31:29 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-03-05 11:31:29 +0000 |
| commit | 8f504dc87384b0fa41a55327566f0db9c08eb98c (patch) | |
| tree | 4a2d8a06d385c45f17b4b40afe217ea125d137f7 /tests/mir-opt/lower_array_len.array_len_raw.NormalizeArrayLen.diff | |
| parent | e844b1570a4ddf2ece7ed7c092eaa136ce1d3878 (diff) | |
| parent | 10d30be331a2975e89bdc5e45ec941bb00eb36ae (diff) | |
| download | rust-8f504dc87384b0fa41a55327566f0db9c08eb98c.tar.gz rust-8f504dc87384b0fa41a55327566f0db9c08eb98c.zip | |
Merge #11598
11598: feat: Parse destructuring assignment r=Veykril a=ChayimFriedman2
Part of #11532.
Lowering is not as easy and may not even be feasible right now as it requires generating identifiers: `(a, b) = (b, a)` is desugared into
```rust
{
let (<gensym_a>, <gensym_b>) = (b, a);
a = <gensym_a>;
b = <gensym_b>;
}
```
rustc uses hygiene to implement that, but we don't support hygiene yet.
However, I think parsing was the main problem as lowering will just affect type inference, and while `{unknown}` is not nice it's much better than a syntax error.
I'm still looking for the best way to do lowering, though.
Fixes #11454.
Co-authored-by: Chayim Refael Friedman <chayimfr@gmail.com>
Diffstat (limited to 'tests/mir-opt/lower_array_len.array_len_raw.NormalizeArrayLen.diff')
0 files changed, 0 insertions, 0 deletions
