From e30752c93bf3c049d0d4ed657f762789d11ef27b Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 9 Oct 2012 19:52:38 +0000 Subject: -fcatch-undefined-behavior: emit calls to the runtime library whenever one of the checks fails. llvm-svn: 165536 --- clang/lib/CodeGen/CodeGenFunction.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'clang/lib/CodeGen/CodeGenFunction.cpp') diff --git a/clang/lib/CodeGen/CodeGenFunction.cpp b/clang/lib/CodeGen/CodeGenFunction.cpp index a86c2e4..d7fcf9f 100644 --- a/clang/lib/CodeGen/CodeGenFunction.cpp +++ b/clang/lib/CodeGen/CodeGenFunction.cpp @@ -544,7 +544,9 @@ void CodeGenFunction::GenerateCode(GlobalDecl GD, llvm::Function *Fn, if (getContext().getLangOpts().CPlusPlus && !FD->hasImplicitReturnZero() && !FD->getResultType()->isVoidType() && Builder.GetInsertBlock()) { if (CatchUndefined) - EmitCheck(Builder.getFalse()); + EmitCheck(Builder.getFalse(), "missing_return", + EmitCheckSourceLocation(FD->getLocation()), + llvm::ArrayRef()); Builder.CreateUnreachable(); Builder.ClearInsertionPoint(); } -- cgit v1.1