diff --git a/lib/CodeGen/CodeGenModule.cpp b/lib/CodeGen/CodeGenModule.cpp
index 422415c..a187f8a 100644
--- a/lib/CodeGen/CodeGenModule.cpp
+++ b/lib/CodeGen/CodeGenModule.cpp
@@ -779,13 +779,24 @@
 llvm::GlobalValue *
 CodeGenModule::EmitForwardFunctionDefinition(const FunctionDecl *D,
                                              const llvm::Type *Ty) {
-  if (!Ty)
+  bool DoSetAttributes = true;
+  if (!Ty) {
     Ty = getTypes().ConvertType(D->getType());
+    if (!isa<llvm::FunctionType>(Ty)) {
+      // This function doesn't have a complete type (for example, the return
+      // type is an incomplete struct). Use a fake type instead, and make
+      // sure not to try to set attributes.
+      Ty = llvm::FunctionType::get(llvm::Type::VoidTy,
+                                   std::vector<const llvm::Type*>(), false);
+      DoSetAttributes = false;
+    }
+  }
   llvm::Function *F = llvm::Function::Create(cast<llvm::FunctionType>(Ty), 
                                              llvm::Function::ExternalLinkage,
                                              getMangledName(D),
                                              &getModule());
-  SetFunctionAttributes(D, F);
+  if (DoSetAttributes)
+    SetFunctionAttributes(D, F);
   return F;
 }
 
