Could someone please tell me why we make __libc_internal_tsd_get and __libc_internal_tsd_set common? It only works with static libraries. It doesn't work with shared libraries. To work with shared libraries, weak symbols should be used instead. H.J.