Do not call setLength on potentially uninitialized arrays.

Switch the order in the compilation of setLength since
```haskell
setLength var61 (sequential var61 (...))
```
will generate the code:
```C
setLength(out, v61);
initArray(out, ..)
```
as things are right now, and out might not have been initialized at the point when setLength is called.