Using a function in an if condition when set -e is set doesn't seem to
break out or return false which means the workaround from 41ca86129f
never gets triggered.
Based on testing this issue seems to only occur with clang_7, so
we should be able to revert this when the default llvm versions are
updated.
Fixes #66811
This also updates the bootstrap tool builder to LLVM 5, but not the ones
we actually use for bootstrap. I'll make that change in a subsequent commit
so as to provide traceable provenance of the bootstrap tools.