Re: Compilation of arts on HPUX - namespace problems?
Harri Porten <[email protected]>
| Newsgroups | gmane.comp.kde.non-linux |
|---|---|
| Message-ID | <[email protected]> |
Hi ! > 3. aCC complains that mcop/datapacket.h is not ISO C++ compliant. This can be > fixed by using this->capacity and this->contents in various places. I can > send the modified file to those interested. I fixed that for 3.0.1 already. > 4. On compiling mcop/common.h, the following error (and similar ones wherever > ObjectReference is used) kill the compilation: > Error 359: "common.h", line 84 # The expression on the left side of the '->' > (arrow member access operator) must be a pointer to completed class object > type; the type of the left side is 'Arts::ObjectReference *' and 'class > ObjectReference' has not been defined yet. > ObjectReference reference(buffer); > ^^^^^^^^^ > Error 283: "common.h", line 84 # Illegal operand type in call expression. > ObjectReference reference(buffer); > ^^^^^^^^^ > According to my understanding, a class needs to be declared (not defined) > before it is referenced elsewhere. So the error message does not seem to make > sense to me. My interpretation is different: as an object of type ObjectReference is instanciated the compiler has to see the full definition. As ObjectReference is only defined in a header that includes common.h I think the compiler is right and the problem would be non-trivial to fix. Stefan ? The simples workaround is just to remove those lines and live without aRts for now. Harri.