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; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits