#include struct big { float a; double b; int32_t c; }; float extern_fd(double); void extern_vj(uint64_t); void extern_v(void); int32_t extern_ijidf(int64_t, int32_t, double, float); void extern_struct(struct big); struct big extern_sret(void); intptr_t bar() { float (*fd)(double) = &extern_fd; void (*vj)(uint64_t) = &extern_vj; vj(1ULL); void (*v)(void) = &extern_v; v(); int32_t (*ijidf)(int64_t, int32_t, double, float) = &extern_ijidf; ijidf(1LL, 2, 3.0, 4.0f); void (*vs)(struct big) = &extern_struct; struct big (*s)(void) = &extern_sret; return (intptr_t)fd; } intptr_t baz() { return (intptr_t)extern_v; }