[Gc] __libc_stack_end not weak

Mike Hearn mike at navi.cx
Thu Oct 21 08:58:31 PDT 2004

Ben Hutchings wrote:
> os_dep.c uses "#pragma weak __libc_stack_end" so we should be able
> to live without it.  However, when I look at the executable with
> "readelf -Ds", I see:
> Symbol table for image:
>   Num Buc:    Value  Size   Type   Bind Vis      Ndx Name
> ...
>   149 128: 08270a44     4  OBJECT GLOBAL DEFAULT  24 __libc_stack_end
> Shouldn't there be a "WEAK" in the Bind column?  What might be the
> cause for it being "GLOBAL" instead?

Does it work if you change the #pragma to __attribute__((weak)) ?

More to the point, why is GC using internal symbols that may disappear 
or change semantics at any time?

More information about the Gc mailing list