Change the order of a few operations in lowerIterators

We were running into a bug where localCopyPropagation would try and
access a field on an iterator class before it had been created. This is
caused by the fact that fixNumericalGetMemberPrims leaves the AST in an
invalid state that is later fixed in
replaceIteratorFormalsWithIteratorFields.

The fix was to move the calls to localCopyPropagation before
inlineIterators. Thanks to Brad for this one. In the future we may want
to look at creating the iterator class earlier and not inserting
PRIM_GET_MEMBER calls with the expected field index.

The call to fragmentLocalBlocks was removed as it was unnecessary after
this reshuffling.
Retire alist-error.future
Merge pull request #994 from Kyle-B/kb-lowerIterator-fix

Change where localCopyPropagation happens in lowerIterators

We were running into a bug where localCopyPropagation would try and
access a field on an iterator class before it had been created. This is
caused by the fact that fixNumericalGetMemberPrims leaves the AST in an
invalid state that is later fixed in
replaceIteratorFormalsWithIteratorFields.

The fix was to move the calls to localCopyPropagation before
inlineIterators. In the future we may want to look at creating the
iterator class earlier and not inserting PRIM_GET_MEMBER calls with the
expected field index.

The call to fragmentLocalBlocks was removed as it was unnecessary after
this reshuffling.