File: float.c

package info (click to toggle)
libffi-platypus-perl 2.10-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,860 kB
  • sloc: perl: 7,388; ansic: 6,862; cpp: 53; sh: 19; makefile: 14
file content (71 lines) | stat: -rw-r--r-- 958 bytes parent folder | download | duplicates (5)
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
66
67
68
69
70
71
#include "libtest.h"

EXTERN float
float_add(float a, float b)
{
  return a + b;
}

EXTERN float*
float_inc(float *a, float b)
{
  static float keeper;
  keeper = *a += b;
  return &keeper;
}

EXTERN float
float_sum(float list[10])
{
  int i;
  float total;
  for(i=0,total=0; i<10; i++)
  {
    total += list[i];
  }
  return total;
}

EXTERN float
float_sum2(float *list, size_t size)
{
  int i;
  float total;
  for(i=0,total=0; i<size; i++)
  {
    total += list[i];
  }
  return total;
}

EXTERN void
float_array_inc(float list[10])
{
  int i;
  for(i=0; i<10; i++)
  {
    list[i]++;
  }
}

EXTERN float *
float_static_array(void)
{
  static float foo[] = { -5.5, 5.5, -10, 10, -15.5, 15.5, 20, -20, 25.5, -25.5 };
  return foo;
}

typedef float (*closure_t)(float);
static closure_t my_closure;

EXTERN void
float_set_closure(closure_t closure)
{
  my_closure = closure;
}

EXTERN float
float_call_closure(float value)
{
  return my_closure(value);
}