diff options
-rw-r--r-- | llvm/lib/AsmParser/LLParser.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/AsmParser/LLParser.cpp b/llvm/lib/AsmParser/LLParser.cpp index d2ce6ec6a95..12bb659dda3 100644 --- a/llvm/lib/AsmParser/LLParser.cpp +++ b/llvm/lib/AsmParser/LLParser.cpp @@ -2035,7 +2035,8 @@ bool LLParser::ParseFunctionHeader(Function *&Fn, bool isDefine) { return Error(LinkageLoc, "invalid function linkage type"); } - if (!FunctionType::isValidReturnType(RetType)) + if (!FunctionType::isValidReturnType(RetType) || + isa<OpaqueType>(RetType)) return Error(RetTypeLoc, "invalid function return type"); if (Lex.getKind() != lltok::GlobalVar) |