Skip to contentSkip to conversation

comparison of function pointers

parisc-linux John David Anglin 1 participant 1 message Dec 15, 2002 1 message not in the archive

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): 20021213192039.GB12890@systemhalted

#1 lore raw

GCC 3.3 and later has a new function __canonicalize_funcptr_for_compare in libgcc.a for comparing function pointers. There are routines in glibc that compare function pointers and therefore depend on the presence of this function if glibc is built with gcc-3.3 or later. These are gconv_open.o, signal.o, sigvec.o, sysv_signal.o, sigset.o, malloc.o sleep.o, getaddrinfo.o, svc.o, svc_simple.o.

Earlier versions of gcc don't have the function. Thus, if you try to use an earlier version of gcc with a library built with gcc-3.3 or later, the routine won't be present in libgcc. One solution might be to add __canonicalize_funcptr_for_compare to glibc. This might be a good idea as it depends closely on the implementation of the dynamic linker interface in glibc for function calls.

Dave

Signature · 2 lines
J. David Anglin                                  [email protected]
National Research Council of Canada              (613) 990-0752 (FAX: 952-6605)