[llvm-commits] [llvm] r57594 - /llvm/trunk/lib/Linker/LinkModules.cpp

Anton Korobeynikov asl at math.spbu.ru
Wed Oct 15 13:10:21 PDT 2008


Author: asl
Date: Wed Oct 15 15:10:08 2008
New Revision: 57594

URL: http://llvm.org/viewvc/llvm-project?rev=57594&view=rev
Log:
Properly handle linking of strong alias with weak function, this fixes PR2883

Modified:
    llvm/trunk/lib/Linker/LinkModules.cpp

Modified: llvm/trunk/lib/Linker/LinkModules.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Linker/LinkModules.cpp?rev=57594&r1=57593&r2=57594&view=diff

==============================================================================
--- llvm/trunk/lib/Linker/LinkModules.cpp (original)
+++ llvm/trunk/lib/Linker/LinkModules.cpp Wed Oct 15 15:10:08 2008
@@ -984,7 +984,7 @@
       // The only valid mappings are:
       // - SF is external declaration, which is effectively a no-op.
       // - SF is weak, when we just need to throw SF out.
-      if (!SF->isDeclaration())
+      if (!SF->isDeclaration() && !SF->mayBeOverridden())
         return Error(Err, "Function-Alias Collision on '" + SF->getName() +
                      "': symbol multiple defined");
     }





More information about the llvm-commits mailing list