]> granicus.if.org Git - clang/commitdiff
Put all ARC-related warnings into the "arc" diagnostic group.
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>
Wed, 22 Jun 2011 18:03:56 +0000 (18:03 +0000)
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>
Wed, 22 Jun 2011 18:03:56 +0000 (18:03 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133626 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Basic/DiagnosticGroups.td
include/clang/Basic/DiagnosticSemaKinds.td

index 6b348d43084c9f4b7450d04efbc02ed42ee30c12..7881ad3ad66f2b176dc35b334eec366212ce1ac0 100644 (file)
@@ -171,7 +171,14 @@ def CustomAtomic : DiagGroup<"custom-atomic-properties">;
 def AtomicProperties : DiagGroup<"atomic-properties",
                                  [ImplicitAtomic, CustomAtomic]>;
 def AutomaticReferenceCountingABI : DiagGroup<"arc-abi">;
-def AutomaticReferenceCounting : DiagGroup<"arc", [AutomaticReferenceCountingABI]>;
+def ARCUnsafeRetainedAssign : DiagGroup<"arc-unsafe-retained-assign">;
+def ARCRetainCycles : DiagGroup<"arc-retain-cycles">;
+def ARCNonPodMemAccess : DiagGroup<"arc-non-pod-memaccess">;
+def AutomaticReferenceCounting : DiagGroup<"arc",
+                                           [AutomaticReferenceCountingABI,
+                                            ARCUnsafeRetainedAssign,
+                                            ARCRetainCycles,
+                                            ARCNonPodMemAccess]>;
 def Selector : DiagGroup<"selector">;
 def NonfragileAbi2 : DiagGroup<"nonfragile-abi2">;
 def Protocol : DiagGroup<"protocol">;
index 17e098664857f49149af4d4bbb8361e55c3f2782..4f3ba0d694b608f8adada7076aeefea239aa76aa 100644 (file)
@@ -2597,7 +2597,8 @@ def warn_arc_non_pod_class_with_object_member : Warning<
   "to make it ABI-compatible">, InGroup<AutomaticReferenceCountingABI>,
   DefaultIgnore;
 def warn_arc_retained_assign : Warning<
-  "assigning retained object to %select{weak|unsafe_unretained}0 variable">;
+  "assigning retained object to %select{weak|unsafe_unretained}0 variable">,
+  InGroup<ARCUnsafeRetainedAssign>;
 def warn_arc_trivial_member_function_with_object_member : Warning<
   "%0 cannot be shared between ARC and non-ARC "
   "code; add a non-trivial %select{copy constructor|copy assignment operator|"
@@ -2641,7 +2642,7 @@ def err_arc_multiple_method_decl : Error<
   "parameter type or attributes">;
 def warn_arc_retain_cycle : Warning<
   "capturing %0 strongly in this block is likely to lead to a retain cycle">,
-  InGroup<DiagGroup<"retain-cycles">>;
+  InGroup<ARCRetainCycles>;
 def note_arc_retain_cycle_owner : Note<
   "block will be retained by %select{the captured object|an object strongly "
   "retained by the captured object}0">;
@@ -2650,7 +2651,7 @@ def note_nontrivial_objc_lifetime : Note<
   "lifetime">;
 def warn_arc_object_memaccess : Warning<
   "%select{destination for|source of}0 this %1 call is a pointer to "
-  "lifetime-qualified type %2">, InGroup<DiagGroup<"non-pod-memaccess">>;
+  "lifetime-qualified type %2">, InGroup<ARCNonPodMemAccess>;
 
 def err_arc_strong_property_lifetime : Error<
   "existing ivar %1 for strong property %0 may not be "