Deal with incomplete type as if they are "void"
So..
struct my_incomplete_type;
struct mostly_complete {
int itsanumber;
char *nameOfTheNumber;
struct my_incomplete_type *mostly_complete;
};
will show up as
struct my_incomplete_type;
struct mostly_complete {
int itsanumber;
char *nameOfTheNumber;
void *mostly_complete;
};
which is the same thing, at least from protodump standpoint.
When reading the members of "struct mostly_complete", protodump will try
and read the definition of "struct my_incomplete_type". The problem is
that clang and gcc do not provide it, even if there is a proper
declaration of it somewhere else in your program.
This prevents protodump from trying to figure out if two types relying
on "struct my_incomplete_type" are the same when they are defined in
separate compilation units.