On Tue, 17 Jul 2007 16:32:09 -0700
"jerry gay" <[EMAIL PROTECTED]> wrote:
> that's a big, ugly mess of macros. your solution is concise, but void
> pointers are dangerous and should be avoided wherever possible. it's
> not a coding standard yet, but it will be *soon*. perhaps there's a
> solution that's both easier on the eyes, and safer.

I agree that void* pointers are dangerous, but hey, that's what
Parrot_dlsym returns.  Macros can gloss over the issue, but at some
point, you have to assign Parrot_dlsym's void* return value to
something else, and hope you get that right.  You can try to hide it
behind some macros, which is what UINTVAL2PTR() is for, and I did try
that, and it didn't work.

Short of storing symbol-prototype information in a special linker
section and strcmp()ing that at runtime, which is probably even
*uglier* and less portable, I don't know what else you can do here.
But I'm open to suggestions.

Mark

Reply via email to