Forbid name shadowing on comprehensions
Open
- Dominant language
- Rust
- Stars
- 96
- Forks
- 39
- PR merge metrics
- No merged PRs in 30d
Description
The following expression is currently allowed [ref](https://github.com/0xPolygonMiden/air-script/blob/next/air-script-core/src/access.rs#L106):
```
[x + y + z for (x, y, z) in (x, 0..5, z[1..6])]
```
In the case above, the variable `x` with the iterable is shadowed with the yielded values `x`. This can be confusing at times, and may make sense to disallow that, requiring the user to be explicit and write something like:
```
[x_ + y + z for (x_, y, z) in (x, 0..5, z[1..6])]
```
The idea is to be explicit and hopefully prevent bugs.
Contributor guide
Assessment
This issue has not been assessed yet.