about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/librustc/lib/llvm.rs2
-rw-r--r--src/test/run-make/ls-metadata/Makefile7
-rw-r--r--src/test/run-make/ls-metadata/foo.rs1
3 files changed, 9 insertions, 1 deletions
diff --git a/src/librustc/lib/llvm.rs b/src/librustc/lib/llvm.rs
index 0639526ffdb..f8d2edefd36 100644
--- a/src/librustc/lib/llvm.rs
+++ b/src/librustc/lib/llvm.rs
@@ -1936,7 +1936,7 @@ impl ObjectFile {
         unsafe {
             let llof = llvm::LLVMCreateObjectFile(llmb);
             if llof as int == 0 {
-                llvm::LLVMDisposeMemoryBuffer(llmb);
+                // LLVMCreateObjectFile took ownership of llmb
                 return None
             }
 
diff --git a/src/test/run-make/ls-metadata/Makefile b/src/test/run-make/ls-metadata/Makefile
new file mode 100644
index 00000000000..b568809156b
--- /dev/null
+++ b/src/test/run-make/ls-metadata/Makefile
@@ -0,0 +1,7 @@
+-include ../tools.mk
+
+all:
+	$(RUSTC) foo.rs
+	$(RUSTC) --ls $(TMPDIR)/foo
+	touch $(TMPDIR)/bar
+	$(RUSTC) --ls $(TMPDIR)/bar
diff --git a/src/test/run-make/ls-metadata/foo.rs b/src/test/run-make/ls-metadata/foo.rs
new file mode 100644
index 00000000000..f328e4d9d04
--- /dev/null
+++ b/src/test/run-make/ls-metadata/foo.rs
@@ -0,0 +1 @@
+fn main() {}