summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-06-05 00:11:27 +0000
committerChris Lattner <sabre@nondot.org>2004-06-05 00:11:27 +0000
commitf878218c972dc570eb50e739c2ee2b9dd75ee5dd (patch)
tree2b1c98d82e3b44beea59f403120300a03a65f7c8
parente1cacce40096f874801149fb029ec79bfb2ee35a (diff)
downloadexternal_llvm-f878218c972dc570eb50e739c2ee2b9dd75ee5dd.zip
external_llvm-f878218c972dc570eb50e739c2ee2b9dd75ee5dd.tar.gz
external_llvm-f878218c972dc570eb50e739c2ee2b9dd75ee5dd.tar.bz2
As much as I dislike doing this, it's the only fix for VC8.0 that I can come
up with, even though it's perfectly conformant code. :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14034 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/VMCore/BasicBlock.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/VMCore/BasicBlock.cpp b/lib/VMCore/BasicBlock.cpp
index dd529f8..d018cd2 100644
--- a/lib/VMCore/BasicBlock.cpp
+++ b/lib/VMCore/BasicBlock.cpp
@@ -181,7 +181,8 @@ void BasicBlock::removePredecessor(BasicBlock *Pred) {
} else {
// Okay, now we know that we need to remove predecessor #pred_idx from all
// PHI nodes. Iterate over each PHI node fixing them up
- for (iterator II = begin(); PHINode *PN = dyn_cast<PHINode>(II); ++II)
+ PHINode *PN;
+ for (iterator II = begin(); PN = dyn_cast<PHINode>(II); ++II)
PN->removeIncomingValue(Pred);
}
}
@@ -221,8 +222,9 @@ BasicBlock *BasicBlock::splitBasicBlock(iterator I, const std::string &BBName) {
// Loop over any phi nodes in the basic block, updating the BB field of
// incoming values...
BasicBlock *Successor = *I;
+ PHINode *PN;
for (BasicBlock::iterator II = Successor->begin();
- PHINode *PN = dyn_cast<PHINode>(II); ++II) {
+ PN = dyn_cast<PHINode>(II); ++II) {
int IDX = PN->getBasicBlockIndex(this);
while (IDX != -1) {
PN->setIncomingBlock((unsigned)IDX, New);