Check whether out of bound when access a known length array with a constant index #11998
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
fixes Issue#11762
Issue#11762 points that
Array references with known length are not flagged when indexed out of bounds
.To fix this problem, it is needed to add check for
Expr::Index
. We expand this issue include reference and direct accessing a array.When we access a array with a constant index
off
, and already know the lengthsize
, ifoff >= size
, these code will throw an error, instead rustc's lint checking them or runtime panic happening.changelog: [
out_of_bound_indexing
]: Add check for illegal accessing known length array with a constant index