[Chapel Merge] Recursive iterator futures for #18218 and #18236

Branch: refs/heads/main
Revision: 735a9f7
Author: ronawho
Log Message:

Merge pull request #18252 from cassella/recursive-iterator-futures

Recursive iterator futures for #18218 and #18236

[contributed by @cassella, reviewed by @ronawho]

Add futures for two recursive iterator issues:

#18236: compiler segfault on suspect recursive iterator
#18218, internal error, loop over findfiles() calls throwing function

For the second, I was unable to reproduce this error writing my own
recursive iterator in place of findfiles().

I was concerned that a change to these iterators in the FileSystem
module might inadvertently change the behavior of this test. So I
added snapshots of findfiles and walkdirs() to the test for it to
call.

Modified Files:
A test/functions/iterators/recursive/recursive-iter-findfilesfailure.bad

A test/functions/iterators/recursive/recursive-iter-findfilesfailure.chpl
A test/functions/iterators/recursive/recursive-iter-findfilesfailure.future
A test/functions/iterators/recursive/recursive-iter-findfilesfailure.good
A test/functions/iterators/recursive/recursive-iter-yield-recursive-iter.bad
A test/functions/iterators/recursive/recursive-iter-yield-recursive-iter.chpl
A test/functions/iterators/recursive/recursive-iter-yield-recursive-iter.future
A test/functions/iterators/recursive/recursive-iter-yield-recursive-iter.good

Compare: https://github.com/chapel-lang/chapel/compare/7c5fa9a5443a...735a9f769529