r286531 - Don't require nullability on 'va_list' harder.
Jordan Rose via cfe-commits
cfe-commits at lists.llvm.org
Thu Nov 10 16:23:59 PST 2016
Author: jrose
Date: Thu Nov 10 18:23:59 2016
New Revision: 286531
URL: http://llvm.org/viewvc/llvm-project?rev=286531&view=rev
Log:
Don't require nullability on 'va_list' harder.
Platform headers don't always define 'va_list' in terms of Clang's
'__builtin_va_list', so in addition to checking for our own
synthesized decl, also just look for typedefs literally named
'va_list'. Better to err on the side of false negatives here.
Fix-up for rdar://problem/25846421.
Modified:
cfe/trunk/lib/Sema/SemaType.cpp
Modified: cfe/trunk/lib/Sema/SemaType.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaType.cpp?rev=286531&r1=286530&r2=286531&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaType.cpp (original)
+++ cfe/trunk/lib/Sema/SemaType.cpp Thu Nov 10 18:23:59 2016
@@ -3928,6 +3928,9 @@ static TypeSourceInfo *GetFullTypeForDec
do {
if (typedefTy->getDecl() == vaListTypedef)
return true;
+ if (auto *name = typedefTy->getDecl()->getIdentifier())
+ if (name->isStr("va_list"))
+ return true;
typedefTy = typedefTy->desugar()->getAs<TypedefType>();
} while (typedefTy);
return false;
More information about the cfe-commits
mailing list