// 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 // expected-no-diagnostics // 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