2014-07-12 Paul Thomas <pault@gcc.gnu.org>
[official-gcc.git] / gcc / testsuite / gfortran.dg / bind_c_coms_driver.c
blobc83f22d836f1012e6877d70f0024109416e00431
1 double fabs(double);
3 void test_coms(void);
5 extern void abort(void);
7 struct {double r, s; } com; /* refers to the common block "com" */
8 double single; /* refers to the common block "single" */
9 long int mycom; /* refers to the common block "MYCOM" */
10 long long int mycom2; /* refers to the common block "MYCOM2" */
11 struct {int i, j; } f03_com2; /* refers to the common block "com2" */
13 int main(int argc, char **argv)
15 com.r = 1.0;
16 com.s = 2.0;
17 single = 1.0;
18 mycom = 1;
19 mycom2 = 2;
20 f03_com2.i = 1;
21 f03_com2.j = 2;
23 /* change the common block variables in F90 */
24 test_coms();
26 if(fabs(com.r - 1.1) > 0.00000000)
27 abort();
28 if(fabs(com.s - 2.1) > 0.00000000)
29 abort();
30 if(fabs(single - 1.1) > 0.00000000)
31 abort();
32 if(mycom != 2)
33 abort();
34 if(mycom2 != 3)
35 abort();
36 if(f03_com2.i != 2)
37 abort();
38 if(f03_com2.j != 3)
39 abort();
41 return 0;
42 }/* end main() */