Howard Hinnant wrote:
[...]
Here I think we have a minor misunderstanding. I'm only
proposing special treatment for standard facets instantiated on
"reasonable types". For example, the same restriction on
character types as basic_string imposes for charT. Likewise for
iterators. No special treatment for user-defined facets.
Isn't the problem the same? ctype<C> can be a user-defined explicit
specialization of the facet (in fact, I don't think it could exist
otherwise given the restriction on explicitly specializing member
functions of standard class templates), so it need not have the
expected ctor. Or am I missing a requirement that members of all
specializations of the standard facets must have the same signatures
as those of the required instantiations (i.e., those specified in
the synopses)?