[PATCH] D154251: Add a flag to disable "duplicate definition of category" warnings

Akira Hatanaka via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Jun 30 12:19:01 PDT 2023


ahatanak created this revision.
ahatanak added reviewers: Bigcheese, vsapsai.
ahatanak added a project: clang.
Herald added a project: All.
ahatanak requested review of this revision.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D154251

Files:
  clang/include/clang/Basic/DiagnosticCommonKinds.td
  clang/test/SemaObjC/check-dup-objc-decls-1.m


Index: clang/test/SemaObjC/check-dup-objc-decls-1.m
===================================================================
--- clang/test/SemaObjC/check-dup-objc-decls-1.m
+++ clang/test/SemaObjC/check-dup-objc-decls-1.m
@@ -1,4 +1,5 @@
 // RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s
+// RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class -Wno-objc-duplicate-category-definition -DIGNORE_DUP_CAT %s
 
 @interface Foo // expected-note {{previous definition is here}}
 @end
@@ -41,8 +42,13 @@
 @protocol DP<Q> @end
 #pragma clang diagnostic pop
 
- at interface A(Cat)<P> @end // expected-note {{previous definition is here}}
- at interface A(Cat)<Q> @end // expected-warning {{duplicate definition of category 'Cat' on interface 'A'}}
+ at interface A(Cat)<P> @end
+ at interface A(Cat)<Q> @end
+
+#ifndef IGNORE_DUP_CAT
+// expected-note at -4 {{previous definition is here}}
+// expected-warning at -4 {{duplicate definition of category 'Cat' on interface 'A'}}
+#endif
 
 // rdar 7626768
 @class NSString;
Index: clang/include/clang/Basic/DiagnosticCommonKinds.td
===================================================================
--- clang/include/clang/Basic/DiagnosticCommonKinds.td
+++ clang/include/clang/Basic/DiagnosticCommonKinds.td
@@ -305,7 +305,8 @@
 
 // Sema && Serialization
 def warn_dup_category_def : Warning<
-  "duplicate definition of category %1 on interface %0">;
+  "duplicate definition of category %1 on interface %0">,
+  InGroup<DiagGroup<"objc-duplicate-category-definition">>;
 
 // Targets
 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D154251.536364.patch
Type: text/x-patch
Size: 1531 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20230630/f82031a9/attachment.bin>


More information about the cfe-commits mailing list