Reimplement LinkFunctionProtos in terms of GetLinkageResult.  This fixes
the second half of link-global-to-func.ll and causes some minor changes in
messages.

There are two TODOs here.  First, this causes a regression in 
2008-07-06-AliasWeakDest.ll, which is now failing (so I xfailed it).  Anton,
I would really appreciate it if you could take a look at this.  It should be
a matter of adding proper alias support to GetLinkageResult, and was probably
already a latent bug that would manifest with globals.

The second todo is to reimplement LinkAlias in the same pattern as 
function and global linking.  This should be pretty straight-forward for 
someone who knows aliases, but isn't a requirement for correctness.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53548 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/Linker/link-messages.ll b/test/Linker/link-messages.ll
index 133caf7..f0f10aa 100644
--- a/test/Linker/link-messages.ll
+++ b/test/Linker/link-messages.ll
@@ -4,7 +4,7 @@
 ; RUN: llvm-as %s -o %t.two.bc -f
 ; RUN: not llvm-ld -disable-opt -link-as-library %t.one.bc %t.two.bc \
 ; RUN:   -o %t.bc 2>%t.err 
-; RUN: grep "Function is already defined" %t.err
+; RUN: grep "symbol multiply defined" %t.err
 
 define i32 @bar() {
 	ret i32 0