ANSI C doesn't allow trailing semi-colons after a function's closing brace
so these macros probably shouldn't be used like that at all. So, this change removes the misleading comment and also adds an implicit trailing semi-colon to the DECLARE macros so they too don't require one.
This commit is contained in:
parent
733777275b
commit
c0e7c3aab9
1 changed files with 3 additions and 6 deletions
|
@ -94,14 +94,11 @@ typedef void (*LHASH_DOALL_ARG_FN_TYPE)(void *, void *);
|
|||
* pointer casting and the macro-defined callbacks provide per-variable casting
|
||||
* before deferring to the underlying type-specific callbacks. NB: It is
|
||||
* possible to place a "static" in front of both the DECLARE and IMPLEMENT
|
||||
* macros if the functions are strictly internal. To keep text-editors happy,
|
||||
* the macro deliberately doesn't define a trailing semi-colon - so the macro
|
||||
* can be placed just like a regular function declaration, with an optional
|
||||
* "static" prefix and trailing simi-colon. */
|
||||
* macros if the functions are strictly internal. */
|
||||
|
||||
/* First: "hash" functions */
|
||||
#define DECLARE_LHASH_HASH_FN(f_name,o_type) \
|
||||
unsigned long f_name##_LHASH_HASH(void *)
|
||||
unsigned long f_name##_LHASH_HASH(void *);
|
||||
#define IMPLEMENT_LHASH_HASH_FN(f_name,o_type) \
|
||||
unsigned long f_name##_LHASH_HASH(void *arg) { \
|
||||
o_type a = (o_type)arg; \
|
||||
|
@ -110,7 +107,7 @@ typedef void (*LHASH_DOALL_ARG_FN_TYPE)(void *, void *);
|
|||
|
||||
/* Second: "compare" functions */
|
||||
#define DECLARE_LHASH_COMP_FN(f_name,o_type) \
|
||||
int f_name##_LHASH_COMP(void *, void *)
|
||||
int f_name##_LHASH_COMP(void *, void *);
|
||||
#define IMPLEMENT_LHASH_COMP_FN(f_name,o_type) \
|
||||
int f_name##_LHASH_COMP(void *arg1, void *arg2) { \
|
||||
o_type a = (o_type)arg1; \
|
||||
|
|
Loading…
Reference in a new issue