[GCC-XML] problem compiling code with gccxml

Brad King brad.king at kitware.com
Thu Jul 28 15:25:19 EDT 2005


Alexis H. Rivera-Rios wrote:
> Here are the errors:
> 
> In file included from
> C:/Boost/include/boost-1_32/boost/random/linear_congruential.hpp:25,
>                  from
> C:/Boost/include/boost-1_32/boost/random.hpp:36,
>                  from
> ../StatATA/random_number_generator.h:6:
> C:/Boost/include/boost-1_32/boost/random/detail/const_mod.hpp:
> In static member 
>    function `static IntType
> boost::random::const_mod<IntType, 
>    m>::invert_euclidian(IntType)':
> C:/Boost/include/boost-1_32/boost/random/detail/const_mod.hpp:152:
> error: conflicting
>    types for `typedef struct
> boost::static_assert_test<sizeof 
[snip]
> Does the fact that boost was compiled with VC71 and
> gccxml is based on GCC be the problem?  Somethink like
> the boost library is configured with the VC71 hacks
> and not the gcc ones?

This is almost certainly the problem.  As I said the GCC parser cannot 
always handle the results of preprocessing as if using VC7.1.  In the 
case of system headers the GCC-XML installation copies and patches them 
to fix the problems.  In this case all the VC-specific hacks in boost 
are confusing GCC-XML.  The code will have to be modified to be aware of 
GCC-XML by using the __GCCXML__ macro to adjust which hacks are used.

-Brad



More information about the gccxml mailing list