[GCC-XML] problem compiling code with gccxml
Brad King
brad.king at kitware.com
Thu Jul 28 13:33:50 EDT 2005
Alexis H. Rivera-Rios wrote:
> I'm trying to expose the following class using pyste
> (which in turns uses gccxml)
>
> #include <boost/random.hpp>
[snip]
> when I run gccxml like this:
> gccxml -I c:\boost\include\boost-1_32 test.cpp --debug
> --gccxml-compiler msvc71
[snip]
> The errors are these:
> In file included from
> c:/boost/include/boost-1_32/boost/random/detail/const_mod.hpp:22,
> 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 test.cpp:2:
> c:/boost/include/boost-1_32/boost/integer_traits.hpp:159:
> error: integer
> constant is too large for "long" type
[snip]
> I don't what's wrong since the works fine in VC7.1
>
> The only thing I suspect is that because gccxml may be
> based on another compiler the #defines specified when
> I built boost for vc71 do not match the gccxml
> compiler.
When GCC-XML simulates VC7.1 the preprocessor should act as if it were
really preprocessing for VC7.1. The only difference is that __GCCXML__
is defined. Most of the time the internal GCC parser can handle the
results (thanks to the patched headers). This may be a case where it
cannot.
My guess is that the LLONG_MAX macro is getting defined with an integer
suffix that is not properly parsed by GCC. GCC-XML from CVS does have
support for the VC integer suffixes (like i64). I see you are using
version 0.6. Please try the CVS version.
Thanks,
-Brad
More information about the gccxml
mailing list