[C++-sig] boost forward declaration error (original) (raw)

Ricardo Kirkner ricardokirkner at gmail.com
Thu Dec 1 23:52:50 CET 2005


Hi:

I am getting an error while compiling some library wrappers.

The overall structure of the error producing code is:

A.h

... struct MyStruct; //forward declaration typedef struct MyStruct *MyStructID; ...

B.h

#include A.h #include A1.h #include A2.h ...

C.h

#include B.h

class MyClass { public: MyClass(MyStructID id); .... };

Now, I am getting an error due to the forward declaration in A.h. However, A.h and B.h belong to some library that is working correctly (and which library C, for which I am trying to write a wrapper, depends on).

I don't know if this information (I tried to abstract and simplify the problem the most I could) is enough for anybody to figure out what is going on... if anyone needs some more detail in order to help me out, please ask for it.

So the question is: does anyone know why I am getting the forward declaration error, while using boost (note that the A library -- owner of A.h and B.h -- is installed and compiles correctly). Does anyone know how to get around this problem?

Thanks,

Ricardo Kirkner



More information about the Cplusplus-sig mailing list