[v3] deprecated ext/hash_map, ext/hash_set
Sun Oct 21 20:39:00 GMT 2007
On Sun, Oct 21, 2007 at 12:14:02PM -0500, Gabriel Dos Reis wrote:
> "AlisdairM" <email@example.com> writes:
> | In Toronto we finally adopted a specification for vector< bool > so
> | that we are in a position to deprecate it, but there is the alternate
> | opinion that concepts will enable real container support for proxied
> | iterators, and we might not need to deprecate it after all.
> Deprecating a feature in a forthcoming standard does not make existing
> code written with it (specified in existing standards) suddenly vanish.
I have a lot of code with vector<bool> in it. I would have no problem
with a compiler that treated vector<bool> much like vector<char> or
vector<int>; in fact, sometimes I've used a vector<char> where a
vector<bool> would be more natural precisely to avoid the "optimization",
since the bit-packing incurs a computational cost that outweighs the space
saving at least in those cases.
But it would be completely broken to ever see a "deprecated" warning: you
can make a vector from any other POD, why not bool? So no one has
explained yet just what it would mean to deprecate vector<bool>.
Take the specialization out, no problem.
More information about the Libstdc++