Fix test/Regression/Assembler/2005-01-31-CallingAggregateFunction.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19966 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y
index 13df7fe..0f2af20 100644
--- a/lib/AsmParser/llvmAsmParser.y
+++ b/lib/AsmParser/llvmAsmParser.y
@@ -2057,6 +2057,9 @@
bool isVarArg = ParamTypes.size() && ParamTypes.back() == Type::VoidTy;
if (isVarArg) ParamTypes.pop_back();
+ if (!(*$2)->isFirstClassType() && *$2 != Type::VoidTy)
+ ThrowException("LLVM functions cannot return aggregate types!");
+
Ty = FunctionType::get($2->get(), ParamTypes, isVarArg);
PFTy = PointerType::get(Ty);
}