Avoid some aliasing violations in libio
[glibc.git] / include / search.h
blob24eafc0f71c6ab6b6839dbd276dea800898f847d
1 #ifndef _SEARCH_H
2 #include <misc/search.h>
4 #ifndef _ISOMAC
5 extern __typeof (hcreate_r) __hcreate_r;
6 libc_hidden_proto (__hcreate_r)
7 extern __typeof (hdestroy_r) __hdestroy_r;
8 libc_hidden_proto (__hdestroy_r)
9 extern __typeof (hsearch_r) __hsearch_r;
10 libc_hidden_proto (__hsearch_r)
11 libc_hidden_proto (lfind)
13 /* Now define the internal interfaces. */
14 extern void __hdestroy (void);
15 extern void *__tsearch (const void *__key, void **__rootp,
16 __compar_fn_t compar);
17 extern void *__tfind (const void *__key, void *const *__rootp,
18 __compar_fn_t compar);
19 extern void *__tdelete (const void *__key, void **__rootp,
20 __compar_fn_t compar);
21 extern void __twalk (const void *__root, __action_fn_t action);
22 extern void __tdestroy (void *__root, __free_fn_t freefct);
23 #endif
24 #endif