Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
No limit on the depth of the return path analysis (#6435)
## Description Fixes #6369. The return path analysis performs a breadth-first traversal of the control flow graph to determine whether every path returns a value. So far the traversal has been limited to 50 iterations of the outer while loop, meaning that if the graph has a depth of more than 50 there are paths that would not be checked. The limit was introduced to ensure that that the analysis terminated. This PR removes this limit. Termination is ensured by keeping track of which nodes have already been visited so that they are not visited again. ## Checklist - [x] I have linked to any relevant issues. - [x] I have commented my code, particularly in hard-to-understand areas. - [x] I have updated the documentation where relevant (API docs, the reference, and the Sway book). - [ ] If my change requires substantial documentation changes, I have [requested support from the DevRel team](https://github.com/FuelLabs/devrel-requests/issues/new/choose) - [x] I have added tests that prove my fix is effective or that my feature works. - [x] I have added (or requested a maintainer to add) the necessary `Breaking*` or `New Feature` labels where relevant. - [x] I have done my best to ensure that my PR adheres to [the Fuel Labs Code Review Standards](https://github.com/FuelLabs/rfcs/blob/master/text/code-standards/external-contributors.md). - [x] I have requested a review from the relevant team or maintainers. --------- Co-authored-by: Sophie Dankel <[email protected]>
- Loading branch information