Skip to content

Commit 0312599

Browse files
committed
---
yaml --- r: 130526 b: refs/heads/try c: 6d2d47b h: refs/heads/master v: v3
1 parent 1afe0cc commit 0312599

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
refs/heads/master: c964cb229bd342bdeb0b4506c3a6d32b03e575f6
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: 67b97ab6d2b7de9b69fd97dc171fcf8feec932ff
5-
refs/heads/try: 4d9a4786163a9a9831bf4e283b4e408be03a169b
5+
refs/heads/try: 6d2d47b2fc73b7beacced1f2a62037193ea1ed30
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
88
refs/heads/try2: 147ecfdd8221e4a4d4e090486829a06da1e0ca3c

branches/try/src/librustc/back/write.rs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -476,6 +476,9 @@ pub fn run_passes(sess: &Session,
476476
sess.fatal("can't perform LTO when using multiple codegen units");
477477
}
478478

479+
// Sanity check
480+
assert!(trans.modules.len() == sess.opts.cg.codegen_units);
481+
479482
unsafe {
480483
configure_llvm(sess);
481484
}
@@ -607,6 +610,15 @@ pub fn run_passes(sess: &Session,
607610
};
608611

609612
let link_obj = |output_path: &Path| {
613+
// Running `ld -r` on a single input is kind of pointless.
614+
if sess.opts.cg.codegen_units == 1 {
615+
fs::copy(&crate_output.with_extension("0.o"),
616+
output_path).unwrap();
617+
// Leave the .0.o file around, to mimic the behavior of the normal
618+
// code path.
619+
return;
620+
}
621+
610622
// Some builds of MinGW GCC will pass --force-exe-suffix to ld, which
611623
// will automatically add a .exe extension if the extension is not
612624
// already .exe or .dll. To ensure consistent behavior on Windows, we

0 commit comments

Comments
 (0)