blob: d0d6be84a65e04e7e6e1220f99d06840f15ff8a4 [file] [log] [blame]
Patrick Beardb2f68202012-04-06 18:12:22 +00001// RUN: %clang_cc1 -verify -fsyntax-only -Wno-objc-root-class %s
Andy Gibbs8e8fb3b2012-10-19 12:44:48 +00002// expected-no-diagnostics
Fariborz Jahanian24fce282010-11-09 02:16:57 +00003// rdar://8225011
Fariborz Jahanian69d56242010-07-22 23:33:21 +00004
Fariborz Jahanianb0c23012011-02-21 17:31:28 +00005int glob;
Fariborz Jahanian69d56242010-07-22 23:33:21 +00006
7@interface I
Fariborz Jahanianb0c23012011-02-21 17:31:28 +00008@property int glob;
Fariborz Jahanianb1d58e32010-07-29 16:53:53 +00009@property int p;
10@property int le;
11@property int l;
12@property int ls;
13@property int r;
Fariborz Jahanian69d56242010-07-22 23:33:21 +000014@end
15
Fariborz Jahanianb0c23012011-02-21 17:31:28 +000016// rdar://9027673
17// Warning on future name lookup rule is removed.
Fariborz Jahanian69d56242010-07-22 23:33:21 +000018@implementation I
Fariborz Jahanian527eec82011-07-22 01:06:53 +000019- (int) Meth { return glob; } // no warning
Fariborz Jahanian78980052011-08-01 22:39:49 +000020@synthesize glob;
Fariborz Jahanian24fce282010-11-09 02:16:57 +000021// rdar://8248681
Fariborz Jahanianb1d58e32010-07-29 16:53:53 +000022- (int) Meth1: (int) p {
23 extern int le;
24 int l = 1;
25 static int ls;
26 register int r;
27 p = le + ls + r;
28 return l;
29}
Fariborz Jahanian78980052011-08-01 22:39:49 +000030@dynamic p;
31@dynamic le;
32@dynamic l;
33@dynamic ls;
34@dynamic r;
Fariborz Jahanian69d56242010-07-22 23:33:21 +000035@end
Fariborz Jahanianb1d58e32010-07-29 16:53:53 +000036
37