mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-08 14:20:07 +00:00
Update.
2003-12-22 Jakub Jelinek <jakub@redhat.com> * posix/regcomp.c: Remove C99-ism. * posix/tst-rxspencer.c: Likewise. Based on a patch by Alex Davis <alex14641@yahoo.com>. 2002-12-17 Paolo Bonzini <bonzini@gnu.org> * posix/regex_internal.h [!_LIBC] (internal_function): Define. (re_string_allocate, re_string_construct, re_string_reconstruct, re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer, build_upper_buffer, re_string_translate_buffer, re_string_destruct, re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at, re_string_context_at, re_node_set_alloc, re_node_set_init_1 re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect, re_node_set_init_union, re_node_set_merge, re_node_set_insert re_node_set_compare, re_node_set_contains re_node_set_remove_at, re_dfa_add_node, re_acquire_state, re_acquire_state_context, free_state): Add internal_function to declaration. * posix/regexec.c (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_free_subtops, match_ctx_add_entry, search_cur_bkref_entry, match_ctx_clear_flag, match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init, re_search_internal, re_search_2_stub, re_search_stub, re_copy_regs, acquire_init_state_context, prune_impossible_nodes, check_matching, check_halt_node_context, check_halt_state_context update_regs, proceed_next_node, push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return, sift_states_iter_mb, sift_states_backward update_cur_sifted_state, add_epsilon_src_nodes, sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref, clean_state_log_if_need, merge_state_array, transit_state, check_subexp_matching_top, transit_state_sb, transit_state_mb, transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node, check_arrival, check_arrival_add_next_nodes, find_collation_sequence_value, check_arrival_expand_ecl, check_arrival_expand_ecl_sub, expand_bkref_cache, build_trtable, check_node_accept_bytes, extend_buffers, group_nodes_into_DFAstates, check_node_accept): Likewise. * posix/regex_internal.c (re_string_construct_common, re_string_skip_chars, create_newstate_common, register_state, create_ci_newstate, create_cd_newstate, calc_state_hash): Likewise. (re_string_peek_byte_case, re_fetch_byte_case): Change declaration from ANSI to K&R. 2002-12-16 Paolo Bonzini <bonzini@gnu.org> * posix/regexec.c (build_trtable): Don't allocate the trtable until state->word_trtable is known. Don't hardcode UINT_BITS iterations on each bitset item.
This commit is contained in:
parent
3ce12656a8
commit
8cae99dba5
63
ChangeLog
63
ChangeLog
@ -1,3 +1,66 @@
|
||||
2003-12-22 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* posix/regcomp.c: Remove C99-ism.
|
||||
* posix/tst-rxspencer.c: Likewise.
|
||||
Based on a patch by Alex Davis <alex14641@yahoo.com>.
|
||||
|
||||
2002-12-17 Paolo Bonzini <bonzini@gnu.org>
|
||||
|
||||
* posix/regex_internal.h [!_LIBC] (internal_function): Define.
|
||||
(re_string_allocate, re_string_construct, re_string_reconstruct,
|
||||
re_string_realloc_buffers, build_wcs_buffer,
|
||||
build_wcs_upper_buffer, build_upper_buffer,
|
||||
re_string_translate_buffer, re_string_destruct,
|
||||
re_string_elem_size_at, re_string_char_size_at,
|
||||
re_string_wchar_at, re_string_context_at,
|
||||
re_node_set_alloc, re_node_set_init_1
|
||||
re_node_set_init_2, re_node_set_init_copy,
|
||||
re_node_set_add_intersect, re_node_set_init_union,
|
||||
re_node_set_merge, re_node_set_insert
|
||||
re_node_set_compare, re_node_set_contains
|
||||
re_node_set_remove_at, re_dfa_add_node,
|
||||
re_acquire_state, re_acquire_state_context,
|
||||
free_state): Add internal_function to declaration.
|
||||
|
||||
* posix/regexec.c (match_ctx_init, match_ctx_clean,
|
||||
match_ctx_free, match_ctx_free_subtops,
|
||||
match_ctx_add_entry, search_cur_bkref_entry,
|
||||
match_ctx_clear_flag, match_ctx_add_subtop,
|
||||
match_ctx_add_sublast, sift_ctx_init,
|
||||
re_search_internal, re_search_2_stub, re_search_stub,
|
||||
re_copy_regs, acquire_init_state_context,
|
||||
prune_impossible_nodes, check_matching,
|
||||
check_halt_node_context, check_halt_state_context
|
||||
update_regs, proceed_next_node, push_fail_stack,
|
||||
pop_fail_stack, set_regs, free_fail_stack_return,
|
||||
sift_states_iter_mb, sift_states_backward
|
||||
update_cur_sifted_state, add_epsilon_src_nodes,
|
||||
sub_epsilon_src_nodes, check_dst_limits,
|
||||
check_dst_limits_calc_pos, check_subexp_limits,
|
||||
sift_states_bkref, clean_state_log_if_need,
|
||||
merge_state_array, transit_state,
|
||||
check_subexp_matching_top, transit_state_sb,
|
||||
transit_state_mb, transit_state_bkref,
|
||||
get_subexp, get_subexp_sub, find_subexp_node,
|
||||
check_arrival, check_arrival_add_next_nodes,
|
||||
find_collation_sequence_value, check_arrival_expand_ecl,
|
||||
check_arrival_expand_ecl_sub, expand_bkref_cache,
|
||||
build_trtable, check_node_accept_bytes, extend_buffers,
|
||||
group_nodes_into_DFAstates, check_node_accept): Likewise.
|
||||
|
||||
* posix/regex_internal.c (re_string_construct_common,
|
||||
re_string_skip_chars, create_newstate_common,
|
||||
register_state, create_ci_newstate, create_cd_newstate,
|
||||
calc_state_hash): Likewise.
|
||||
(re_string_peek_byte_case, re_fetch_byte_case): Change
|
||||
declaration from ANSI to K&R.
|
||||
|
||||
2002-12-16 Paolo Bonzini <bonzini@gnu.org>
|
||||
|
||||
* posix/regexec.c (build_trtable): Don't allocate the trtable
|
||||
until state->word_trtable is known. Don't hardcode UINT_BITS
|
||||
iterations on each bitset item.
|
||||
|
||||
2003-12-22 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
|
||||
|
||||
* sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
|
||||
|
@ -1,3 +1,7 @@
|
||||
2003-12-22 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* tst-numeric.data: Remove reliance on nb_NO.ISO-8859-1 locale.
|
||||
|
||||
2003-12-05 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* SUPPORTED: Add az_ZA.UTF-8, bn_BD, bn_IN, br_FR@euro, tt_RU, zh_SG.
|
||||
|
@ -41,9 +41,7 @@ C *%g* 1.23 *1.23*
|
||||
C %9g 1.23 1.23
|
||||
C %9g -1.23 -1.23
|
||||
#
|
||||
# check both the norwegian locales and snprintf with that data
|
||||
# Locale-dependent test.
|
||||
#
|
||||
nb_NO.ISO-8859-1 %'g 123.45 123,45
|
||||
nb_NO.ISO-8859-1 %'g -123.45 -123,45
|
||||
nn_NO.ISO-8859-1 %'g 123.45 123,45
|
||||
nn_NO.ISO-8859-1 %'g -123.45 -123,45
|
||||
|
@ -2968,6 +2968,7 @@ parse_bracket_exp (regexp, dfa, token, syntax, err)
|
||||
#endif /* not RE_ENABLE_I18N */
|
||||
bin_tree_t *work_tree;
|
||||
int token_len;
|
||||
int first_round = 1;
|
||||
#ifdef _LIBC
|
||||
collseqmb = (const unsigned char *)
|
||||
_NL_CURRENT (LC_COLLATE, _NL_COLLATE_COLLSEQMB);
|
||||
@ -3027,7 +3028,6 @@ parse_bracket_exp (regexp, dfa, token, syntax, err)
|
||||
if (token->type == OP_CLOSE_BRACKET)
|
||||
token->type = CHARACTER;
|
||||
|
||||
int first_round = 1;
|
||||
while (1)
|
||||
{
|
||||
bracket_elem_t start_elem, end_elem;
|
||||
|
@ -21,25 +21,25 @@
|
||||
static void re_string_construct_common (const char *str, int len,
|
||||
re_string_t *pstr,
|
||||
RE_TRANSLATE_TYPE trans, int icase,
|
||||
const re_dfa_t *dfa);
|
||||
const re_dfa_t *dfa) internal_function;
|
||||
#ifdef RE_ENABLE_I18N
|
||||
static int re_string_skip_chars (re_string_t *pstr, int new_raw_idx,
|
||||
wint_t *last_wc);
|
||||
wint_t *last_wc) internal_function;
|
||||
#endif /* RE_ENABLE_I18N */
|
||||
static re_dfastate_t *create_newstate_common (re_dfa_t *dfa,
|
||||
const re_node_set *nodes,
|
||||
unsigned int hash);
|
||||
unsigned int hash) internal_function;
|
||||
static reg_errcode_t register_state (re_dfa_t *dfa, re_dfastate_t *newstate,
|
||||
unsigned int hash);
|
||||
unsigned int hash) internal_function;
|
||||
static re_dfastate_t *create_ci_newstate (re_dfa_t *dfa,
|
||||
const re_node_set *nodes,
|
||||
unsigned int hash);
|
||||
unsigned int hash) internal_function;
|
||||
static re_dfastate_t *create_cd_newstate (re_dfa_t *dfa,
|
||||
const re_node_set *nodes,
|
||||
unsigned int context,
|
||||
unsigned int hash);
|
||||
unsigned int hash) internal_function;
|
||||
static unsigned int inline calc_state_hash (const re_node_set *nodes,
|
||||
unsigned int context);
|
||||
unsigned int context) internal_function;
|
||||
|
||||
/* Functions for string operation. */
|
||||
|
||||
@ -746,8 +746,9 @@ re_string_reconstruct (pstr, idx, eflags, newline)
|
||||
}
|
||||
|
||||
static unsigned char
|
||||
re_string_peek_byte_case (const re_string_t *pstr,
|
||||
int idx)
|
||||
re_string_peek_byte_case (pstr, idx)
|
||||
const re_string_t *pstr;
|
||||
int idx;
|
||||
{
|
||||
int ch, off;
|
||||
|
||||
@ -784,7 +785,8 @@ re_string_peek_byte_case (const re_string_t *pstr,
|
||||
}
|
||||
|
||||
static unsigned char
|
||||
re_string_fetch_byte_case (re_string_t *pstr)
|
||||
re_string_fetch_byte_case (pstr)
|
||||
re_string_t *pstr;
|
||||
{
|
||||
int ch;
|
||||
|
||||
|
@ -349,35 +349,44 @@ typedef struct re_string_t re_string_t;
|
||||
|
||||
struct re_dfa_t;
|
||||
typedef struct re_dfa_t re_dfa_t;
|
||||
|
||||
#ifndef _LIBC
|
||||
# ifdef __i386__
|
||||
# define internal_function __attribute ((regparm (3), stdcall))
|
||||
# else
|
||||
# define internal_function
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef RE_NO_INTERNAL_PROTOTYPES
|
||||
static reg_errcode_t re_string_allocate (re_string_t *pstr, const char *str,
|
||||
int len, int init_len,
|
||||
RE_TRANSLATE_TYPE trans, int icase,
|
||||
const re_dfa_t *dfa);
|
||||
const re_dfa_t *dfa) internal_function;
|
||||
static reg_errcode_t re_string_construct (re_string_t *pstr, const char *str,
|
||||
int len, RE_TRANSLATE_TYPE trans,
|
||||
int icase, const re_dfa_t *dfa);
|
||||
int icase, const re_dfa_t *dfa) internal_function;
|
||||
static reg_errcode_t re_string_reconstruct (re_string_t *pstr, int idx,
|
||||
int eflags, int newline);
|
||||
int eflags, int newline) internal_function;
|
||||
static reg_errcode_t re_string_realloc_buffers (re_string_t *pstr,
|
||||
int new_buf_len);
|
||||
int new_buf_len) internal_function;
|
||||
# ifdef RE_ENABLE_I18N
|
||||
static void build_wcs_buffer (re_string_t *pstr);
|
||||
static int build_wcs_upper_buffer (re_string_t *pstr);
|
||||
static void build_wcs_buffer (re_string_t *pstr) internal_function;
|
||||
static int build_wcs_upper_buffer (re_string_t *pstr) internal_function;
|
||||
# endif /* RE_ENABLE_I18N */
|
||||
static void build_upper_buffer (re_string_t *pstr);
|
||||
static void re_string_translate_buffer (re_string_t *pstr);
|
||||
static void re_string_destruct (re_string_t *pstr);
|
||||
static void build_upper_buffer (re_string_t *pstr) internal_function;
|
||||
static void re_string_translate_buffer (re_string_t *pstr) internal_function;
|
||||
static void re_string_destruct (re_string_t *pstr) internal_function;
|
||||
# ifdef RE_ENABLE_I18N
|
||||
static int re_string_elem_size_at (const re_string_t *pstr, int idx);
|
||||
static inline int re_string_char_size_at (const re_string_t *pstr, int idx);
|
||||
static inline wint_t re_string_wchar_at (const re_string_t *pstr, int idx);
|
||||
static int re_string_elem_size_at (const re_string_t *pstr, int idx) internal_function;
|
||||
static inline int re_string_char_size_at (const re_string_t *pstr, int idx) internal_function;
|
||||
static inline wint_t re_string_wchar_at (const re_string_t *pstr, int idx) internal_function;
|
||||
# endif /* RE_ENABLE_I18N */
|
||||
static unsigned int re_string_context_at (const re_string_t *input, int idx,
|
||||
int eflags, int newline_anchor);
|
||||
int eflags, int newline_anchor) internal_function;
|
||||
static unsigned char re_string_peek_byte_case (const re_string_t *pstr,
|
||||
int idx);
|
||||
static unsigned char re_string_fetch_byte_case (re_string_t *pstr);
|
||||
int idx) internal_function;
|
||||
static unsigned char re_string_fetch_byte_case (re_string_t *pstr) internal_function;
|
||||
#endif
|
||||
#define re_string_peek_byte(pstr, offset) \
|
||||
((pstr)->mbs[(pstr)->cur_idx + offset])
|
||||
@ -629,38 +638,38 @@ struct re_dfa_t
|
||||
};
|
||||
|
||||
#ifndef RE_NO_INTERNAL_PROTOTYPES
|
||||
static reg_errcode_t re_node_set_alloc (re_node_set *set, int size);
|
||||
static reg_errcode_t re_node_set_init_1 (re_node_set *set, int elem);
|
||||
static reg_errcode_t re_node_set_alloc (re_node_set *set, int size) internal_function;
|
||||
static reg_errcode_t re_node_set_init_1 (re_node_set *set, int elem) internal_function;
|
||||
static reg_errcode_t re_node_set_init_2 (re_node_set *set, int elem1,
|
||||
int elem2);
|
||||
int elem2) internal_function;
|
||||
#define re_node_set_init_empty(set) memset (set, '\0', sizeof (re_node_set))
|
||||
static reg_errcode_t re_node_set_init_copy (re_node_set *dest,
|
||||
const re_node_set *src);
|
||||
const re_node_set *src) internal_function;
|
||||
static reg_errcode_t re_node_set_add_intersect (re_node_set *dest,
|
||||
const re_node_set *src1,
|
||||
const re_node_set *src2);
|
||||
const re_node_set *src2) internal_function;
|
||||
static reg_errcode_t re_node_set_init_union (re_node_set *dest,
|
||||
const re_node_set *src1,
|
||||
const re_node_set *src2);
|
||||
const re_node_set *src2) internal_function;
|
||||
static reg_errcode_t re_node_set_merge (re_node_set *dest,
|
||||
const re_node_set *src);
|
||||
static int re_node_set_insert (re_node_set *set, int elem);
|
||||
const re_node_set *src) internal_function;
|
||||
static int re_node_set_insert (re_node_set *set, int elem) internal_function;
|
||||
static int re_node_set_compare (const re_node_set *set1,
|
||||
const re_node_set *set2);
|
||||
static int re_node_set_contains (const re_node_set *set, int elem);
|
||||
static void re_node_set_remove_at (re_node_set *set, int idx);
|
||||
const re_node_set *set2) internal_function;
|
||||
static int re_node_set_contains (const re_node_set *set, int elem) internal_function;
|
||||
static void re_node_set_remove_at (re_node_set *set, int idx) internal_function;
|
||||
#define re_node_set_remove(set,id) \
|
||||
(re_node_set_remove_at (set, re_node_set_contains (set, id) - 1))
|
||||
#define re_node_set_empty(p) ((p)->nelem = 0)
|
||||
#define re_node_set_free(set) re_free ((set)->elems)
|
||||
static int re_dfa_add_node (re_dfa_t *dfa, re_token_t token, int mode);
|
||||
static int re_dfa_add_node (re_dfa_t *dfa, re_token_t token, int mode) internal_function;
|
||||
static re_dfastate_t *re_acquire_state (reg_errcode_t *err, re_dfa_t *dfa,
|
||||
const re_node_set *nodes);
|
||||
const re_node_set *nodes) internal_function;
|
||||
static re_dfastate_t *re_acquire_state_context (reg_errcode_t *err,
|
||||
re_dfa_t *dfa,
|
||||
const re_node_set *nodes,
|
||||
unsigned int context);
|
||||
static void free_state (re_dfastate_t *state);
|
||||
unsigned int context) internal_function;
|
||||
static void free_state (re_dfastate_t *state) internal_function;
|
||||
#endif
|
||||
|
||||
|
||||
|
@ -214,6 +214,7 @@ test (const char *pattern, int cflags, const char *string, int eflags,
|
||||
n = regcomp (&re, pattern, cflags);
|
||||
if (n != 0)
|
||||
{
|
||||
char buf[500];
|
||||
if (eflags == -1)
|
||||
{
|
||||
static struct { reg_errcode_t code; const char *name; } codes []
|
||||
@ -239,7 +240,6 @@ test (const char *pattern, int cflags, const char *string, int eflags,
|
||||
return 1;
|
||||
}
|
||||
|
||||
char buf[500];
|
||||
regerror (n, &re, buf, sizeof (buf));
|
||||
printf ("%s regcomp failed: %s\n", fail, buf);
|
||||
return 1;
|
||||
|
Loading…
Reference in New Issue
Block a user