https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94987
--- Comment #3 from Karthik Nishanth <kndevl at outlook dot com> --- Thank you, I understand now. Is the reason why gcc preserves the symbol in the SO because of forward compatibility with existing binaries dynamically depending on the symbol?