This resulted in some very unexpected fallout such as empty llvm-ir, llvm-bc and asm in some cases.
See #22183 for related info.
let any_exe = session.crate_types.borrow().iter().any(|ty| {
*ty == config::CrateTypeExecutable
});
- let emit_link = session.opts.output_types.iter().any(|ty| {
- *ty == config::OutputTypeExe
- });
- if !any_exe || !emit_link {
+ if !any_exe {
// No need to find a main function
return
}
+++ /dev/null
--include ../tools.mk
-
-all:
- $(RUSTC) --emit=asm,llvm-bc,llvm-ir,obj,dep-info empty.rs
- $(RUSTC) --emit=link --crate-type=rlib,dylib,staticlib empty.rs