From 70362701ae51cf27bdc4f1c24855ec435aeca473 Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 3 Dec 2004 03:25:49 +0000 Subject: * st.h: fix prototypes. git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@7445 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 4 ++++ intern.h | 4 ++-- st.h | 41 ++++++++++++++++++++++++++--------------- 3 files changed, 32 insertions(+), 17 deletions(-) diff --git a/ChangeLog b/ChangeLog index 9d01c5453..082835224 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Fri Dec 3 12:25:41 2004 Nobuyoshi Nakada + + * st.h: fix prototypes. + Fri Dec 3 01:55:24 2004 Hidetoshi NAGAI * ext/tk/lib/tk.rb: widget configuration by TkWindow#method_missing diff --git a/intern.h b/intern.h index 4894c5165..9779d4d83 100644 --- a/intern.h +++ b/intern.h @@ -247,8 +247,8 @@ VALUE rb_gc_enable _((void)); VALUE rb_gc_disable _((void)); VALUE rb_gc_start _((void)); /* hash.c */ -void st_foreach _((struct st_table *, int (*)(), unsigned long)); -void rb_hash_foreach _((VALUE, int (*)(), VALUE)); +void st_foreach_safe _((struct st_table *, int (*)(ANYARGS), unsigned long)); +void rb_hash_foreach _((VALUE, int (*)(ANYARGS), VALUE)); VALUE rb_hash _((VALUE)); VALUE rb_hash_new _((void)); VALUE rb_hash_freeze _((VALUE)); diff --git a/st.h b/st.h index cdf8a1220..bc12624b9 100644 --- a/st.h +++ b/st.h @@ -27,21 +27,32 @@ struct st_table { enum st_retval {ST_CONTINUE, ST_STOP, ST_DELETE, ST_CHECK}; -st_table *st_init_table(struct st_hash_type *); -st_table *st_init_table_with_size(struct st_hash_type *, int); -st_table *st_init_numtable(void); -st_table *st_init_numtable_with_size(int); -st_table *st_init_strtable(void); -st_table *st_init_strtable_with_size(int); -int st_delete(st_table *, st_data_t *, st_data_t *); -int st_delete_safe(st_table *, st_data_t *, st_data_t *, st_data_t); -int st_insert(st_table *, st_data_t, st_data_t); -int st_lookup(st_table *, st_data_t, st_data_t *); -void st_foreach(st_table *, int (*)(), st_data_t); -void st_add_direct(st_table *, st_data_t, st_data_t); -void st_free_table(st_table *); -void st_cleanup_safe(st_table *, st_data_t); -st_table *st_copy(st_table *); +#ifndef _ +# define _(args) args +#endif +#ifndef ANYARGS +# ifdef __cplusplus +# define ANYARGS ... +# else +# define ANYARGS +# endif +#endif + +st_table *st_init_table _((struct st_hash_type *)); +st_table *st_init_table_with_size _((struct st_hash_type *, int)); +st_table *st_init_numtable _((void)); +st_table *st_init_numtable_with_size _((int)); +st_table *st_init_strtable _((void)); +st_table *st_init_strtable_with_size _((int)); +int st_delete _((st_table *, st_data_t *, st_data_t *)); +int st_delete_safe _((st_table *, st_data_t *, st_data_t *, st_data_t)); +int st_insert _((st_table *, st_data_t, st_data_t)); +int st_lookup _((st_table *, st_data_t, st_data_t *)); +void st_foreach _((st_table *, int (*)(ANYARGS), st_data_t)); +void st_add_direct _((st_table *, st_data_t, st_data_t)); +void st_free_table _((st_table *)); +void st_cleanup_safe _((st_table *, st_data_t)); +st_table *st_copy _((st_table *)); #define ST_NUMCMP ((int (*)()) 0) #define ST_NUMHASH ((int (*)()) -2) -- cgit