[v3] PATCH: PR 20599 (variadic templates, take two) (4/4)
Doug Gregor
doug.gregor@gmail.com
Wed Sep 20 19:00:00 GMT 2006
On 9/20/06, Paolo Carlini <pcarlini@suse.de> wrote:
> Douglas Gregor wrote:
>
> > This is part 4 of 4. It contains changes to libstdc++'s TR1
> > implementation to make full use of variadic templates, eliminating
> > all of the preprocessor metaprogramming that we're using now.
>
> + // Define a large number of placeholders. There is no way to
> + // simplify this with variadic templates, because we're introducing
> + // unique names for each.
> + namespace placeholders { namespace {
> + _Placeholder<1> _1;
[snip gazillions of placeholders]
> + } }
>
>
> Certainly a minor nit, but I'm curious about this issue: are there any
> concrete plans to address it? Seems strange to have it in the final
> standard, I never saw something similar before...
I don't know of any plans to address this issue. TR1 basically just
says that there are objects _1, _2, _3, etc. (up to _10, at least).
Since each has a unique name, we'd need some kind of language solution
to get rid of the repetition. It doesn't fit into variadic templates
at all; I can't even think of anywhere it does fit.
Doug
More information about the Gcc-patches
mailing list