summaryrefslogtreecommitdiff
path: root/gcc/testsuite/objc/compile/20060406-1.m
blob: 62148902ac4d63016627fe7137e79402defe78c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
/* This test tests typedefs and protocol qualifiers.  */

@protocol O
- (unsigned)j;
@end

@interface T
@end


/* First test.  */
typedef T<O> *S;

@interface I
+ (unsigned char)T:(S[2])p
                 v:(S)h;
@end

@implementation I
+ (unsigned char)T:(S[2])p
                 v:(S)h
{
  p[0] = (S) 0;
  p[1] = (S) 0;
  return 0;
}
@end


/* Second test.  */
typedef T<O> S1;

@interface I1
+ (unsigned char)T1:(S1*[2])p 
                 v1:(S1*)h;
@end

@implementation I1
+ (unsigned char)T1:(S1*[2])p
                 v1:(S1*)h
{
  p[0] = (S1*) 0;
  p[1] = (S1*) 0;
  return 0;
}
@end


/* Third test.  */
typedef T S2;

@interface I2
+ (unsigned char)T1:(S2<O>*[2])p 
                 v1:(S2<O>*)h;
@end

@implementation I2
+ (unsigned char)T1:(S2<O>*[2])p
                 v1:(S2<O>*)h
{
  p[0] = (S2<O>*) 0;
  p[1] = (S2<O>*) 0;
  return 0;
}
@end