Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions compiler/noirc_evaluator/src/ssa/opt/die.rs
Original file line number Diff line number Diff line change
Expand Up @@ -377,13 +377,12 @@ fn handle_array_get_group(
next_out_of_bounds_index: &mut Option<usize>,
possible_index_out_of_bounds_indexes: &mut Vec<usize>,
) {
let Some(array_length) = function.dfg.try_get_array_length(*array) else {
if function.dfg.try_get_array_length(*array).is_none() {
// Nothing to do for slices
return;
};

let flattened_size = function.dfg.type_of_value(*array).flattened_size();
let element_size = flattened_size / array_length;
let element_size = function.dfg.type_of_value(*array).element_size();
if element_size <= 1 {
// Not a composite type
return;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
[package]
name = "empty_composite_array_get"
type = "bin"
authors = [""]
compiler_version = ">=0.32.0"

[dependencies]
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
empty_input = []
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
fn main(empty_input: [(Field, Field); 0]) {
let empty_array: [(Field, Field); 0] = [];
let _ = empty_array[0];

let _ = empty_input[0];
}