[InstCombine] Preserve NSW flags for `lshr (mul nuw X, C1), C2 -> mul nuw nsw X,...
[llvm-project.git] / clang / test / SemaObjC / undeclared-selector.m
blob091451003f55f55f67d79133fa43d6c8cc4342f5
1 // RUN: %clang_cc1  -fsyntax-only -Wundeclared-selector -verify -Wno-objc-root-class %s
3 typedef struct objc_selector *SEL;
5 @interface MyClass
7 + (void) methodA;
8 - (void) methodB;
9 + (void) methodD;
10 - (void) methodF;
12 @end
14 @implementation MyClass
16 + (void) methodA {}
17 - (void) methodB {}
18 + (void) methodD
20   SEL d = @selector(methodD); /* Ok */
21   SEL e = @selector(methodE);
24 - (void) methodE
26   SEL e = @selector(methodE); /* Ok */
29 - (void) methodF
31   SEL e = @selector(methodE); /* Ok */
34 @end
36 int main (void)
38   SEL a = @selector(methodA); /* Ok */
39   SEL b = @selector(methodB); /* Ok */
40   SEL c = @selector(methodC);  // expected-warning {{undeclared selector 'methodC'}}
41   SEL d = @selector(methodD); /* Ok */
42   SEL e = @selector(methodE); /* Ok */
43   return 0;
44