From: Chris Lattner Date: Mon, 5 Jan 2009 08:04:33 +0000 (+0000) Subject: diagnose PR3281:crash02.ll with: X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=d77d04c323f856b07c6e46450e7578dd09c0165f;p=oota-llvm.git diagnose PR3281:crash02.ll with: llvm-as: crash02.ll:1:62: invalid function return type declare { <{ <{}>, void ([1898 x { void ()* }], opaque, ...) (), fp128 * }>, opaque } @t () ^ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61679 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/AsmParser/LLParser.cpp b/lib/AsmParser/LLParser.cpp index 12bb659dda3..681a6622b3c 100644 --- a/lib/AsmParser/LLParser.cpp +++ b/lib/AsmParser/LLParser.cpp @@ -1136,6 +1136,9 @@ bool LLParser::ParseArgumentList(std::vector &ArgList, bool LLParser::ParseFunctionType(PATypeHolder &Result) { assert(Lex.getKind() == lltok::lparen); + if (!FunctionType::isValidReturnType(Result)) + return TokError("invalid function return type"); + std::vector ArgList; bool isVarArg; unsigned Attrs;