A problem with libio in egcs under glibc

H.J. Lu hjl@lucon.org
Wed Sep 17 18:16:00 GMT 1997


Hi,

There is a problem with libio in egcs under glibc. Since
glibc is MT-safe, libio uses _IO_cleanup_region_start
and _IO_cleanup_region_end, which in turns call
_pthread_cleanup_push_defer and _pthread_cleanup_pop_restore.
But they are not cleared weak. As the result, "make check"
failed since linker couldn't resolve them.

I manually added

#ifdef __ELF__
#pragma weak _pthread_cleanup_push_defer
#pragma weak _pthread_cleanup_pop_restore
#endif

into libc-lock.h. I think it should be fixed in glibc.


-- 
H.J. Lu (hjl@gnu.ai.mit.edu)



More information about the Gcc mailing list