[PATCH] D61147: [Sema][ObjC] Disable -Wunused-parameter for ObjC methods
Akira Hatanaka via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Apr 30 15:56:06 PDT 2019
ahatanak updated this revision to Diff 197469.
ahatanak retitled this revision from "[Sema][ObjC] Add a flavor of -Wunused-parameter that doesn't diagnose unused parameters of ObjC methods" to "[Sema][ObjC] Disable -Wunused-parameter for ObjC methods".
ahatanak edited the summary of this revision.
ahatanak added a comment.
Disable the warning for ObjC methods.
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D61147/new/
https://reviews.llvm.org/D61147
Files:
lib/Sema/SemaDecl.cpp
test/SemaObjC/method-unused-attribute.m
test/SemaObjC/unused.m
Index: test/SemaObjC/unused.m
===================================================================
--- test/SemaObjC/unused.m
+++ test/SemaObjC/unused.m
@@ -33,7 +33,7 @@
// expected-note {{introduce a parameter name to make 'x' part of the selector}} \
// expected-note {{or insert whitespace before ':' to use 'x' as parameter name and have an empty entry in the selector}}
-(int)y: // expected-warning {{unused}} expected-warning {{'y' used as the name of the previous parameter rather than as part of the selector}} \
+(int)y: // expected-warning {{'y' used as the name of the previous parameter rather than as part of the selector}} \
// expected-note {{introduce a parameter name to make 'y' part of the selector}} \
// expected-note {{or insert whitespace before ':' to use 'y' as parameter name and have an empty entry in the selector}}
(int) __attribute__((unused))z { return x; }
Index: test/SemaObjC/method-unused-attribute.m
===================================================================
--- test/SemaObjC/method-unused-attribute.m
+++ test/SemaObjC/method-unused-attribute.m
@@ -1,5 +1,9 @@
// RUN: %clang_cc1 -fsyntax-only -Wunused-parameter -verify -Wno-objc-root-class %s
+// -Wunused-parameter ignores ObjC method parameters that are unused.
+
+// expected-no-diagnostics
+
@interface INTF
- (void) correct_use_of_unused: (void *) notice : (id)another_arg;
- (void) will_warn_unused_arg: (void *) notice : (id)warn_unused;
@@ -9,7 +13,7 @@
@implementation INTF
- (void) correct_use_of_unused: (void *) __attribute__((unused)) notice : (id) __attribute__((unused)) newarg{
}
-- (void) will_warn_unused_arg: (void *) __attribute__((unused)) notice : (id)warn_unused {} // expected-warning {{unused parameter 'warn_unused'}}
-- (void) unused_attr_on_decl_ignored: (void *) will_warn{} // expected-warning {{unused parameter 'will_warn'}}
+- (void) will_warn_unused_arg: (void *) __attribute__((unused)) notice : (id)warn_unused {}
+- (void) unused_attr_on_decl_ignored: (void *) will_warn{}
@end
Index: lib/Sema/SemaDecl.cpp
===================================================================
--- lib/Sema/SemaDecl.cpp
+++ lib/Sema/SemaDecl.cpp
@@ -13354,8 +13354,6 @@
assert(MD == getCurMethodDecl() && "Method parsing confused");
MD->setBody(Body);
if (!MD->isInvalidDecl()) {
- if (!MD->hasSkippedBody())
- DiagnoseUnusedParameters(MD->parameters());
DiagnoseSizeOfParametersAndReturnValue(MD->parameters(),
MD->getReturnType(), MD);
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D61147.197469.patch
Type: text/x-patch
Size: 2629 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20190430/a8ffd783/attachment-0001.bin>
More information about the cfe-commits
mailing list