|
Boost : |
Subject: Re: [boost] big problem with dependency changes
From: Bjørn Roald (bjorn_at_[hidden])
Date: 2014-06-17 17:29:40
On 06/17/2014 10:46 AM, Peter Dimov wrote:
> Bjørn Roald wrote:
>> I you do not mind, could you try in a clone for used testing only, or
>> at least not where you have work you have not committed:
>>
>> rm boost/filesystem.h
>>
>> b2 headers
>>
>> cd libs/filesystem
>>
>> git reset --hard HEAD
>>
>> then edit
>>
>> boost/filesystem.h
>> or
>> libs/filesystem/include/boost/filesystem.h
>>
>> Then compare them, if they are the same, then I am very interested in
>> understanding why.
>
> The files are different after I edit one of the two hard links.
OK, that is what I would expect. Thank you for testing,
> When I edit in boost/ - which I never do - when I run the tests, b2 then
> sees the file as modified, but does not update the link in boost/ (the
> link being newer than the source in include/.)
>
> When I edit in include/ - which is what I do - b2 sees the file as
> modified and updates the link in boost/ to point to it.
>
> Moral of the story: don't edit the files in boost/.
>
> The exceptions are the headers which b2 can't see as dependencies -
> those included via a macro. They never get their links updated unless
> one runs "b2 headers". We've fixed some of them, but not all.
Good!
but even if all are fixed, it is not good to have these subtle issues
where users have to be careful. Part of the problem is that many tools
such as IDE's with built-in symbol browsing, debugers etc. will lead
users to those headers they should not edit.
-- Bjørn
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk