This will hopefully prevent random line breaks from being inserted into the
`-dump-ast` output and interfering with FileCheck's matching.
Resolves rdar://148855879.
Unblocks the Windows toolchain build, which is experiencing a weird symptom
that causes this test to fail only in that context. The failure is tracked by
https://github.com/swiftlang/swift/issues/80582.
Instead, use the `%target-swift-5.1-abi-triple` substitution to compile the tests
for deployment to the minimum OS versions required for use of _Concurrency APIs.
When performing a throwing operation on an opened existential, the
thrown error type could be dependent on the opened existential type,
e.g., if the thrown error type is an associated type of one of the
corresponding protocols. In such cases, type-erase the thrown error
type at the point where it is thrown so that the opened archetype
cannot "escape" the enclosing opened-existential operation via
throwing.
There is an alternative approach we could take that has
`OpenExistentialExpr` handle the type erasure of the thrown error
type. This would make `OpenExistentialExpr` a catch node, which would
type-erase and then rethrow. This is arguably better, because it could
mean fewer places where we do the type erasure and is more in line
with the design of opened archetypes. However, it would also be much
more invasive, and we should be able to do this later.
Fixes rdar://124273722.