[Patch] More facets rearrangements

Paolo Carlini pcarlini@suse.de
Tue Apr 24 02:06:00 GMT 2007


Hi,

this one is only partially about size of the headers (~ 10 KB off 
<iostream>) and mostly about consistency and correctness: it adds a 
locale_classes.tcc hosting the out of line functions of class locale; 
moves collate to the locale_classes headers, to support instantiating 
locale::operator() also when locale is not explicitely mentioned by the 
user (*); changes locale_facets to not include <bits/codecvt.h>, instead 
in fstream, where it's used, and in locale_facets_nonio (which finally 
hosts *only* things not having to do directly with iostreams).

Tested x86-linux without PCHs.

Paolo.

(*) Like:

#include <string>
#include <streambuf>

class my_sb
: std::streambuf
{
public:
  my_sb()
  { }

  void
  f()
  { std::streambuf::getloc()(std::string(), std::string()); }
};

int
main()
{
  my_sb sb;
  sb.f();
}

//////////////////////
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: CL_facets_split_f
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20070424/7b496482/attachment.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch_facets_split_f
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20070424/7b496482/attachment-0001.ksh>


More information about the Libstdc++ mailing list