If the comment at the beginning of the file is correct, then:
- remove_literals is no longer necessary (and is_suitable_array_initializer can go too -- any expression is now a suitable value)
- remove_implicit_array_copies should also no longer be necessary.
However, it looks like these phases are still required because the desugaring of array repeat expressions does leave assignments at array types.
@Lin23299 what is the likelihood that we can remove some of these phases? I feel like if the builtin for array_repeat were to return directly a Eurydice_arr<T> (instead of returning a TArray), then we could eliminate these phases entirely.
Let me know your thoughts! Thanks.