https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118701
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed| |2025-01-30 Ever confirmed|0 |1 CC| |jakub at gcc dot gnu.org Status|UNCONFIRMED |NEW --- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> --- (In reply to Rainer Orth from comment #0) > This is the first time libstdc++.so has this issue, so the script cannot > yet handle this. I'll harden it not to break in situations like this, but > the > question remains how to properly handle this in gnu.ver: > > * Keep the new version as is, creating a (useless) weak version on everything > but RISC-V. > * Make the version strong (terminology?). On Solaris, this could be done by > prefixing the symbols with global: outside __riscv. However, GNU ld chokes > on this. > * Move the __riscv #ifdef outside the version definition. > > I thing the third variant would be best. Yes, I think so too. I don't see why we would want CXXABI_1.3.16 to exist on targets where no symbols use that version. Jakub, do you agree?