// RUN: %clang_cc1 -fsyntax-only -verify -std=c++11 %s | |
// expected-no-diagnostics | |
struct HasValueType { | |
typedef int value_type; | |
}; | |
__attribute__((objc_root_class)) | |
@interface Foo | |
{ | |
@protected | |
HasValueType foo; | |
} | |
@property (nonatomic) HasValueType bar; | |
@end | |
@implementation Foo | |
@synthesize bar; | |
- (void)test { | |
decltype(foo)::value_type vt1; | |
decltype(self->foo)::value_type vt2; | |
decltype(self.bar)::value_type vt3; | |
} | |
@end |