Bring back r307364.
In addition this includes a change to prefer symbols with a default version @@ over unversioned symbols. Original commit message: [ELF] - Handle symbols with default version early. This fixes last testcase provided in PR28414. In short issue is next: when we had X@@Version symbol in object A, we did not resolve it to X early. Then when in another object B we had reference to undefined X, symbol X from archive was fetched. Since both archive and object A contains another symbol Z, duplicate symbol definition was triggered as a result. Correct behavior is to use X@@Version from object A instead and do not fetch any symbols from archive. Differential revision: https://reviews.llvm.org/D35059 llvm-svn: 308492
Loading
Please register or sign in to comment