Fixes https://github.com/llvm/llvm-project/issues/57539
Previously things outside of #if blocks were parsed as if only the
first branch of the conditional compilation branch existed. Unless the
first condition is 0, then the outer parts would be parsed as if
anything inside the conditional parts didn't exist. Now we use the
second conditional branch if the first condition is 0.