Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/lto/20120723_1.c @ 158:494b0b89df80 default tip
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 25 May 2020 18:13:55 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
/* Make sure that by reference and by value aggregate jump functions do not get mixed up. */ extern void abort (void); struct S { int i; void (*f)(struct S *); int j; }; struct E { struct S *p; }; extern struct S *gs; extern int gr; extern char gc[1024]; static __attribute__ ((noinline, noclone)) struct S * get_s (void) { return (struct S *) &gc; } static void good_target (struct S *s) { gr = 0; } extern void bar (struct E e); void foo (struct E e) { gs->f = good_target; bar (e); }