1// RUN: %clang_cc1  -fsyntax-only -verify -Wno-objc-root-class %s
2// pr5986
3
4@interface Test {
5  int index;
6}
7- (int) index;
8+ (int) ClassMethod;
9@end
10
11@implementation Test
12- (int) index
13{
14  return index;
15}
16+ (int) ClassMethod
17{
18  return index;	// expected-error {{instance variable 'index' accessed in class method}}
19}
20@end
21
22@interface Test1 {
23}
24- (int) InstMethod;
25+ (int) ClassMethod;
26@end
27
28@implementation Test1
29- (int) InstMethod
30{
31  return index;	// expected-warning {{implicitly declaring library function 'index'}}	\
32                // expected-note {{include the header <strings.h> or explicitly provide a declaration for 'index'}} \
33                // expected-warning {{incompatible pointer to integer conversion returning}}
34}
35+ (int) ClassMethod
36{
37  return index; // expected-warning {{incompatible pointer to integer conversion returning}}
38}
39@end
40
41