aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorGreg McGary <greg@mcgary.org>2000-07-17 22:33:06 +0000
committerGreg McGary <greg@mcgary.org>2000-07-17 22:33:06 +0000
commit03df72bf736599aa4c2c8343b33bed3d2954afa8 (patch)
treef24ce1a51c6d0239d4e32840b06826ba9ac4a63c /include
parent14fa17ccec369589c6578af5b6a97b1353d73227 (diff)
downloadglibc-03df72bf736599aa4c2c8343b33bed3d2954afa8.zip
glibc-03df72bf736599aa4c2c8343b33bed3d2954afa8.tar.gz
glibc-03df72bf736599aa4c2c8343b33bed3d2954afa8.tar.bz2
* include/libc-symbols.h (symbol_set_declare): Revert 2000-06-26 mods.
* include/set-hooks.h (RUN_HOOK): Revert 2000-06-26 mods. Qualify ptr as __unbouned. * include/libc-symbols.h (symbol_set_declare): Revert 2000-06-26 mods. * include/set-hooks.h (RUN_HOOK): Revert 2000-06-26 mods. Qualify ptr as __unbouned.
Diffstat (limited to 'include')
-rw-r--r--include/libc-symbols.h6
-rw-r--r--include/set-hooks.h12
2 files changed, 9 insertions, 9 deletions
diff --git a/include/libc-symbols.h b/include/libc-symbols.h
index 30a27c8..147dca3 100644
--- a/include/libc-symbols.h
+++ b/include/libc-symbols.h
@@ -242,8 +242,8 @@
/* Declare SET for use in this module, if defined in another module. */
# define symbol_set_declare(set) \
- extern void (*const __start_##set) (void) __attribute__ ((__weak__)); \
- extern void (*const __stop_##set) (void) __attribute__ ((__weak__)); \
+ extern void *const __start_##set __attribute__ ((__weak__)); \
+ extern void *const __stop_##set __attribute__ ((__weak__)); \
weak_extern (__start_##set) weak_extern (__stop_##set)
/* Return a pointer (void *const *) to the first element of SET. */
@@ -261,7 +261,7 @@
asm(".stabs \"" __SYMBOL_PREFIX #set "\",25,0,0," __SYMBOL_PREFIX #symbol)
# define bss_set_element(set, symbol) ?error Must use initialized data.
# define symbol_set_define(set) void *const (set)[1];
-# define symbol_set_declare(set) extern void (*const (set)[1]) (void);
+# define symbol_set_declare(set) extern void *const (set)[1];
# define symbol_set_first_element(set) &(set)[1]
# define symbol_set_end_p(set, ptr) (*(ptr) == 0)
diff --git a/include/set-hooks.h b/include/set-hooks.h
index f4d7246..709f4c0 100644
--- a/include/set-hooks.h
+++ b/include/set-hooks.h
@@ -40,12 +40,12 @@
/* Run all the functions hooked on the set called NAME.
Each function is called like this: `function ARGS'. */
-# define RUN_HOOK(NAME, ARGS) \
-do { \
- void (*const *ptr) (void); \
- for (ptr = symbol_set_first_element (NAME); \
- ! symbol_set_end_p (NAME, ptr); ++ptr) \
- (*(__##NAME##_hook_function_t *) *ptr) ARGS; \
+# define RUN_HOOK(NAME, ARGS) \
+do { \
+ void *const *__unbounded ptr; \
+ for (ptr = symbol_set_first_element (NAME); \
+ ! symbol_set_end_p (NAME, ptr); ++ptr) \
+ (*(__##NAME##_hook_function_t *) *ptr) ARGS; \
} while (0)
/* Define a hook variable with NAME and PROTO, and a function called RUNNER