mirror of
https://github.com/llvm/llvm-project.git
synced 2025-05-14 00:36:06 +00:00

The warning this inhibits, -Wobjc-root-class, is opt-in for now. However, all clang unit tests that would trigger the warning have been updated to use -Wno-objc-root-class. <rdar://problem/7446698> llvm-svn: 154187
53 lines
799 B
Objective-C
53 lines
799 B
Objective-C
// RUN: %clang_cc1 -fsyntax-only -triple x86_64-apple-darwin10 -fblocks -verify -Wno-objc-root-class %s
|
|
// RUN: %clang_cc1 -x objective-c++ -fsyntax-only -triple x86_64-apple-darwin10 -fblocks -verify -Wno-objc-root-class %s
|
|
// rdar://9154582
|
|
|
|
@interface Blocky @end
|
|
|
|
@implementation Blocky {
|
|
int _a;
|
|
}
|
|
- (int)doAThing {
|
|
^{
|
|
char self;
|
|
return _a;
|
|
}();
|
|
return _a;
|
|
}
|
|
|
|
@end
|
|
|
|
|
|
// rdar://9284603
|
|
@interface ShadowSelf
|
|
{
|
|
int _anIvar;
|
|
}
|
|
@end
|
|
|
|
@interface C {
|
|
int _cIvar;
|
|
}
|
|
@end
|
|
|
|
@implementation ShadowSelf
|
|
- (void)doSomething {
|
|
__typeof(self) newSelf = self;
|
|
{
|
|
__typeof(self) self = newSelf;
|
|
(void)_anIvar;
|
|
}
|
|
{
|
|
C* self;
|
|
(void) _anIvar;
|
|
}
|
|
}
|
|
- (void)doAThing {
|
|
^{
|
|
id self;
|
|
(void)_anIvar;
|
|
}();
|
|
}
|
|
@end
|
|
|