Mark successors as reachable/unreachable instead of changing the CFG.

As suggested by Ted, this makes a few warnings less aggressive.

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@215128 91177308-0d34-0410-b5e6-96231b3b80d8
test/Modules: Use FileCheck's -allow-empty instead of "count 0"

Piping stderr into "count 0" in tests doesn't work - things like guard
malloc write to stderr and mess up the count. This comes up all the
time, so I've added a feature to FileCheck to fix it this time.

Fixes test failures caused by r215046 under guard malloc.

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@215129 91177308-0d34-0410-b5e6-96231b3b80d8