What if functions can return aggregate values ?

One small step towards multiple return value support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47406 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Devang Patel
2008-02-20 22:36:03 +00:00
parent 172f3118d8
commit 93f9d57bcd
3 changed files with 9 additions and 4 deletions

View File

@@ -179,7 +179,8 @@ Function::Function(const FunctionType *Ty, LinkageTypes Linkage,
ParamAttrs(0) {
SymTab = new ValueSymbolTable();
assert((getReturnType()->isFirstClassType() ||getReturnType() == Type::VoidTy)
assert((getReturnType()->isFirstClassType() ||getReturnType() == Type::VoidTy
|| getReturnType()->getTypeID() == Type::StructTyID)
&& "LLVM functions cannot return aggregate values!");
// If the function has arguments, mark them as lazily built.