220 4742 <CAGNvRgCnRpdF574V9nzkKU-pAgxvU9tGvRNhDw3mej4rwT0nvQ@mail.gmail.com> article
Path: news.gmane.org!not-for-mail
From: =?ISO-8859-1?Q?Daniel_Kr=FCgler?= <daniel.kruegler@gmail.com>
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: Remove vector<bool>?
Date: Thu, 30 May 2013 08:11:38 +0200
Lines: 76
Approved: news@gmane.org
Message-ID: <CAGNvRgCnRpdF574V9nzkKU-pAgxvU9tGvRNhDw3mej4rwT0nvQ@mail.gmail.com>
References: <CAGsORuDQdeWAO5yjA6=h0hW9Y0Sj4F1gcHB61udw5JFmtx+g4Q@mail.gmail.com>
	<CAGg_6+O9XJucMxwEhU+50Dzx0Tz7XRK0cWyrkUHuPSoEz9TqEw@mail.gmail.com>
	<e59c2a57-6068-4098-8667-5d086b2961fd@isocpp.org>
	<7371f4b8-8c47-4f17-af1e-902a5c8b17e4@isocpp.org>
	<FF769E17-643C-47FE-8A3E-D28436A4B9A6@gmail.com>
	<51A638CF.5050905@wanadoo.fr>
	<CAGg_6+OS21ww71D-94NO0f0pLUDo6fGUULdZ6KkVc0aypwf_uw@mail.gmail.com>
	<51A670DC.2010102@wanadoo.fr>
	<51A6EC7F.4090308@wanadoo.fr>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: plane.gmane.org
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
X-Trace: ger.gmane.org 1369894300 31949 80.91.229.3 (30 May 2013 06:11:40 GMT)
X-Complaints-To: usenet@ger.gmane.org
NNTP-Posting-Date: Thu, 30 May 2013 06:11:40 +0000 (UTC)
To: std-proposals@isocpp.org
Original-X-From: std-proposals+bncBCT7RVFA4QORBG63TOGQKGQEZRLS3OY@isocpp.org Thu May 30 08:11:41 2013
Return-path: <std-proposals+bncBCT7RVFA4QORBG63TOGQKGQEZRLS3OY@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-lb0-f200.google.com ([209.85.217.200])
	by plane.gmane.org with esmtp (Exim 4.69)
	(envelope-from <std-proposals+bncBCT7RVFA4QORBG63TOGQKGQEZRLS3OY@isocpp.org>)
	id 1Uhw5M-0007Jv-DQ
	for gclcip-std-proposals@m.gmane.org; Thu, 30 May 2013 08:11:40 +0200
Original-Received: by mail-lb0-f200.google.com with SMTP id w20sf204209lbh.3
        for <gclcip-std-proposals@m.gmane.org>; Wed, 29 May 2013 23:11:40 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20120113;
        h=x-beenthere:mime-version:in-reply-to:references:date:message-id
         :subject:from:to:x-original-sender:x-original-authentication-results
         :reply-to:precedence:mailing-list:list-id:x-google-group-id
         :list-post:list-help:list-archive:list-subscribe:list-unsubscribe
         :content-type:content-transfer-encoding;
        bh=RwXzTrBGRuIMkvkkioOCytfqFlFc9l/zDdCpFBWqXwY=;
        b=l4tJi2UigwoY9gfky5ptTMkHPFljgPoCjh/e45Nq917cNCWJ/QrKbSIr5CdaxDtQSa
         0KFkrCYWeoQ9UMkeJzdw2E0qc6TBbiBVkt/czUnjm7onzMitWU7nQUxbYN+DleYTVHyn
         qD8E8YToq7JrS8arfS24ZBakAJklk2yOxOnrltFTmMF0F2Y6YYNcws4S+/wuwntLNNiy
         b+MxjAvFtJZaFyDDSvd93lQSOFRVQoIq6v0na8ExitCiP50KC3KuCVnyejkVJ9PLfe66
         2xO2837mAujLxxt1Qk0ul9iJzcyvuGlR/q9gYOsQ8XX5SwFdLMGBIvFl9wB/PwPv7g9c
         g9Cg==
X-Received: by 10.180.210.161 with SMTP id mv1mr8822237wic.1.1369894299728;
        Wed, 29 May 2013 23:11:39 -0700 (PDT)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.180.211.106 with SMTP id nb10ls1783411wic.39.canary; Wed, 29
 May 2013 23:11:39 -0700 (PDT)
X-Received: by 10.194.157.165 with SMTP id wn5mr3095924wjb.15.1369894299131;
        Wed, 29 May 2013 23:11:39 -0700 (PDT)
Original-Received: from mail-wg0-x230.google.com (mail-wg0-x230.google.com [2a00:1450:400c:c00::230])
        by mx.google.com with ESMTPS id ch10si7511985wib.18.2013.05.29.23.11.39
        for <std-proposals@isocpp.org>
        (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);
        Wed, 29 May 2013 23:11:39 -0700 (PDT)
Received-SPF: pass (google.com: domain of daniel.kruegler@gmail.com designates 2a00:1450:400c:c00::230 as permitted sender) client-ip=2a00:1450:400c:c00::230;
Original-Received: by mail-wg0-f48.google.com with SMTP id f12so6493608wgh.15
        for <std-proposals@isocpp.org>; Wed, 29 May 2013 23:11:39 -0700 (PDT)
X-Received: by 10.194.237.133 with SMTP id vc5mr3027811wjc.37.1369894299036;
 Wed, 29 May 2013 23:11:39 -0700 (PDT)
Original-Received: by 10.216.211.194 with HTTP; Wed, 29 May 2013 23:11:38 -0700 (PDT)
In-Reply-To: <51A6EC7F.4090308@wanadoo.fr>
X-Original-Sender: daniel.kruegler@gmail.com
X-Original-Authentication-Results: mx.google.com;       spf=pass (google.com:
 domain of daniel.kruegler@gmail.com designates 2a00:1450:400c:c00::230 as
 permitted sender) smtp.mail=daniel.kruegler@gmail.com;       dkim=pass header.i=@gmail.com
Precedence: list
Mailing-list: list std-proposals@isocpp.org; contact std-proposals+owners@isocpp.org
List-ID: <std-proposals.isocpp.org>
X-Google-Group-Id: 399137483710
List-Post: <http://groups.google.com/a/isocpp.org/group/std-proposals/post?hl=en>,
 <mailto:std-proposals@isocpp.org>
List-Help: <http://support.google.com/a/isocpp.org/bin/topic.py?hl=en&topic=25838>,
 <mailto:std-proposals+help@isocpp.org>
List-Archive: <http://groups.google.com/a/isocpp.org/group/std-proposals/?hl=en>
List-Subscribe: <http://groups.google.com/a/isocpp.org/group/std-proposals/subscribe?hl=en>,
 <mailto:std-proposals+subscribe@isocpp.org>
List-Unsubscribe: <http://groups.google.com/a/isocpp.org/group/std-proposals/subscribe?hl=en>,
 <mailto:googlegroups-manage+399137483710+unsubscribe@googlegroups.com>
Xref: news.gmane.org gmane.comp.lang.c++.isocpp.proposals:4742
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/4742>

2013/5/30 Vicente J. Botet Escriba <vicente.botet@wanadoo.fr>:
> Le 29/05/13 23:19, Vicente J. Botet Escriba a =E9crit :
>
> Le 29/05/13 19:37, Nevin Liber a =E9crit :
>
> On 29 May 2013 12:20, Vicente J. Botet Escriba <vicente.botet@wanadoo.fr>
> wrote:
>>
>> Le 28/05/13 22:12, Howard Hinnant a =E9crit :
>>
>> On May 28, 2013, at 4:00 PM, Nicol Bolas <jmckesson@gmail.com> wrote:
>>
>> Personally, I agree with Howard; we should add a class that has all of
>> this functionality (presumably with some degree of required sizing) that
>> would be a drop-in replacement for those who need the sizing features of
>> vector<bool>. But the question remains: even with a drop-in replacement,=
 how
>> much code will be broken because of this?
>>
>> Model this after the auto_ptr -> unique_ptr transition:
>>
>> Step 1:  Introduce bit_vector (or whatever) and deprecate the vector<boo=
l>
>> specialization.  /Somehow/ motivate people to migrate.
>>
>> I think that we will need also to add a std::new_vector<T> that behaves
>> like std::vector<T> but doesn't have the bool specialization and
>
>
> * I'd hate to use a code base that had two different, unrelated types for
> doing the exact same thing, since ultimately these things end up interfac=
es.
> Actually, I already have that, as people are trying to migrate from Boost
> over to std (such as shared_ptr), and it is anything but easy (because we
> are dependent on libraries developed for/by other groups, and changing th=
ose
> interfaces is a scheduling nightmare).
>
> You are right. What we would need is 'single' type that behaves as the
> current vector<T> except for bool and that behaves as vector<bool> if vec=
tor
> was not specialized. I don't know if we can specialize an alias and if th=
e
> following is correct
>
> template <typename T, typename Allocator>
> class new_vector { the same definition as vector<T, Allocator> now };
>
> template <typename T, typename Allocator>
> alias vector=3D new_vector<T, Allocator> ;
>
> template < typename Allocator>
> class vector<bool, Allocator> { the same definition as now } ;
>
> If this is correct,
>
> Hrr, It seems that we can not specialize alias templates.

This is by design. If you need that feature, use a class template to
realize that and use an alias to refer to the class template.

- Daniel

--=20

---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at http://groups.google.com/a/isocpp.org/group/std-proposa=
ls/?hl=3Den.



.
