|
Boost : |
From: David Abrahams (dave_at_[hidden])
Date: 2003-11-20 13:48:41
Aleksey Gurtovoy <agurtovoy_at_[hidden]> writes:
> David Abrahams wrote:
>> It seems to me that which type traits headers choose to #include the
>> corresponding bool_trait_undef.hpp is inconsistent.
>
> AFAICS, type_traits headers are fine. Except for one minor degradation due
> to maintenance in "is_polymorphic.hpp", all other headers consistently
> follow "the last #include" policy which guarantees the absence of issues you
> are experiencing.
>
>> I just changed
>> some #includes and suddenly started seeing very mysterious errors
>> because the corresponding macros were undefined.
>
> Are you sure that doesn't happen because of inconsistency of
> "bool_trait_undef.hpp" includes in your own headers?
Nope, that was exactly the problem. Sorry!
>> Should we add some checks to make sure neither header is #included
>> twice in a row without the other header intervening?
>
> IMO as long as everybody preserves the documented bool_trait_undef usage, we
> are safe as is. If somebody doesn't, she will notice.
Two bool_trait_undef includes in a row will pass unnoticed. FWIW.
-- Dave Abrahams Boost Consulting www.boost-consulting.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk