struct a;

struct a {
    int b;
};

struct c {
    int d;
};

struct c;