libstdc++ related boostrap failure

Benjamin Kosnik bkoz@redhat.com
Wed Feb 19 23:51:00 GMT 2003


>New theory occurred to me in the middle of writing an email to Loren on
>this subject.  The routine in atomicity.h which references the variable
>is marked 'inline'.  Anywhere it actually gets inlined will also create
>a reference to the variable.

... since it is marked 'extern'

>The choice is either
>
>    A) export _Atomic_add_mutex from the library, like Loren's patch did, or
>    B) for the generic case, move the definition of the atomic routines to
>       misc-inst.cc, along with the helper variables.  This makes everything
>       nice and tidy and private, but kills any chance of inlining.
>
>I tend to lean to 'A'.

I too think 'A' is the best option. 

You should probably add _Atomic_add_mutex_once, and
__gthread_atomic_add_mutex_once as well, no? Please comment this in
libstdc++-symbol.ver (nee link-map.gnu) when you add it.

This doesn't matter for the people who don't use the generic routines
(most people except for arm linux), and the generated abi baselines can
be made so that mis-configured systems (urp, i486/linux configured as
i386/linux) can be caught by system integrators.

Sounds like a plan to me.

-benjamin



More information about the Libstdc++ mailing list