1// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fsyntax-only -verify -Wno-objc-root-class %s 2// RUN: %clang_cc1 -std=c++98 -x objective-c++ -triple x86_64-apple-darwin10 -fsyntax-only -verify -Wno-objc-root-class %s 3// RUN: %clang_cc1 -std=c++11 -x objective-c++ -triple x86_64-apple-darwin10 -fsyntax-only -verify -Wno-objc-root-class %s 4 5@interface Foo 6@end 7 8struct Bar { 9 int x; 10}; 11 12@implementation Foo { 13 struct Bar bar; 14} 15 16- (const struct Bar)bar { 17 return bar; 18} 19 20- (void)baz { 21 bar.x = 0; 22 [self bar].x = 10; // expected-error-re {{{{assigning to 'readonly' return result of an Objective-C message not allowed|expression is not assignable}}}} 23} 24@end 25