Boost logo

Boost :

Subject: Re: [boost] [1.47.0] Permission to merge filesystem fix
From: Beman Dawes (bdawes_at_[hidden])
Date: 2011-07-05 12:32:43


On Tue, Jul 5, 2011 at 11:31 AM, Eric Niebler <eric_at_[hidden]> wrote:
> Let me clarify why I was asking though, because I don't think I was
> clear. The constructor arguments may already have the required type, but
> you can't really know anything about their encoding because that's not
> encoded in the type system. Previously, you were always running these
> strings through a transformation. You're presuming (and you would know
> best of course) that the transformation was always a no-op for arguments
> of this type. I was asking if you were really 100% sure.

Actually, the codecvt argument has always been ignored if the
value_types were the same. See the convert() overloads in
path_traits.hpp, starting at line 125. The only difference is that by
introducing the two constructor value_type overloads there is no call
to codecvt(), so no attempt to access a locale that may be invalid.

Since the two internal path constructions always have value_type
arguments, the changet eliminates the chance of that exception being
thrown before main() starts.

--Beman


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk