|
Boost : |
From: Daryle Walker (darylew_at_[hidden])
Date: 2001-01-09 14:52:30
on 1/8/01 11:15 PM, William Kempf at sirwillard_at_[hidden] wrote:
> --- In boost_at_[hidden], Howard Hinnant <hinnant_at_t...> wrote:
>> Daryle Walker wrote on 1/8/2001 5:34 PM
>>> Remember that std::auto_ptr is a standard class; it's improper for us to
>>> make a noticeably different specialization. (The standard does it to itself
>>> with the specialization for std::allocator<void>, but it can break its own
>>> rules, we can't.)
>
> The standard has rules about specializations needing to follow the
> exact same interface? I can't find that, and it wouldn't make sense
> for it to. In general I'd agree that that's a good design rule to
> follow, but with every rule there are exceptions. I'm not sure that
> this one is an exception, so don't think I'm blindly advocating
> this... I just thought it had enough merit to warrant discussion and
> possibly experimentation.
[SNIP]
I'm looking at section 17.4.3.1, paragraph 1. It says that undefined
behavior results if a specialization doesn't meet the standard library
requirements of the original template. It doesn't have to be an exact match
(just no noticeable mismatches), but this specialization is doing notable
changes. Are the changes severe enough to cause a problem?
-- Daryle Walker Mac, Internet, and Video Game Junkie darylew AT mac DOT com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk