|
Boost : |
From: Peter Dimov (pdimov_at_[hidden])
Date: 2008-07-31 15:16:54
Mat Marcus:
> On the boost users list, there was a discussion about some issues
> arising with boost versus gcc-4.2 on Apple systems. One interesting
> issue arises from the fact that Apple decoupled the gcc compiler
> version from the lib version. They "own" libstdc++, which they've kept
> at version 4.0 even when the 4.2 compiler. This breaks some
> assumptions in boost headers. I am reposting on the main developer
> list:
>
> ###
>
> Peter Dimov wrote:
>
>> Is the new Apple GCC documented somewhere? I wasn't able to find anything
>> related to a new assembler syntax or -fasm-blocks. Can you ask Apple to
>> explain the issue? Stock g++ 4.2.x compiles the code, so the problem must
>> be
>> Apple-specific.
This is the original problem report:
http://lists.boost.org/boost-users/2008/04/35786.php
It is not caused by libstdc++, but by inline asm syntax.
>>> This is the case because boost assumes that a 4.2 compiler implies
>>> 4.2 libraries in flies such as boost/detail/atomic_count_gcc.hpp:
>>>
>>> #if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 2))
>>> # include <ext/atomicity.h>
>>> #else
>>> # include <bits/atomicity.h>
>>> #endif
atomic_count_gcc.hpp is only included on non-x86/x64 platforms when the g++
version is 4.0 or earlier. g++ 4.2 should use either
atomic_count_gcc_x86.hpp or atomic_count_sync.hpp.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk