Conflict between AIX-file syms.h and xerces-file Token.hpp

Conflict between AIX-file syms.h and xerces-file Token.hpp

Post by Alex Vinok » Tue, 02 Jun 2009 22:48:36


Hi,

We have conflict between AIX-file syms.h and xerces-file Token.hpp.
That conflict causes compilation error.

AIX ep5710g 3 5 00C58FE04C00

Here is a piece of code from file /usr/include/syms.h on AIX

#ifdef __XCOFF32__

/* Obsolete definitions--not defined for XCOFF64. */
/*
* The fundamental type of a symbol packed into the low
* 4 bits of the word.
* Unused in xcoff.
*/

#define T_NULL 0
#define T_ARG 1 /* function argument (only used
by compiler) */
#define T_CHAR 2 /* character */
....
#define T_UNION 9 /* union */
.....

#endif /* __XCOFF32__ */


Here is a piece of code from xerces-file /xercesc/util/regx/Token.hpp

-----------------------------------------------------------------------

// Public Constants

//
-----------------------------------------------------------------------

// Token types

enum {
T_CHAR = 0,
T_CONCAT = 1,
T_UNION = 2,
...

};


File Token.hpp contains T_CHAR and T_UNION that already defined in
syms.h.


Are AIX and xerces inconsistent?
Is there any way to resolve the problem?

Thanks,

Alex Vinokur
 
 
 

Conflict between AIX-file syms.h and xerces-file Token.hpp

Post by Gary R. Ho » Tue, 02 Jun 2009 23:40:37


I downloaded the xerces-c-3.0.1 zip file and searched it. I could find
no reference to xcoff, aouthdr, filehdr or syms within the source code.

The question is, what file is generating a compilation error? A
xerces file, or your own source code? What, precisely, is the error,
and what compiler level are you using? If this is your source code,
you might have to separate XML function from object file function.

Finally, have you tried to ascertain exactly why syms.h is getting
included (xlC -E)?

--
Gary R. Hook
________________________________________________________________________
Vocatus atque non vocatus deus aderit

 
 
 

Conflict between AIX-file syms.h and xerces-file Token.hpp

Post by Alex Vinok » Thu, 11 Jun 2009 18:50:53


We resolved the problem by removing some AIX-file procinfo.h from our
h-file to relevant cpp-file.

Alex Vinokur