The problem with debug mode tests is that it isn't known which particular
_LIBCPP_ASSERT causes the test to exit, and as shown by
https://reviews.llvm.org/D100029 and 2908eb20ba7 it might be not the
expected one.
This patch implements the appriach suggested by @Quuxplusone in D100029
that allows us to cautch only those _LIBCPP_ASSERTs that are going to be
tested; all others will produce an error.
Could we replace this whole bit with