File: fptr_assert.c

package info (click to toggle)
frama-c 20161101%2Bsilicon%2Bdfsg-5
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 42,324 kB
  • ctags: 35,695
  • sloc: ml: 200,142; ansic: 31,465; makefile: 2,334; sh: 1,643; lisp: 259; python: 85; asm: 26
file content (26 lines) | stat: -rw-r--r-- 329 bytes parent folder | download | duplicates (2)
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
/* run.config
   OPT: -rte -rte-precond -print
*/

typedef int (*fptr)(int);

void g() { return; }

int f(int x) { return x; }
int h(int x) { return x; }

int main (int i)
{
  void (*fp1)();
  fptr fp2;
  fptr ma[2] = { &f, &h };
  
  fp1 = &g;
  fp2 = &f;

  (*fp1)();
  (*fp2)(3);
  (*ma[1])(5);
  (*ma[i])(5);
  return 0;  
}