From dd33b145f3ec0806adec2ca5c9cfb5ccf297bd34 Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Wed, 1 Jan 2014 13:03:26 -0800 Subject: [PATCH] Fix usage of rustc --ls on invalid files Closes #11259 --- src/librustc/lib/llvm.rs | 2 +- src/test/run-make/ls-metadata/Makefile | 7 +++++++ src/test/run-make/ls-metadata/foo.rs | 1 + 3 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 src/test/run-make/ls-metadata/Makefile create mode 100644 src/test/run-make/ls-metadata/foo.rs diff --git a/src/librustc/lib/llvm.rs b/src/librustc/lib/llvm.rs index 0639526ffdb6e..f8d2edefd3684 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 0000000000000..b568809156bfb --- /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 0000000000000..f328e4d9d04c3 --- /dev/null +++ b/src/test/run-make/ls-metadata/foo.rs @@ -0,0 +1 @@ +fn main() {}