From a6c8c7d0db7f4d13960b0270419285d3e1fbf5ac Mon Sep 17 00:00:00 2001 From: Andrew Paseltiner Date: Fri, 18 Sep 2015 20:24:43 -0400 Subject: [PATCH] Always pass `/DEBUG` flag to MSVC linker Closes #28448. --- src/librustc_trans/back/linker.rs | 15 +++------------ .../run-make/output-type-permutations/Makefile | 8 ++++++-- 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/src/librustc_trans/back/linker.rs b/src/librustc_trans/back/linker.rs index a4333dc10d637..9610620b7aff9 100644 --- a/src/librustc_trans/back/linker.rs +++ b/src/librustc_trans/back/linker.rs @@ -19,7 +19,6 @@ use back::archive; use metadata::csearch; use middle::dependency_format::Linkage; use session::Session; -use session::config::DebugInfoLevel::{NoDebugInfo, LimitedDebugInfo, FullDebugInfo}; use session::config::CrateTypeDylib; use session::config; use syntax::ast; @@ -286,17 +285,9 @@ impl<'a> Linker for MsvcLinker<'a> { } fn debuginfo(&mut self) { - match self.sess.opts.debuginfo { - NoDebugInfo => { - // Do nothing if debuginfo is disabled - }, - LimitedDebugInfo | - FullDebugInfo => { - // This will cause the Microsoft linker to generate a PDB file - // from the CodeView line tables in the object files. - self.cmd.arg("/DEBUG"); - } - } + // This will cause the Microsoft linker to generate a PDB file + // from the CodeView line tables in the object files. + self.cmd.arg("/DEBUG"); } fn whole_archives(&mut self) { diff --git a/src/test/run-make/output-type-permutations/Makefile b/src/test/run-make/output-type-permutations/Makefile index e3c36b9c0b701..a785e916cf733 100644 --- a/src/test/run-make/output-type-permutations/Makefile +++ b/src/test/run-make/output-type-permutations/Makefile @@ -5,12 +5,13 @@ all: $(call REMOVE_RLIBS,bar) $(call REMOVE_DYLIBS,bar) rm $(TMPDIR)/libbar.a - rm -f $(TMPDIR)/bar.{exp,lib} + rm -f $(TMPDIR)/bar.{exp,lib,pdb} # Check that $(TMPDIR) is empty. [ "$$(ls -1 $(TMPDIR) | wc -l)" -eq "0" ] $(RUSTC) foo.rs --crate-type=bin rm $(TMPDIR)/$(call BIN,bar) + rm -f $(TMPDIR)/bar.pdb [ "$$(ls -1 $(TMPDIR) | wc -l)" -eq "0" ] $(RUSTC) foo.rs --emit=asm,llvm-ir,llvm-bc,obj,link @@ -19,6 +20,7 @@ all: rm $(TMPDIR)/bar.s rm $(TMPDIR)/bar.o rm $(TMPDIR)/$(call BIN,bar) + rm -f $(TMPDIR)/bar.pdb [ "$$(ls -1 $(TMPDIR) | wc -l)" -eq "0" ] $(RUSTC) foo.rs --emit=asm -o $(TMPDIR)/foo @@ -39,6 +41,7 @@ all: $(RUSTC) foo.rs --emit=link -o $(TMPDIR)/$(call BIN,foo) rm $(TMPDIR)/$(call BIN,foo) + rm -f $(TMPDIR)/foo.pdb [ "$$(ls -1 $(TMPDIR) | wc -l)" -eq "0" ] $(RUSTC) foo.rs --crate-type=rlib -o $(TMPDIR)/foo @@ -47,7 +50,7 @@ all: $(RUSTC) foo.rs --crate-type=dylib -o $(TMPDIR)/$(call BIN,foo) rm $(TMPDIR)/$(call BIN,foo) - rm -f $(TMPDIR)/foo.{exp,lib} + rm -f $(TMPDIR)/foo.{exp,lib,pdb} [ "$$(ls -1 $(TMPDIR) | wc -l)" -eq "0" ] $(RUSTC) foo.rs --crate-type=staticlib -o $(TMPDIR)/foo @@ -56,6 +59,7 @@ all: $(RUSTC) foo.rs --crate-type=bin -o $(TMPDIR)/$(call BIN,foo) rm $(TMPDIR)/$(call BIN,foo) + rm -f $(TMPDIR)/foo.pdb [ "$$(ls -1 $(TMPDIR) | wc -l)" -eq "0" ] $(RUSTC) foo.rs --emit=asm,llvm-ir,llvm-bc,obj,link --crate-type=staticlib