DSLX: Can't declare array with parameterized size???
- Dominant language
- C++
- Stars
- 1.9k
- Forks
- 283
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 135
Description
I'm pretty sure this works in other contexts? Like we have tests for this?
Anyway, in some AES code, I have:
```
type asdf = aes_ctr::Command;
fn get_ctr_commands(gcm_cmd: Command) -> aes_ctr::Command[KITTEN] {
trace_fmt!("BLOCKS PER CTR: {:d}", blocks_per_ctr);
let ctr_cmds = asdf[KITTEN]:[aes_ctr::initial_state().command, ...];
let ctr_cmds = for (i, ctr_cmds) in range(0, KITTEN) {
...
```
This results in an error:
```
F0906 10:11:57.367975 3518794 interpreter_main.cc:152] Check failed: ::absl::OkStatus() == (status) (OK vs. INTERNAL: redacted.x:94:33-94:72 : Expected concrete type dimension to be integral; got: KITTEN
```
FURTHERMORE, if I replace `KITTEN` with `u32:4`, then the for loop fails to parse (?) with
```
F0906 10:09:51.425422 3517175 interpreter_main.cc:152] Check failed: ::absl::OkStatus() == (status) (OK vs. INTERNAL: Could not find slot or binding for name: KITTEN @ redacted.x:84:21-84:27
```
???
Contributor guide
Assessment
This issue has not been assessed yet.