nightly-2024-05-02: feat: Complex outputs from acir call (#4952)
Pre-release
Pre-release
·
1300 commits
to master
since this release
# Description ## Problem\* Resolves #4608 ## Summary\* The change ended up being quite simple where we just have to call the flattened size on the type rather than `try_get_array_length`. We type check that any other types such as slices or references are not returned from the foldable function being called so this call is safe to do. A test was also included in `fold_complex_outputs` that checks whether we are able to successfully modify a complex struct in a foldable function correctly. ## Additional Context ## Documentation\* Check one: - [ ] No documentation needed. - [ ] Documentation included in this PR. - [x] **[For Experimental Features]** Documentation to be submitted in a separate PR. # PR Checklist\* - [x] I have tested the changes locally. - [x] I have formatted the changes with [Prettier](https://prettier.io/) and/or `cargo fmt` on default settings.