[libstdc++-v3] Remove std::construct and std::destroy

Benjamin Kosnik bkoz@redhat.com
Tue Jul 3 19:49:00 GMT 2001


> What should be done with parts of the library that match the SGI web pages but
> don't match the standard, and relegating the original SGI implementation to
> backwards headers is not really a viable solution?  

Then we fork. The primary documenation (as well as goal here, folks) is 
to implement the standard, not match prior art or previous 
implementations. Fixup the signatures to match the standard.

This has already been an issue with the iterator stuff (where the SGI STL 
wasn't inheriting from std::iterator), the allocator stuff (where 
allocator wasn't calling new), etc. In all cases the standard wins.

If we can provide graceful fallback with backwards headers, we should 
make the attempt. If not, there's always v2 and an older compiler.

> So, in summary,  nonstandard names can be removed from std, and should remain
> available through the backward headers.  Behaviour should be according to the
> standard, but alternate (documented SGI) behaviour should be available through a
> compile time switch.

Please, no comple time switch for changing to broken signatures. That's an 
invitation to disaster. Let's just do it right, and if necessary document 
the difference.

-benjamin



More information about the Libstdc++ mailing list