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;