From: Daniel Dunbar Date: Tue, 3 Feb 2009 23:55:40 +0000 (+0000) Subject: Use CGCall infrastructure to call enumeration mutation function. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2b2105e92fc77016992dae3f117f526e73af5ea9;p=clang Use CGCall infrastructure to call enumeration mutation function. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63685 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/CGObjC.cpp b/lib/CodeGen/CGObjC.cpp index ef4cf04073..1443f2e4e9 100644 --- a/lib/CodeGen/CGObjC.cpp +++ b/lib/CodeGen/CGObjC.cpp @@ -472,7 +472,13 @@ void CodeGenFunction::EmitObjCForCollectionStmt(const ObjCForCollectionStmt &S) Builder.CreateBitCast(Collection, ConvertType(getContext().getObjCIdType()), "tmp"); - Builder.CreateCall(EnumerationMutationFn, V); + CallArgList Args2; + Args2.push_back(std::make_pair(RValue::get(V), + getContext().getObjCIdType())); + // FIXME: We shouldn't need to get the function info here, the + // runtime already should have computed it to build the function. + EmitCall(CGM.getTypes().getFunctionInfo(getContext().VoidTy, Args), + EnumerationMutationFn, Args2); EmitBlock(WasNotMutated);