On Sun, Dec 08, 2013 at 11:26:47PM +0000, David Laight wrote: > > > I have done it by having the original, non-_r functions provide a > > > thunk for the comparison function, as this is least invasive. If we > > > think this is too expensive, an alternative is generating a union of > > > function pointers and making tests at the call sites; another option > > > is to duplicate the code (hopefully with cpp rather than C&P) but that > > > seems like a bad plan. > > > > I'd prefer to not have another indirect call. The only difference > > is the definition and expanding a CMP macro differently? > > Is just casting the function pointers safe in C (well in NetBSD)? > (with the calling conventions that Unix effectively requires)
No. Well, it is, but it's explicitly illegal C and I don't think we should do it. > Can anything slightly less nasty be done with varags functions? Don't immediately see how... -- David A. Holland dholl...@netbsd.org