|
Boost : |
Subject: Re: [boost] [filesystem] 1.49 linking with c++0x
From: Beman Dawes (bdawes_at_[hidden])
Date: 2012-07-13 07:22:19
On Thu, Jul 12, 2012 at 9:32 PM, Daniel Larimer <dlarimer_at_[hidden]> wrote:
> Considering the ABI hasn't broken yet for GCC or (VS2010??), I would think boost should avoid breaking the boost ABI as well based upon a simple compile flag.
>
> I would expect a failure earlier in the build process that clearly states that I am 'using the wrong header'... or 'boost was not built with c++11 feature X enabled'.
>
> This could be solved by providing an implementation for both the versions of the few methods with broken ABI... create two files:
>
> copy_file_03.cpp
> copy_file_11.cpp
>
> Compile them with different flags, and then link them both into the boost::filesystem library. Now you have one library that will work both ways without having to worry about 'duplicate symbols' created by trying to link two versions of boost_filesystem into the same exe simply to resolve one method.
>
> At the very least these issues need to be clearly documented and a policy put in place for when, how, and why a boost library will break its ABI for C++11.
Are you volunteering:-?
--Beman
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk