Boost logo

Boost :

Subject: Re: [boost] [build] is still broken
From: Niall Douglas (s_sourceforge_at_[hidden])
Date: 2013-10-21 21:02:59

On 21 Oct 2013 at 20:45, Edward Diener wrote:

> > Be aware that I found any Mingw after the one based on GCC 4.6.4 is
> > broken with Boost in various unhelpful ways (e.g. generating
> > assembler ops its assembler won't accept). In fact, of course, Mingw
> > with GCC 4.6 was also broken (e.g. <atomic> does not implement
> > actually atomic operations), but it had been around long enough
> > people had patched for it.
> Do you know Which Boost libraries are broken with MingW using gcc 4.6.4
> on up ?

Mingw with GCC 4.6.4 works okay. It's what my Jenkins CI uses for
Mingw pre-commit testing.

> I have tested some of my own things on trunk with MingW and gcc-4.7.0
> and gcc.4.7.2 and they are testing OK, so I want to understand what
> Boost code is broken.

I'm sure things will be different for different people, but there was
certainly a GCC 4.7.x based Mingw that forgot to feed -march=i486 to
its assembler, so if you did anything needing atomic instructions it

I also found a showstopping ICE with my code on a GCC 4.8.x based
Mingw which kinda ruled it out for me. I went back to the GCC 4.6.4
based Mingw. It's reliable.

> > Mingw-w64 is absolutely fine though, and I very strongly recommend
> > its use over traditional Mingw. Mingw-w64 was so trouble free that it
> > just worked for me first time, which was quite a novel experience.
> I will try this out also. Thanks !

My only complaint with Mingw-w64 (I used the GCC 4.8 based version)
is that it dislikes the MSVC idiom of using {0} or {sizeof(struct)}
to zero initialise structures. It still compiles them, but it warns
and you get a ton of those warnings. You could disable just that
warning, but if I remember there are instances where you really do
want to see that warning. That said, they'd get lost in the noise on
Mingw. Other than that, my experience was good.


Currently unemployed and looking for work.
Work Portfolio:

Boost list run by bdawes at, gregod at, cpdaniel at, john at