If multiple mangled symbols produce identical demangled names it seems lld's version script handling only includes one of them.
For example both _ZN3abcC1Ev and _ZN3abcC2Ev should be abc::abc() but as seen with the addition in this patch only one of the two gets the symbol version appended:
Symbol {
Name: _ZN3abcC1Ev@ (25)
Value: 0x1003
Size: 0
Binding: Global (0x1)
Type: Function (0x2)
Other: 0
Section: .text (0x6)
}
Symbol {
Name: _ZN3abcC2Ev@@LIBSAMPLE_1.0 (37)
Value: 0x1004
Size: 0
Binding: Global (0x1)
Type: Function (0x2)
Other: 0
Section: .text (0x6)
}