From: Steve Naroff Date: Tue, 18 Mar 2008 02:02:04 +0000 (+0000) Subject: Fix rewriter generates invalid C code when no selector found. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2679e4889fbe1a5582d84363857e020354cedeed;p=clang Fix rewriter generates invalid C code when no selector found. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48479 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/Driver/RewriteTest.cpp b/Driver/RewriteTest.cpp index 4f27ab9005..239fa2d026 100644 --- a/Driver/RewriteTest.cpp +++ b/Driver/RewriteTest.cpp @@ -2074,7 +2074,8 @@ Stmt *RewriteTest::SynthMessageExpr(ObjCMessageExpr *Exp) { // Now do the "normal" pointer to function cast. QualType castType = Context->getFunctionType(returnType, &ArgTypes[0], ArgTypes.size(), - Exp->getMethodDecl() ? Exp->getMethodDecl()->isVariadic() : false); + // If we don't have a method decl, force a variadic cast. + Exp->getMethodDecl() ? Exp->getMethodDecl()->isVariadic() : true); castType = Context->getPointerType(castType); cast = new CastExpr(castType, cast, SourceLocation());