OSDN Git Service
(root)
/
pf3gnuchains
/
gcc-fork.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
2010-03-23 Rafael Ávila de Espíndola <respindola@mozilla.com>
[pf3gnuchains/gcc-fork.git]
/
include
/
splay-tree.h
diff --git
a/include/splay-tree.h
b/include/splay-tree.h
index
8f236e0
..
480b2c4
100644
(file)
--- a/
include/splay-tree.h
+++ b/
include/splay-tree.h
@@
-1,5
+1,6
@@
/* A splay-tree datatype.
/* A splay-tree datatype.
- Copyright 1998, 1999, 2000, 2002, 2007 Free Software Foundation, Inc.
+ Copyright 1998, 1999, 2000, 2002, 2005, 2007, 2009, 2010
+ Free Software Foundation, Inc.
Contributed by Mark Mitchell (mark@markmitchell.com).
This file is part of GCC.
Contributed by Mark Mitchell (mark@markmitchell.com).
This file is part of GCC.
@@
-40,7
+41,13
@@
extern "C" {
typedef unsigned long int libi_uhostptr_t;
typedef long int libi_shostptr_t;
#else
typedef unsigned long int libi_uhostptr_t;
typedef long int libi_shostptr_t;
#else
+#ifdef __GNUC__
+ __extension__
+#endif
typedef unsigned long long libi_uhostptr_t;
typedef unsigned long long libi_uhostptr_t;
+#ifdef __GNUC__
+ __extension__
+#endif
typedef long long libi_shostptr_t;
#endif
typedef long long libi_shostptr_t;
#endif
@@
-112,9
+119,13
@@
struct GTY(()) splay_tree_s {
/* The deallocate-value function. NULL if no cleanup is necessary. */
splay_tree_delete_value_fn delete_value;
/* The deallocate-value function. NULL if no cleanup is necessary. */
splay_tree_delete_value_fn delete_value;
- /*
Allocate/free functions, and a data pointer to pass to them.
*/
+ /*
Node allocate function. Takes allocate_data as a parameter.
*/
splay_tree_allocate_fn allocate;
splay_tree_allocate_fn allocate;
+
+ /* Free function for nodes and trees. Takes allocate_data as a parameter. */
splay_tree_deallocate_fn deallocate;
splay_tree_deallocate_fn deallocate;
+
+ /* Parameter for allocate/free functions. */
void * GTY((skip)) allocate_data;
};
void * GTY((skip)) allocate_data;
};
@@
-129,6
+140,13
@@
extern splay_tree splay_tree_new_with_allocator (splay_tree_compare_fn,
splay_tree_allocate_fn,
splay_tree_deallocate_fn,
void *);
splay_tree_allocate_fn,
splay_tree_deallocate_fn,
void *);
+extern splay_tree splay_tree_new_typed_alloc (splay_tree_compare_fn,
+ splay_tree_delete_key_fn,
+ splay_tree_delete_value_fn,
+ splay_tree_allocate_fn,
+ splay_tree_allocate_fn,
+ splay_tree_deallocate_fn,
+ void *);
extern void splay_tree_delete (splay_tree);
extern splay_tree_node splay_tree_insert (splay_tree,
splay_tree_key,
extern void splay_tree_delete (splay_tree);
extern splay_tree_node splay_tree_insert (splay_tree,
splay_tree_key,