On Mar 11, 2012, at 1:11 PM, Jordan Rose wrote: > On Mar 6, 2012, at 12:05, Ted Kremenek wrote: > >> Modified: cfe/trunk/lib/AST/Expr.cpp >> URL: >> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/Expr.cpp?rev=152137&r1=152136&r2=152137&view=diff >> ============================================================================== >> --- cfe/trunk/lib/AST/Expr.cpp (original) >> +++ cfe/trunk/lib/AST/Expr.cpp Tue Mar 6 14:05:56 2012 >> @@ -2089,6 +2089,16 @@ >> // specs. >> case ObjCMessageExprClass: >> case ObjCPropertyRefExprClass: >> + case ObjCSubscriptRefExprClass: >> + return CT_Can; >> + >> + // All the ObjC literals that are implemented as calls are >> + // potentially throwing unless we decide to close off that >> + // possibility. >> + case ObjCArrayLiteralClass: >> + case ObjCBoolLiteralExprClass: >> + case ObjCDictionaryLiteralClass: >> + case ObjCNumericLiteralClass: >> return CT_Can; > > Isn't ObjCBoolLiteralExprClass just __objc_yes/__objc_no, i.e. the same as > C++ true/false? That can't throw! (@YES can, of course, but that's different.)
@__objc_yes/@__objc_no are calls which return "NSNumber *" objects. - Fariborz > > > (This is an enormous patch, so there might be things going on I don't > understand, which is why I didn't just change this myself.) > > Jordy > _______________________________________________ > cfe-commits mailing list > [email protected] > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
