This runtime API can be used to lower any flavor of array constructors,
but is mainly intended to be used with:
- array constructors for which the extent or length parameters cannot be computed without lowering some ac-value or ac-implied-do-control that cannot be pre-evaluated.
- array constructors of a derived type with allocatable component where copy is not trivial or PDTS.
Example of use cases:
- [((i+j,i=1, ifoo()), j=1,n)] where ifoo() is not pure.
- [return_allocatable_array(), return_allocatable_array()]
"it's" should be its ("it's" is a contraction of "it is" while "its" is the possessive pronoun of "it").