aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Kosnik <bkoz@gcc.gnu.org>2000-09-15 22:50:11 +0000
committerBenjamin Kosnik <bkoz@gcc.gnu.org>2000-09-15 22:50:11 +0000
commit04807c286441c25e0997b453f308ffee25e3524e (patch)
treea894220fc3cccbb8e9ce51dc41924ee1bb8b5472
parent4c4b521a59ec0cafbd1b5be5b13c4ecd5d88a79b (diff)
downloadgcc-04807c286441c25e0997b453f308ffee25e3524e.zip
gcc-04807c286441c25e0997b453f308ffee25e3524e.tar.gz
gcc-04807c286441c25e0997b453f308ffee25e3524e.tar.bz2
locale.cc (locale::locale(const char* __name)): Consolidate name setting.
2000-09-15 Benjamin Kosnik <bkoz@purist.soma.redhat.com> * src/locale.cc (locale::locale(const char* __name)): Consolidate name setting. Add checks for NULL __name pointers. Remove calls to _S_initialize() as initial locale initialization can either be assumed, or needs to be made consistent throughout locale construtors. (locale::locale(const locale& __other, const char* __name, category __cat): Add checks for NULL name. Add checks for assignment to self. * src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other, const string& __name, category __cat, size_t __refs)): Set correct name, has_name values. * testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests. * docs/22_locale/locale.html: New file, more unfinished docs... From-SVN: r36450
-rw-r--r--libstdc++-v3/docs/22_locale/locale.html103
1 files changed, 103 insertions, 0 deletions
diff --git a/libstdc++-v3/docs/22_locale/locale.html b/libstdc++-v3/docs/22_locale/locale.html
new file mode 100644
index 0000000..dc3510b
--- /dev/null
+++ b/libstdc++-v3/docs/22_locale/locale.html
@@ -0,0 +1,103 @@
+<HTML>
+<HEAD>
+ <H1>
+ Notes on the locale implementation.
+ </H1>
+</HEAD>
+<I>
+prepared by Benjamin Kosnik (bkoz@redhat.com) on September 15, 2000
+</I>
+
+<P>
+<H2>
+1. Abstract
+</H2>
+<P>
+</P>
+
+<P>
+<H2>
+2. What the standard says
+</H2>
+
+
+<P>
+<H2>
+3. Problems with &quot;C&quot; locales : global locales, termination.
+</H2>
+
+<P>
+For the required specialization codecvt&lt;wchar_t, char, mbstate_t&gt; ,
+conversions are made between the internal character set (always UCS4
+on GNU/Linux) and whatever the currently selected locale for the
+LC_CTYPE category implements.
+
+<P>
+<H2>
+4. Design
+</H2>
+The two required specializations are implemented as follows:
+
+
+<P>
+<H2>
+5. Examples
+</H2>
+
+<pre>
+ typedef ctype<char> cctype;
+</pre>
+
+More information can be found in the following testcases:
+<UL>
+<LI> testsuite/22_locale/ctype_char_members.cc
+<LI> testsuite/22_locale/ctype_wchar_t_members.cc
+</UL>
+
+<P>
+<H2>
+6. Unresolved Issues
+</H2>
+
+<UL>
+ <LI> locale -a displays available locales on linux
+
+ <LI> locale initialization: at what point does _S_classic,
+ _S_global get initialized? Can named locales assume this
+ initialization has already taken place?
+</UL>
+
+
+<P>
+<H2>
+7. Acknowledgments
+</H2>
+
+<P>
+<H2>
+8. Bibliography / Referenced Documents
+</H2>
+
+Drepper, Ulrich, GNU libc (glibc) 2.2 manual. In particular, Chapters &quot;6. Character Set Handling&quot; and &quot;7 Locales and Internationalization&quot;
+
+<P>
+Drepper, Ulrich, Numerous, late-night email correspondence
+
+<P>
+ISO/IEC 14882:1998 Programming languages - C++
+
+<P>
+ISO/IEC 9899:1999 Programming languages - C
+
+<P>
+Langer, Angelika and Klaus Kreft, Standard C++ IOStreams and Locales, Advanced Programmer's Guide and Reference, Addison Wesley Longman, Inc. 2000
+
+<P>
+Stroustrup, Bjarne, Appendix D, The C++ Programming Language, Special Edition, Addison Wesley, Inc. 2000
+
+<P>
+System Interface Definitions, Issue 6 (IEEE Std. 1003.1-200x)
+The Open Group/The Institute of Electrical and Electronics Engineers, Inc.
+http://www.opennc.org/austin/docreg.html
+
+