STB_GNU_UNIQUE is like STB_GLOBAL with extra semantics:
- gold and ld.lld: changed to STB_GLOBAL if --no-gnu-unique is specified
- glibc: unique even with dlopen RTLD_LOCAL, implies DF_1_NODELETE
Therefore, I think it makes sense for --weaken-symbol/--weaken-symbols/--weaken
to change STB_GNU_UNIQUE symbols.
binutils 2.39 will have the same behavior: https://sourceware.org/bugzilla/show_bug.cgi?id=28926