/* struct declarations. */
struct fval;
struct gval;
struct hval;
/* function declarations */
struct fval *f();
struct gval *g();
struct hval *h();
struct fval { struct gval* (*g)(); int dummy; };
struct gval { struct hval* (*h)(); };
struct hval { void (*i)(); };
extern void test();
void test()
{
f()->g()->h()->i();
}