summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/c_funloc_tests_3_funcs.c
blob: 994da0a505d15e53acb63c1907279b44f2c70937 (plain)
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
/* These functions support the test case c_funloc_tests_3.  */
#include <stdlib.h>
#include <stdio.h>

int printIntC(int i)
{
  return 3*i;
}

int (*returnFunc(void))(int)
{
  return &printIntC;
}

void callFunc(int(*func)(int), int pass, int compare)
{
  int result = (*func)(pass);
  if(result != compare)
    {
       printf("FAILED: Got %d, expected %d\n", result, compare);
       abort();
    }
  else
    printf("SUCCESS: Got %d, expected %d\n", result, compare);
}