aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog2
-rw-r--r--FAQ17
-rw-r--r--locale/programs/locfile-kw.h169
3 files changed, 97 insertions, 91 deletions
diff --git a/ChangeLog b/ChangeLog
index 168cd67..2ebe577 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -5,6 +5,7 @@ Fri Jul 5 17:34:47 1996 Miles Bader <miles@gnu.ai.mit.edu>
* login/pututline_r.c (pututline_r): Since we assign RESULT from
lseek now, check that it's >= 0, not == 0.
+Fri Jul 5 12:22:51 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
Wed Jul 3 13:28:04 1996 Miles Bader <miles@gnu.ai.mit.edu>
* login/login.c (login): Make a copy of *UT, fill in various
@@ -14,7 +15,6 @@ Wed Jul 3 13:28:04 1996 Miles Bader <miles@gnu.ai.mit.edu>
* login/getutline_r.c (getutline_r): When we return ESRCH, mark
UTMP_DATA->ubuf invalid (by setting UTMP_DATA->loc_utmp to 0).
-Fri Jul 5 12:22:51 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* hurd/hurdsig.c (_hurd_internal_post_signal): In case of handled
signal during critical section doing interruptible RPC, if
diff --git a/FAQ b/FAQ
index 1a434d0..6c67d6b 100644
--- a/FAQ
+++ b/FAQ
@@ -1,7 +1,7 @@
Frequently Asked Question on GNU C Library
As every FAQ this one also tries to answer questions the user might have
-when using the pacakge. Please make sure you read this before sending
+when using the package. Please make sure you read this before sending
questions or bug reports to the maintainers.
The GNU C Library is very complex. The building process exploits the
@@ -39,6 +39,9 @@ please let me know.
[Q9] ``Why does getlogin() always return NULL on my Linux box?''
+[Q10] ``Where are the DST_* constants found in <sys/time.h> on many
+ systems?''
+
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
[Q1] ``What systems does the GNU C Library run on?''
@@ -259,6 +262,18 @@ means to support the new techniques later.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
+[Q10] ``Where are the DST_* constants found in <sys/time.h> on many
+ systems?''
+
+[A10] {UD} These constants come from the old BSD days and are not used
+today anymore (even the Linux based glibc does not implement the handling
+although the cosntants are defined).
+
+Instead GNU libc contains the zone database handling and compatibility
+code for POSIX TZ environment variable handling.
+
+
+~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Answers were given by:
{UD} Ulrich Drepper, <drepper@cygnus.com>
diff --git a/locale/programs/locfile-kw.h b/locale/programs/locfile-kw.h
index c892669..fd3c834 100644
--- a/locale/programs/locfile-kw.h
+++ b/locale/programs/locfile-kw.h
@@ -28,8 +28,8 @@ struct keyword_t ;
#define MIN_WORD_LENGTH 3
#define MAX_WORD_LENGTH 17
#define MIN_HASH_VALUE 3
-#define MAX_HASH_VALUE 185
-/* maximum key range = 183, duplicates = 0 */
+#define MAX_HASH_VALUE 132
+/* maximum key range = 130, duplicates = 0 */
#ifdef __GNUC__
inline
@@ -39,19 +39,19 @@ hash (register const char *str, register int len)
{
static const unsigned char asso_values[] =
{
- 186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
- 186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
- 186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
- 186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
- 186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
- 186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
- 186, 186, 186, 186, 186, 186, 186, 0, 0, 0,
- 0, 0, 186, 0, 186, 186, 0, 186, 0, 35,
- 186, 186, 0, 0, 0, 5, 186, 186, 186, 0,
- 186, 186, 186, 186, 186, 15, 186, 0, 0, 5,
- 15, 10, 55, 30, 15, 75, 186, 20, 5, 40,
- 10, 0, 0, 186, 35, 30, 0, 70, 186, 10,
- 20, 75, 186, 186, 186, 186, 186, 186,
+ 133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
+ 133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
+ 133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
+ 133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
+ 133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
+ 133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
+ 133, 133, 133, 133, 133, 133, 133, 0, 0, 0,
+ 0, 0, 133, 0, 133, 133, 0, 133, 0, 20,
+ 133, 133, 0, 0, 0, 5, 133, 133, 133, 5,
+ 133, 133, 133, 133, 133, 5, 133, 0, 60, 0,
+ 15, 10, 20, 40, 5, 20, 133, 0, 45, 40,
+ 10, 0, 0, 133, 15, 50, 0, 30, 0, 10,
+ 15, 15, 133, 133, 133, 133, 133, 133,
};
register int hval = len;
@@ -59,16 +59,16 @@ hash (register const char *str, register int len)
{
default:
case 5:
- hval += asso_values[(int) str[4]];
+ hval += asso_values[str[4]];
case 4:
case 3:
case 2:
- hval += asso_values[(int) str[1]];
+ hval += asso_values[str[1]];
case 1:
- hval += asso_values[(int) str[0]];
+ hval += asso_values[str[0]];
break;
}
- return hval + asso_values[(int) str[len - 1]];
+ return hval + asso_values[str[len - 1]];
}
#ifdef __GNUC__
@@ -86,113 +86,104 @@ locfile_hash (register const char *str, register int len)
{"LC_TIME", tok_lc_time, 0},
{"LC_CTYPE", tok_lc_ctype, 0},
{"",},
- {"alpha", tok_alpha, 0},
+ {"t_fmt", tok_t_fmt, 0},
{"LC_MESSAGES", tok_lc_messages, 0},
- {"",}, {"",},
+ {"",},
+ {"charconv", tok_charconv, 0},
{"UNDEFINED", tok_undefined, 0},
{"LC_NUMERIC", tok_lc_numeric, 0},
- {"",}, {"",},
- {"position", tok_position, 0},
- {"",},
- {"t_fmt", tok_t_fmt, 0},
{"",},
{"collating-element", tok_collating_element, 0},
- {"positive_sign", tok_positive_sign, 0},
- {"",},
- {"abmon", tok_abmon, 0},
- {"collating-symbol", tok_collating_symbol, 0},
- {"",}, {"",}, {"",},
- {"cntrl", tok_cntrl, 0},
- {"",}, {"",},
- {"backward", tok_backward, 0},
- {"",},
- {"d_fmt", tok_d_fmt, 0},
- {"",}, {"",}, {"",},
- {"p_sep_by_space", tok_p_sep_by_space, 0},
+ {"position", tok_position, 0},
+ {"copy", tok_copy, 0},
{"print", tok_print, 0},
{"",},
{"toupper", tok_toupper, 0},
- {"negative_sign", tok_negative_sign, 0},
- {"",},
- {"LC_COLLATE", tok_lc_collate, 0},
- {"LC_MONETARY", tok_lc_monetary, 0},
+ {"positive_sign", tok_positive_sign, 0},
{"",},
+ {"d_fmt", tok_d_fmt, 0},
+ {"",}, {"",},
{"era", tok_era, 0},
- {"n_sep_by_space", tok_n_sep_by_space, 0},
- {"blank", tok_blank, 0},
+ {"p_sep_by_space", tok_p_sep_by_space, 0},
+ {"LC_COLLATE", tok_lc_collate, 0},
{"noexpr", tok_noexpr, 0},
{"tolower", tok_tolower, 0},
- {"mon", tok_mon, 0},
+ {"day", tok_day, 0},
{"era_t_fmt", tok_era_t_fmt, 0},
- {"space", tok_space, 0},
+ {"punct", tok_punct, 0},
+ {"LC_MONETARY", tok_lc_monetary, 0},
+ {"comment_char", tok_comment_char, 0},
{"",},
- {"mon_thousands_sep", tok_mon_thousands_sep, 0},
- {"thousands_sep", tok_thousands_sep, 0},
+ {"n_sep_by_space", tok_n_sep_by_space, 0},
+ {"digit", tok_digit, 0},
+ {"order_start", tok_order_start, 0},
+ {"forward", tok_forward, 0},
+ {"negative_sign", tok_negative_sign, 0},
{"",},
- {"alt_digits", tok_alt_digits, 0},
+ {"nostr", tok_nostr, 0},
+ {"yesstr", tok_yesstr, 0},
+ {"d_t_fmt", tok_d_t_fmt, 0},
{"",},
- {"comment_char", tok_comment_char, 0},
+ {"era_d_fmt", tok_era_d_fmt, 0},
+ {"alpha", tok_alpha, 0},
+ {"era_d_t_fmt", tok_era_d_t_fmt, 0},
{"",},
- {"charclass", tok_charclass, 0},
+ {"mon", tok_mon, 0},
+ {"order_end", tok_order_end, 0},
{"t_fmt_ampm", tok_t_fmt_ampm, 0},
+ {"xdigit", tok_xdigit, 0},
+ {"mon_thousands_sep", tok_mon_thousands_sep, 0},
+ {"",}, {"",}, {"",},
+ {"collating-symbol", tok_collating_symbol, 0},
+ {"yesexpr", tok_yesexpr, 0},
+ {"era_year", tok_era_year, 0},
+ {"charclass", tok_charclass, 0},
+ {"upper", tok_upper, 0},
{"p_sign_posn", tok_p_sign_posn, 0},
- {"charmap", tok_charmap, 0},
{"",},
- {"era_d_fmt", tok_era_d_fmt, 0},
+ {"thousands_sep", tok_thousands_sep, 0},
+ {"",},
+ {"graph", tok_graph, 0},
{"",},
- {"era_d_t_fmt", tok_era_d_t_fmt, 0},
{"mon_decimal_point", tok_mon_decimal_point, 0},
{"p_cs_precedes", tok_p_cs_precedes, 0},
{"",},
- {"punct", tok_punct, 0},
+ {"space", tok_space, 0},
{"n_sign_posn", tok_n_sign_posn, 0},
- {"forward", tok_forward, 0},
- {"decimal_point", tok_decimal_point, 0},
{"",},
+ {"decimal_point", tok_decimal_point, 0},
+ {"from", tok_from, 0},
{"lower", tok_lower, 0},
- {"order_start", tok_order_start, 0},
- {"",},
+ {"",}, {"",},
{"n_cs_precedes", tok_n_cs_precedes, 0},
- {"copy", tok_copy, 0},
- {"nostr", tok_nostr, 0},
+ {"",},
+ {"abmon", tok_abmon, 0},
{"escape_char", tok_escape_char, 0},
{"",}, {"",}, {"",},
- {"alnum", tok_alnum, 0},
+ {"int_curr_symbol", tok_int_curr_symbol, 0},
+ {"",}, {"",},
+ {"backward", tok_backward, 0},
{"",},
- {"d_t_fmt", tok_d_t_fmt, 0},
- {"day", tok_day, 0},
- {"order_end", tok_order_end, 0},
- {"digit", tok_digit, 0},
+ {"abday", tok_abday, 0},
{"",}, {"",}, {"",}, {"",},
- {"graph", tok_graph, 0},
- {"",}, {"",},
+ {"currency_symbol", tok_currency_symbol, 0},
+ {"frac_digits", tok_frac_digits, 0},
+ {"",},
{"grouping", tok_grouping, 0},
{"",},
- {"currency_symbol", tok_currency_symbol, 0},
+ {"cntrl", tok_cntrl, 0},
+ {"",}, {"",}, {"",}, {"",},
+ {"blank", tok_blank, 0},
+ {"",}, {"",}, {"",}, {"",},
+ {"int_frac_digits", tok_int_frac_digits, 0},
+ {"",}, {"",}, {"",}, {"",},
+ {"alt_digits", tok_alt_digits, 0},
{"",}, {"",}, {"",}, {"",},
- {"int_curr_symbol", tok_int_curr_symbol, 0},
- {"",},
- {"mon_grouping", tok_mon_grouping, 0},
- {"",}, {"",}, {"",},
- {"xdigit", tok_xdigit, 0},
- {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",},
{"am_pm", tok_am_pm, 0},
- {"yesstr", tok_yesstr, 0},
- {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",},
- {"from", tok_from, 0},
- {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",},
+ {"",}, {"",}, {"",}, {"",},
+ {"alnum", tok_alnum, 0},
{"",},
- {"upper", tok_upper, 0},
- {"frac_digits", tok_frac_digits, 0},
- {"yesexpr", tok_yesexpr, 0},
- {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",},
- {"abday", tok_abday, 0},
- {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",},
- {"era_year", tok_era_year, 0},
- {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",},
- {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",}, {"",},
- {"",}, {"",}, {"",},
- {"int_frac_digits", tok_int_frac_digits, 0},
+ {"mon_grouping", tok_mon_grouping, 0},
};
if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)