aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/test2.c
blob: 756b0d38bc0b3acf10ee15e403d73b9b5b7c7967 (plain) (blame)
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
typedef struct v2d { double x,y; } v2d;



void addp(v2d *a, const v2d *b)
{
    a->x += b->x;
    a->y += b->y;
}

v2d add(v2d a, v2d b)
{
    addp(&a, &b);
    return a;
}

v2d addx(v2d a, v2d b)
{
    return (v2d){a.x+b.x, a.y+b.y};
}

short s(int a, int b) {
    extern h();
    h(a +a * a);
    ++a;
    return a + b;
}

int i() {
    return s(1,2);
}

v2d v2v2() {
   v2d x = add((v2d){1,2}, (v2d){3,4});
   return x;
}