summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema
diff options
context:
space:
mode:
authorDavid Majnemer <david.majnemer@gmail.com>2016-01-26 01:12:17 +0000
committerDavid Majnemer <david.majnemer@gmail.com>2016-01-26 01:12:17 +0000
commit145abde152ec206aa6857cfed2b6dd785c395cc8 (patch)
treef146acc6c640baf4d48b58fbb766cdb2f14752ba /clang/lib/Sema
parentff33e3636d26b165048e333f1d55a9d3088d4bf3 (diff)
downloadbcm5719-llvm-145abde152ec206aa6857cfed2b6dd785c395cc8.tar.gz
bcm5719-llvm-145abde152ec206aa6857cfed2b6dd785c395cc8.zip
[MS Compat] Don't crash if __GetExceptionInfo is in global scope
__GetExceptionInfo triggered Sema::LazilyCreateBuiltin which tries to create a non-templated function decl. This is unnecessary and ill-advised, there is no need for us to create a declaration for such a builtin. This fixes PR26298. llvm-svn: 258762
Diffstat (limited to 'clang/lib/Sema')
-rw-r--r--clang/lib/Sema/SemaDecl.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp
index 6adbc3fab6f..e3365b559a7 100644
--- a/clang/lib/Sema/SemaDecl.cpp
+++ b/clang/lib/Sema/SemaDecl.cpp
@@ -1748,6 +1748,9 @@ NamedDecl *Sema::LazilyCreateBuiltin(IdentifierInfo *II, unsigned ID,
<< Context.BuiltinInfo.getName(ID);
}
+ if (R.isNull())
+ return nullptr;
+
DeclContext *Parent = Context.getTranslationUnitDecl();
if (getLangOpts().CPlusPlus) {
LinkageSpecDecl *CLinkageDecl =
OpenPOWER on IntegriCloud