From 64e5527fa5ee339932290eae38b456caf3bd10cf Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Mon, 27 Jan 2014 09:47:29 -0800 Subject: [PATCH] Generate an older version of dwarf on OSX OSX apparently doesn't have tooling which understands higher versions of dwarf by default right now. Closes #11352 --- src/librustc/back/link.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/librustc/back/link.rs b/src/librustc/back/link.rs index a57f1296969f1..44171cf03456e 100644 --- a/src/librustc/back/link.rs +++ b/src/librustc/back/link.rs @@ -336,6 +336,14 @@ pub mod write { if sess.time_llvm_passes() { add("-time-passes"); } if sess.print_llvm_passes() { add("-debug-pass=Structure"); } + // Debuginfo generation in LLVM by default uses a higher version of + // dwarf than osx currently understands. We can instruct LLVM to emit an + // older version of dwarf, however, for OSX to understand. For more info + // see #11352 + if sess.targ_cfg.os == abi::OsMacos && sess.opts.debuginfo { + add("-dwarf-version,2"); + } + for arg in sess.opts.llvm_args.iter() { add(*arg); }