Find all the usages of `--enable-experimental-feature` or
`--enable-upcoming-feature` in the tests and replace some of the
`REQUIRES: asserts` to use `REQUIRES: swift-feature-Foo` instead, which
should correctly apply to depending on the asserts/noasserts mode of the
toolchain for each feature.
Remove some comments that talked about enabling asserts since they don't
apply anymore (but I might had miss some).
All this was done with an automated script, so some formatting weirdness
might happen, but I hope I fixed most of those.
There might be some tests that were `REQUIRES: asserts` that might run
in `noasserts` toolchains now. This will normally be because their
feature went from experimental to upcoming/base and the tests were not
updated.
It makes sense to form an existential of a type that conforms to
`BitwiseCopyable` but such an existential is not itself trivial and
consequently not `BitwiseCopyable`.
Previously, the diagnostics for conforming a non-escaping or
non-copyable type to `_BitwiseCopyable` were emitted even in the case of
an implicit check for conformance. Here this is fixed to suppress the
diagnostics in the case of an implicit check as is done for other
diagnostics.