Fix test/Regression/Assembler/2005-01-31-CallingAggregateFunction.ll
authorChris Lattner <sabre@nondot.org>
Tue, 1 Feb 2005 01:47:42 +0000 (01:47 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 1 Feb 2005 01:47:42 +0000 (01:47 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19966 91177308-0d34-0410-b5e6-96231b3b80d8

lib/AsmParser/llvmAsmParser.y

index 13df7fe97cc1259f9bd17d944d22078eaf0d0dc2..0f2af204477d7549d7a007380b121cd34234aaf9 100644 (file)
@@ -2057,6 +2057,9 @@ InstVal : ArithmeticOps Types ValueRef ',' ValueRef {
       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);
     }