OSDN Git Service

2010-06-07 Tobias Burnus <burnus@net-b.de>
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gfortran.dg / c_loc_tests_2_funcs.c
1 double fabs (double);
2
3 typedef struct ctype
4 {
5   int i;
6   double x;
7 }ctype_t;
8
9 int test_scalar_address(int *ptr)
10 {
11   /* The value in Fortran should be initialized to 100. */
12   if(*ptr != 100)
13     return 0;
14   else
15     return 1;
16 }
17
18 int test_array_address(int *int_array, int num_elements)
19 {
20   int i = 0;
21
22   for(i = 0; i < num_elements; i++)
23     /* Fortran will init all of the elements to 100; verify that here. */
24     if(int_array[i] != 100)
25       return 0;
26
27   /* all elements were equal to 100 */
28   return 1;
29 }
30
31 int test_type_address(ctype_t *type_ptr)
32 {
33   /* i was set to 100 by Fortran */
34   if(type_ptr->i != 100)
35     return 0;
36   
37   /* x was set to 1.0d0 by Fortran */
38   if(fabs(type_ptr->x - 1.0) > 0.00000000)
39     return 0;
40   
41   return 1;
42 }