struct Bar {};
struct Foo {
Foo();
Foo(int i);
void A();
void B(int i);
int C(int i);
int D(bool b) const;
static void E();
static int F(int i);
void G(const char *fmt...);
static Foo H();
void I() const;
Bar J() const;
Bar K(void *v) const;
Bar &L() const;
Bar *M() const;
};