[GCC-XML] GCCXML chokes on <complex>

Steve M. Robbins steve at sumost.ca
Fri Jun 4 21:04:05 EDT 2010


On Fri, Jun 04, 2010 at 08:53:43AM -0400, Brad King wrote:
> Steve M. Robbins wrote:
> > Thanks.  So I had another look and found I can disable
> > all use of __gnu_cxx_ldbl128 with this simple change:
> > 
> > --- /usr/include/c++/4.4/alpha-linux-gnu/bits/c++config.h       2010-05-27 23:42:34.000000000 +0000
> > +++ gccxml-0.9/GCC/4.4/bits/c++config.h 2010-06-04 07:48:02.000000000 +0000
> > @@ -205,7 +205,7 @@
> >  
> >  // XXX GLIBCXX_ABI Deprecated
> >  // Define if compatibility should be provided for -mlong-double-64
> > -#define _GLIBCXX_LONG_DOUBLE_COMPAT 1
> > +#undef _GLIBCXX_LONG_DOUBLE_COMPAT
> > 
> > 
> > With this change, "gccxml complex.cc" compiles.
> 
> Nice.  So now it works without the other changes, right?

Right.

> There is one possible problem.  See below.
> 
> > I'm going to try uploading this change to Debian, but I'm nervous.
> > Gcc (or maybe it's just Debian?) seems to tweak this file differently
> > for different architectures.  For example, x86_64 already has the
> > #undef _GLIBCXX_LONG_DOUBLE_COMPAT.  I haven't surveyed the other 8
> > architectures to see how they vary.
> 
> Each arch probably has slightly different requirements for
> applications.
> 
> > In your experience, is it safe to use a single modified c++config.h in
> > gccxml?
> 
> We have been able to get away so far by providing slightly-hacked
> versions of problematic headers.  The only concern that comes to
> mind right now with changing c++config.h is that it might end up
> providing a slightly different API through gccxml than through
> GCC.

Yes, that's my concern.


> It probably won't be trouble in practice though.

OK.  I've requested that Debian rebuild ITK [1], which uses gccxml for
wrapping.  It was the ITK build of 3.18 that pointed out the gccxml
problem in the first place, so this will serve as one test for the
patched gccxml.

You can look here for progress on the rebuild:
https://buildd.debian.org/build.cgi?pkg=insighttoolkit
(look for version 3.18.0-2+b1)

> Please send me the old and new versions of the file, and tell me
> where you put the new one in the support directory.

I'll send this off-list.

-Steve

[1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=584606


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: Digital signature
URL: <http://public.kitware.com/pipermail/gccxml/attachments/20100604/85e88c6a/attachment.sig>


More information about the gccxml mailing list