def err_availability_redundant : Error<
"redundant %0 availability change; only the last specified change will " "be used">;
def warn_availability_and_unavailable : Warning<
- "'unavailable' availability overrides all other availability information">;
+ "'unavailable' availability overrides all other availability information">,
+ InGroup<Availability>;
// Language specific pragmas
// - Generic warnings
// Availability attribute
def warn_availability_unknown_platform : Warning<
- "unknown platform %0 in availability macro">;
+ "unknown platform %0 in availability macro">, InGroup<Availability>;
def warn_availability_version_ordering : Warning<
"feature cannot be %select{introduced|deprecated|obsoleted}0 in %1 version "
"%2 before it was %select{introduced|deprecated|obsoleted}3 in version %4; "
- "attribute ignored">;
-
+ "attribute ignored">, InGroup<Availability>;
+
// Thread Safety Attributes
def warn_thread_attribute_ignored : Warning<
"ignoring %0 attribute because its argument is invalid">,
The list of warnings below should NEVER grow. It should gradually shrink to 0.
-CHECK: Warnings without flags (248):
+CHECK: Warnings without flags (245):
CHECK-NEXT: ext_anonymous_struct_union_qualified
CHECK-NEXT: ext_binary_literal
CHECK-NEXT: ext_cast_fn_obj
CHECK-NEXT: warn_attribute_weak_on_field
CHECK-NEXT: warn_attribute_weak_on_local
CHECK-NEXT: warn_attribute_wrong_decl_type
-CHECK-NEXT: warn_availability_and_unavailable
-CHECK-NEXT: warn_availability_unknown_platform
-CHECK-NEXT: warn_availability_version_ordering
CHECK-NEXT: warn_bad_receiver_type
CHECK-NEXT: warn_bitfield_width_exceeds_type_size
CHECK-NEXT: warn_bool_switch_condition