blob: b6b08ffefdb79f690203ced617ca36a462365fed [file] [log] [blame]
Fariborz Jahanian643b7df2009-07-08 16:37:44 +00001// RUN: clang-cc -fnext-runtime -fobjc-gc -emit-llvm -o %t %s &&
2// RUN: grep objc_memmove_collectable %t | grep call | count 2
3
4static int count;
5
6typedef struct S {
7 int ii;
8} SS;
9
10struct type_s {
11 SS may_recurse;
12 id id_val;
13};
14
15@interface NamedObject
16{
17 struct type_s type_s_ivar;
18}
19- (void) setSome : (struct type_s) arg;
20- (struct type_s) getSome;
21@property(assign) struct type_s aggre_prop;
22@end
23
24@implementation NamedObject
25- (void) setSome : (struct type_s) arg
26 {
27 type_s_ivar = arg;
28 }
29- (struct type_s) getSome
30 {
31 return type_s_ivar;
32 }
33@synthesize aggre_prop = type_s_ivar;
34@end
35
36struct type_s some = {{1234}, (id)0};
37
38struct type_s get(void)
39{
40 return some;
41}
42