IRgen: Fix silly thinko in r112021, which was generating code for the same expr

twice. This showed up as an assert on the odd test case because we generated the
decl map entry twice.

llvm-svn: 112943
This commit is contained in:
Daniel Dunbar 2010-09-03 02:07:00 +00:00
parent a85ec10483
commit 2f8df98c92
2 changed files with 5 additions and 1 deletions

View File

@ -1033,7 +1033,7 @@ Value *ScalarExprEmitter::EmitCastExpr(CastExpr *CE) {
// Handle conversion to bool correctly.
if (DestTy->isBooleanType())
return EmitScalarConversion(Visit(E), E->getType(), DestTy);
return EmitScalarConversion(Src, E->getType(), DestTy);
return Builder.CreatePtrToInt(Src, ConvertType(DestTy));
}

View File

@ -6,3 +6,7 @@
static _Bool f0_0(void *a0) { return (_Bool) a0; }
int f0() { return f0_0((void*) 0x2); }
_Bool f1(void) {
return (_Bool) ({ void (*x)(); x = 0; });
}