For PR411:
[oota-llvm.git] / test / Linker / redefinition.ll
diff --git a/test/Linker/redefinition.ll b/test/Linker/redefinition.ll
new file mode 100644 (file)
index 0000000..ae2dc62
--- /dev/null
@@ -0,0 +1,10 @@
+; Test linking two functions with different prototypes and two globals 
+; in different modules.
+; RUN: llvm-as %s -o %t.foo1.bc -f
+; RUN: llvm-as %s -o %t.foo2.bc -f
+; RUN: echo "define void @foo(i32 %x) { ret void }" | llvm-as -o %t.foo3.bc -f
+; RUN: llvm-link %t.foo1.bc %t.foo2.bc -o %t.bc 2>&1 | \
+; RUN:   grep "Function is already defined"
+; RUN: llvm-link %t.foo1.bc %t.foo3.bc -o %t.bc 2>&1 | \
+; RUN:   grep "Function 'foo' defined as both"
+define void @foo() { ret void }