Hi!

Seems libgcc mostly uses triplets after GCC_ in symbol version names in the
last few years (looking at GCC 5+):

find -name \*.ver -o -name \*.ver.in | xargs grep 
'GCC_[156789][0-9]*\.[0-9]*\.[0-9]* '
./config/i386/libgcc-glibc.ver:%inherit GCC_12.0.0 GCC_7.0.0
./config/i386/libgcc-glibc.ver:GCC_12.0.0 {
./config/i386/libgcc-glibc.ver:%inherit GCC_13.0.0 GCC_12.0.0
./config/i386/libgcc-glibc.ver:GCC_13.0.0 {
./config/i386/libgcc-glibc.ver:%inherit GCC_14.0.0 GCC_13.0.0
./config/i386/libgcc-glibc.ver:GCC_14.0.0 {
./config/i386/libgcc-bsd.ver:GCC_7.0.0 {
./config/i386/libgcc-sol2.ver:GCC_7.0.0 {
./config/i386/libgcc-darwin.ver:%inherit GCC_12.0.0 GCC_7.0.0
./config/i386/libgcc-darwin.ver:GCC_12.0.0 {
./config/ia64/libgcc-glibc.ver:GCC_7.0.0 {
./config/aarch64/libgcc-softfp.ver:%inherit GCC_13.0.0 GCC_11.0.0
./config/aarch64/libgcc-softfp.ver:GCC_13.0.0 {
./config/pru/libgcc-eabi.ver:GCC_9.0.0 {
./libgcc-std.ver.in:%inherit GCC_7.0.0 GCC_4.8.0
./libgcc-std.ver.in:GCC_7.0.0 {
./libgcc-std.ver.in:%inherit GCC_14.0.0 GCC_7.0.0
./libgcc-std.ver.in:GCC_14.0.0 {

But there are some outliers to this:

find -name \*.ver -o -name \*.ver.in | xargs grep 
'GCC_[156789][0-9]*\(\|\.[0-9]*\) '
./config/mips/libgcc-mips.ver:GCC_14.0 {
./config/i386/libgcc-mingw.ver:GCC_13 {
./config/aarch64/libgcc-softfp.ver:GCC_11.0 {
./config/aarch64/libgcc-sme.ver:GCC_14.0 {
./config/rs6000/libgcc-aix-cxa.ver:GCC_5 {

I guess it is too late for the GCC 5, 11 and 13 symvers now, but shouldn't
we at least change the GCC_14.0 symvers to GCC_14.0.0 (i.e. aarch64 and
mips)?

./config/aarch64/libgcc-softfp.ver even contains weirdness like
GCC_11.0 {
...
%inherit GCC_13.0.0 GCC_11.0.0
but bet that is too late too.

        Jakub

Reply via email to