xref: /aosp_15_r20/external/clang/test/SemaObjC/method-arg-qualifier-warning.m (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li// RUN: %clang_cc1  -fsyntax-only -verify %s
2*67e74705SXin Li
3*67e74705SXin Litypedef signed char BOOL;
4*67e74705SXin Li
5*67e74705SXin Li@interface NSString
6*67e74705SXin Li- (BOOL)isEqualToString:(NSString *)aString; // expected-note 2{{passing argument to parameter 'aString' here}}
7*67e74705SXin Li@end
8*67e74705SXin Li
9*67e74705SXin Listatic const NSString * Identifier1 =   @"Identifier1";
10*67e74705SXin Listatic NSString const * Identifier2 =   @"Identifier2";
11*67e74705SXin Listatic NSString * const Identifier3 =   @"Identifier3";
12*67e74705SXin Li
13*67e74705SXin Liint main () {
14*67e74705SXin Li
15*67e74705SXin Li    [@"Identifier1" isEqualToString:Identifier1]; // expected-warning {{sending 'const NSString *' to parameter of type 'NSString *' discards qualifiers}}
16*67e74705SXin Li    [@"Identifier2" isEqualToString:Identifier2]; // expected-warning {{sending 'const NSString *' to parameter of type 'NSString *' discards qualifiers}}
17*67e74705SXin Li    [@"Identifier3" isEqualToString:Identifier3];
18*67e74705SXin Li    return 0;
19*67e74705SXin Li}
20*67e74705SXin Li
21