2000-06-15 H.J. Lu <hjl@gnu.org>

* sort.h: New file. Impored from gcc.

	* hashtab.h: Updated from from gcc.

2000-06-07  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* demangle.h (demangling_styles): Remove trailing comma in enum.

	* dyn-string.h (dyn_string_append_char): Change parameter from
	char to int.

2000-06-04  Alex Samuel  <samuel@codesourcery.com>

	* dyn-string.h: Move here from gcc/dyn-string.h.  Add new functions.

	* demangle.h (DMGL_GNU_NEW_ABI): New macro.
	(DMGL_STYLE_MASK): Or in DMGL_GNU_NEW_ABI.
	(current_demangling_style): Add gnu_new_abi_demangling.
	(GNU_NEW_ABI_DEMANGLING_STYLE_STRING): New macro.
	(GNU_NEW_ABI_DEMANGLING): Likewise.
	(cplus_demangle_new_abi): New declaration.
This commit is contained in:
H.J. Lu
2000-06-15 20:47:02 +00:00
parent d67b540418
commit 06ac6369e1
5 changed files with 201 additions and 26 deletions

View File

@ -1,5 +1,5 @@
/* An expandable hash tables datatype.
Copyright (C) 1999 Free Software Foundation, Inc.
Copyright (C) 1999, 2000 Free Software Foundation, Inc.
Contributed by Vladimir Makarov (vmakarov@cygnus.com).
This program is free software; you can redistribute it and/or modify
@ -38,10 +38,13 @@ extern "C" {
#include <ansidecl.h>
/* The type for a hash code. */
typedef unsigned int hashval_t;
/* Callback function pointer types. */
/* Calculate hash of a table entry. */
typedef unsigned int (*htab_hash) PARAMS ((const void *));
typedef hashval_t (*htab_hash) PARAMS ((const void *));
/* Compare a table entry with a possible entry. The entry already in
the table always comes first, so the second element can be of a
@ -99,6 +102,9 @@ struct htab
typedef struct htab *htab_t;
/* An enum saying whether we insert into the hash table or not. */
enum insert_option {NO_INSERT, INSERT};
/* The prototypes of the package functions. */
extern htab_t htab_create PARAMS ((size_t, htab_hash,
@ -107,11 +113,13 @@ extern void htab_delete PARAMS ((htab_t));
extern void htab_empty PARAMS ((htab_t));
extern void *htab_find PARAMS ((htab_t, const void *));
extern void **htab_find_slot PARAMS ((htab_t, const void *, int));
extern void *htab_find_with_hash PARAMS ((htab_t, const void *,
unsigned int));
extern void **htab_find_slot_with_hash PARAMS ((htab_t, const void *,
unsigned int, int));
extern void **htab_find_slot PARAMS ((htab_t, const void *,
enum insert_option));
extern void *htab_find_with_hash PARAMS ((htab_t, const void *,
hashval_t));
extern void **htab_find_slot_with_hash PARAMS ((htab_t, const void *,
hashval_t,
enum insert_option));
extern void htab_clear_slot PARAMS ((htab_t, void **));
extern void htab_remove_elt PARAMS ((htab_t, void *));
@ -121,6 +129,12 @@ extern size_t htab_size PARAMS ((htab_t));
extern size_t htab_elements PARAMS ((htab_t));
extern double htab_collisions PARAMS ((htab_t));
/* A hash function for pointers. */
extern htab_hash htab_hash_pointer;
/* An equality function for pointers. */
extern htab_eq htab_eq_pointer;
#ifdef __cplusplus
}
#endif /* __cplusplus */