Geoff Thorpe wrote:
> 
> Hi there,
> 
> On Sun, 3 Dec 2000, Ben Laurie wrote:
> 
> > >   -static IMPLEMENT_LHASH_HASH_FN(index_serial_hash,const char **);
> > >   -static IMPLEMENT_LHASH_COMP_FN(index_serial_cmp,const char **);
> > >   -static IMPLEMENT_LHASH_HASH_FN(index_name_hash,const char **);
> > >   -static IMPLEMENT_LHASH_COMP_FN(index_name_cmp,const char **);
> > >   +static IMPLEMENT_LHASH_HASH_FN(index_serial_hash,const char **)
> > >   +static IMPLEMENT_LHASH_COMP_FN(index_serial_cmp,const char **)
> > >   +static IMPLEMENT_LHASH_HASH_FN(index_name_hash,const char **)
> > >   +static IMPLEMENT_LHASH_COMP_FN(index_name_cmp,const char **)
> >
> > Couldn't find a way to not get warnings and still have a semicolon, I'm
> > afraid.
> 
> Really? Weird ... is the compiler/OS running punched cards? <grin>
> 
> C'est la vie ... it'd be nice if the semi-colons could be retained but
> it's hardly a biggee. I'm curious though why it doesn't accept them though
> - the macro expands into a function declaration so the trailing semi-colon
> is equivalent to whether you can follow a function's closing brace with a
> semi-colon.

Which you can't in ANSI C.

> BTW: Someone asked me about whether this extra-function can be avoided -
> perhaps using macros. Simply; not *really*, because this is the callback
> being provided to LHASH so to avoid function casting, a function of the
> correct prototype is required. Having said that, I'm hoping to go back
> through most of the uses within OpenSSL and just do the per-variable
> casting inside the original functions, obviating the need for a macro
> defined wrapper in those cases altogether.
> 
> Another option would be using "inline" I guess, but I don't know how
> effective that is. Feedback welcome.

inline is pretty good, but obviously only works on some compilers.

Cheers,

Ben.

--
http://www.apache-ssl.org/ben.html

"There is no limit to what a man can do or how far he can go if he
doesn't mind who gets the credit." - Robert Woodruff
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to