dcoughlin added a comment. It's really great to see this!
================ Comment at: lib/Sema/SemaExpr.cpp:15200 @@ -15182,2 +15199,3 @@ // platform. - Diag(AtLoc, diag::warn_available_using_star_case) << RParen << Platform; + Diag(AtLoc, diag::warn_available_using_star_case) + << SourceRange(AtLoc, RParen) << Platform; ---------------- In Swift we don't warn for this scenario and don't require the programmer to explicitly account for the current platform. The rationale behind '*' was to make platform bringup easier. Because new platforms are typically forked from existing platforms, treating '*' as the minimum deployment target on the current platform would typically do the "right thing" on new platforms. In cases where it doesn't, the user would still get a diagnostic if she tried to use a potentially unavailable API. If I understand it correctly, with the behavior here anyone porting code to a new platform will get a warning for each `@available`. Is this what you want? https://reviews.llvm.org/D23003 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits