Skip to content

Commit 4d5134f

Browse files
committed
Create separate match arms for FileNames and CrateNames
This introduces a bit of code duplication, but we don't have the build_output_filenames in the CrateName arm and this seems a little cleaner overall.
1 parent 705e3e3 commit 4d5134f

File tree

1 file changed

+14
-10
lines changed
  • compiler/rustc_driver_impl/src

1 file changed

+14
-10
lines changed

compiler/rustc_driver_impl/src/lib.rs

+14-10
Original file line numberDiff line numberDiff line change
@@ -771,24 +771,28 @@ fn print_crate_info(
771771
}
772772
println_info!("{}", serde_json::to_string_pretty(&targets).unwrap());
773773
}
774-
FileNames | CrateName => {
774+
FileNames => {
775775
let Some(attrs) = attrs.as_ref() else {
776776
// no crate attributes, print out an error and exit
777777
return Compilation::Continue;
778778
};
779779
let t_outputs = rustc_interface::util::build_output_filenames(attrs, sess);
780780
let id = rustc_session::output::find_crate_name(sess, attrs);
781-
if req.kind == CrateName {
782-
println_info!("{id}");
783-
} else {
784-
let crate_types = collect_crate_types(sess, attrs);
785-
for &style in &crate_types {
786-
let fname =
787-
rustc_session::output::filename_for_input(sess, style, id, &t_outputs);
788-
println_info!("{}", fname.as_path().file_name().unwrap().to_string_lossy());
789-
}
781+
let crate_types = collect_crate_types(sess, attrs);
782+
for &style in &crate_types {
783+
let fname =
784+
rustc_session::output::filename_for_input(sess, style, id, &t_outputs);
785+
println_info!("{}", fname.as_path().file_name().unwrap().to_string_lossy());
790786
}
791787
}
788+
CrateName => {
789+
let Some(attrs) = attrs.as_ref() else {
790+
// no crate attributes, print out an error and exit
791+
return Compilation::Continue;
792+
};
793+
let id = rustc_session::output::find_crate_name(sess, attrs);
794+
println_info!("{id}");
795+
}
792796
Cfg => {
793797
let mut cfgs = sess
794798
.parse_sess

0 commit comments

Comments
 (0)