OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [objc/] [execute/] [many_args_method.m] - Blame information for rev 702

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 702 jeremybenn
/* Contributed by Nicola Pero - Fri Mar  9 19:39:15 CET 2001 */
2
#include <objc/objc.h>
3
 
4
/* Test the syntax of methods with many arguments */
5
 
6
@interface TestClass
7
{
8
  Class isa;
9
}
10
+ (int) sumInteger: (int)a   withInteger: (int)b;
11
+ (int) sum: (int)a   : (int)b;
12
+ (int) sumInteger: (int)a   withInteger: (int)b  withInteger: (int)c;
13
+ (int) sum: (int)a   : (int)b  : (int)c;
14
@end
15
 
16
@implementation TestClass
17
+ (int) sumInteger: (int)a  withInteger: (int)b
18
{
19
  return a + b;
20
}
21
+ (int) sum: (int)a   : (int)b
22
{
23
  return [self sumInteger: a  withInteger: b];
24
}
25
+ (int) sumInteger: (int)a   withInteger: (int)b  withInteger: (int)c
26
{
27
  return a + b + c;
28
}
29
+ (int) sum: (int)a   : (int)b  : (int)c
30
{
31
  return [self sumInteger: a  withInteger: b  withInteger: c];
32
}
33
+ initialize { return self; }
34
@end
35
 
36
 
37
int main (void)
38
{
39
  if ([TestClass sumInteger: 1  withInteger: 1] != 2)
40
    {
41
      abort ();
42
    }
43
  if ([TestClass sum: 1  : 1] != 2)
44
    {
45
      abort ();
46
    }
47
  if ([TestClass sumInteger: 1  withInteger: 1  withInteger: 1] != 3)
48
    {
49
      abort ();
50
    }
51
  if ([TestClass sum: 1  : 1  : 1] != 3)
52
    {
53
      abort ();
54
    }
55
 
56
  return 0;
57
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.