[C++-sig] boost::python with virtual inheritance and g++ c++0x/11 (testcase attached)
Niall Douglas
s_sourceforge at nedprod.com
Mon May 14 13:33:27 CEST 2012
On 14 May 2012 at 12:53, Jonas Wielicki wrote:
> > Generally speaking GCC bugs fix themselves over
> > time, so you can revert temporarily to an older GCC. Bugs in GCC are
> > common enough that if my code fails, I first think it's GCC's fault
> > :)
> Hm. GCC updates are rather rare though I think?
Not at all - GCC has a very rapid release cycle compared to most
other C++ compilers. Most compilers are only released every two or
even four years.
> Also its kinda
> inconvienient to use a non-distribution gcc version.
Most distros bundle multiple versions of gcc due to this exact
problem with frequent bugs. Debian, at least, usually has the
previous version and for many years also had the latest from the 3.x
and indeed 2.x series.
Simply have your build chain wire in a non-default compiler by
excluding from a list of known broken gcc's. It's what my build
system does.
> Do you recommend to
> submit a bug report to the gcc folks on that one?
I personally do. But getting a bug accepted by gcc isn't easy. You
may need to be prepared for them to be a bit caustic to you.
A very small testcase is easiest. They don't like testcases bringing
in external libraries such as boost one bit. So be prepared to be
aggressive if needs be.
> > Also, try Clang. Clang seems to generate better
> > debug info for templates anyway.
> I'll have a look, thanks.
Personally speaking now BSD has switched to Clang I think GCC is
living on borrowed time. Clang can already build 90%+ of all Debian,
and it won't be long before it's 100%. At that point there is no
longer any good reason to continue using GCC except for the languages
LLVM doesn't support.
Niall
--
Technology & Consulting Services - ned Productions Limited.
http://www.nedproductions.biz/. VAT reg: IE 9708311Q.
Work Portfolio: http://careers.stackoverflow.com/nialldouglas/
More information about the Cplusplus-sig
mailing list