summary refs log tree commit diff
path: root/locale
diff options
context:
space:
mode:
Diffstat (limited to 'locale')
-rw-r--r--locale/C-collate.c3
-rw-r--r--locale/C-ctype.c8
-rw-r--r--locale/C-messages.c9
-rw-r--r--locale/C-monetary.c28
-rw-r--r--locale/C-numeric.c10
-rw-r--r--locale/C-time.c5
6 files changed, 49 insertions, 14 deletions
diff --git a/locale/C-collate.c b/locale/C-collate.c
index 08fb47be06..0d7be6b7e0 100644
--- a/locale/C-collate.c
+++ b/locale/C-collate.c
@@ -20,6 +20,9 @@ Boston, MA 02111-1307, USA.  */
 #include <endian.h>
 #include "localeinfo.h"
 
+/* These tables' entries contain values which make the function behave
+   accoriding to POSIX.2 Table 2-8 ``LC_COLLATE Category Definition in
+   the POSIX Locale''.  */
 
 const u_int32_t _nl_C_LC_COLLATE_symbol_hash[446] =
 {
diff --git a/locale/C-ctype.c b/locale/C-ctype.c
index 6daeb1d7cd..0b9f1a0bd2 100644
--- a/locale/C-ctype.c
+++ b/locale/C-ctype.c
@@ -20,6 +20,14 @@ Boston, MA 02111-1307, USA.  */
 #include "localeinfo.h"
 #include <endian.h>
 
+/* This table's entries are taken from POSIX.2 Table 2-6
+   ``LC_CTYPE Category Definitionin the POSIX Locale''.
+
+   The `_nl_C_LC_CTYPE_width' array is a GNU extension.
+
+   In the `_nl_C_LC_CTYPE_class' array the value for EOF (== -1)
+   is set to always return 0 and the conversion arrays return EOF.  */
+
 const char _nl_C_LC_CTYPE_class[768] =
   /* 0x80 */ "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" "\002\000"
   /* 0x86 */ "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" "\002\000"
diff --git a/locale/C-messages.c b/locale/C-messages.c
index b5fcd199ca..566fedce91 100644
--- a/locale/C-messages.c
+++ b/locale/C-messages.c
@@ -19,14 +19,19 @@ Boston, MA 02111-1307, USA.  */
 
 #include "localeinfo.h"
 
+/* This table's entries are taken from POSIX.2 Table 2-12
+   ``LC_MESSAGES Category Definition in the POSIX Locale''.
+
+   The last two fields are a GNU extension.  */
+
 const struct locale_data _nl_C_LC_MESSAGES =
 {
   _nl_C_name,
   NULL, 0, /* no file mapped */
   4,
   {
-    { string: "[yY][[:alpha:]]*" },
-    { string: "[nN][[:alpha:]]*" },
+    { string: "^[yY]" },
+    { string: "^[nN]" },
     { string: "" },
     { string: "" }
   }
diff --git a/locale/C-monetary.c b/locale/C-monetary.c
index 542e5c30d1..d81dbf812d 100644
--- a/locale/C-monetary.c
+++ b/locale/C-monetary.c
@@ -19,6 +19,14 @@ Boston, MA 02111-1307, USA.  */
 
 #include "localeinfo.h"
 
+/* This table's entries are taken from POSIX.2 Table 2-9
+   ``LC_MONETARY Category Definition in the POSIX Locale''.  */
+#ifdef __CHAR_UNSIGNED__
+static const char not_available[] = "\377";
+#else
+static const char not_available[] = "\177";
+#endif
+
 const struct locale_data _nl_C_LC_MONETARY =
 {
   _nl_C_name,
@@ -27,18 +35,18 @@ const struct locale_data _nl_C_LC_MONETARY =
   {
     { string: "" },
     { string: "" },
-    { string: "." },
     { string: "" },
-    { string: "\177" },
+    { string: "" },
+    { string: not_available },
     { string: "" },
     { string: "" },
-    { string: "\177" },
-    { string: "\177" },
-    { string: "\177" },
-    { string: "\177" },
-    { string: "\177" },
-    { string: "\177" },
-    { string: "\177" },
-    { string: "\177" }
+    { string: not_available },
+    { string: not_available },
+    { string: not_available },
+    { string: not_available },
+    { string: not_available },
+    { string: not_available },
+    { string: not_available },
+    { string: not_available }
   }
 };
diff --git a/locale/C-numeric.c b/locale/C-numeric.c
index 6298f7000f..9a981f195a 100644
--- a/locale/C-numeric.c
+++ b/locale/C-numeric.c
@@ -19,6 +19,14 @@ Boston, MA 02111-1307, USA.  */
 
 #include "localeinfo.h"
 
+/* This table's entries are taken from POSIX.2 Table 2-10
+   ``LC_NUMERIC Category Definition in the POSIX Locale''.  */
+#ifdef __CHAR_UNSIGNED__
+static const char not_available[] = "\377";
+#else
+static const char not_available[] = "\177";
+#endif
+
 const struct locale_data _nl_C_LC_NUMERIC =
 {
   _nl_C_name,
@@ -27,6 +35,6 @@ const struct locale_data _nl_C_LC_NUMERIC =
   {
     { string: "." },
     { string: "" },
-    { string: "\177" }
+    { string: not_available }
   }
 };
diff --git a/locale/C-time.c b/locale/C-time.c
index a595e6b251..b03ff498ab 100644
--- a/locale/C-time.c
+++ b/locale/C-time.c
@@ -19,6 +19,9 @@ Boston, MA 02111-1307, USA.  */
 
 #include "localeinfo.h"
 
+/* This table's entries are taken from POSIX.2 Table 2-11
+   ``LC_TIME Category Definition in the POSIX Locale''.  */
+
 const struct locale_data _nl_C_LC_TIME =
 {
   _nl_C_name,
@@ -65,7 +68,7 @@ const struct locale_data _nl_C_LC_TIME =
     { string: "December" },
     { string: "AM" },
     { string: "PM" },
-    { string: "%a %b %d %H:%M:%S %Y" },
+    { string: "%a %b %e %H:%M:%S %Y" },
     { string: "%m/%d/%y" },
     { string: "%H:%M:%S" },
     { string: "%I:%M:%S %p" },