Previously, @implementations of categories that extended unavailable/deprecated/partial @interfaces triggered availability diagnostics. There was no way to turn this off, as we check the use of the unavailable decl outside of the context of the @implementation, so attaching an attribute to the category @interface doesn't do anything. Moreover, this diagnostic can't actually catch any bugs even if it worked correctly, there is no way to use stuff declared in a category without referencing the extended @interface (AFAIK, I'm not fluent in Objective-C), which will trigger the diagnostic.
rdar://32427296
Thanks for taking a look,
Erik