[v3] more consistent api testing

Benjamin Kosnik bkoz@redhat.com
Tue Feb 20 20:04:00 GMT 2007


> I'm going to look a bit into the issue myself, but can you detail a bit 
> what's going wrong with <locale>??

Yes. Instead of required specializations for ctype_byname, we've just 
specialized the ctors.

The compiler error makes little sense in this case: something about 
specializing after instantiating.

But, the interface diergence seem clear. The actual inpact is minor, IMHO.

But, somewhat troubling. I am having problems testing for required 
specializations, see:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30857

> As regards the unordered containers, the issue coming from the 
> additional template parameter is in fact well know (are there any 
> other?): as apparent also from some of Matt' comments, he wanted to add 
> some additional flexibility, along the lines paved by Ami. Time ago, I 
> mentioned on the list that the additional parameter would cause strict 
> conformance problems (and we avoided such exact problems while recentlt 
> reworking shared_ptr), now probably it's time to rediscuss the thing: 
> shall we avoid it, by forwarding from conforming classes to the flexible 
> ones? The latter would be uglified but still available, similarly to 
> shared_ptr.

Yes, it's just the undocumented extra parameter. We should at least 
document this....

Yes, is my vote. I think we should conform to the interfaces as 
specified... or change the specified interfaces.... :)

This is a portability issue, as people using the GNU TR1 interfaces 
could conceivably have specializations that don't compile on 
TR1-conformant systems.

best,
benjamin

ps. Sorry about the churn



More information about the Libstdc++ mailing list