Move OutFileName writing into rustc_session

This commit is contained in:
David Tolnay 2023-07-16 22:13:08 -07:00
parent 32cac2e002
commit f2e3d3fc63
No known key found for this signature in database
GPG key ID: F9BA143B95FF6D82
7 changed files with 24 additions and 22 deletions

View file

@ -1,6 +1,5 @@
//! The various pretty-printing routines.
use crate::session_diagnostics::UnprettyDumpFail;
use rustc_ast as ast;
use rustc_ast_pretty::pprust;
use rustc_errors::ErrorGuaranteed;
@ -358,17 +357,7 @@ fn get_source(sess: &Session) -> (String, FileName) {
}
fn write_or_print(out: &str, sess: &Session) {
match &sess.io.output_file {
None | Some(OutFileName::Stdout) => print!("{out}"),
Some(OutFileName::Real(p)) => {
if let Err(e) = std::fs::write(p, out) {
sess.emit_fatal(UnprettyDumpFail {
path: p.display().to_string(),
err: e.to_string(),
});
}
}
}
sess.io.output_file.as_ref().unwrap_or(&OutFileName::Stdout).overwrite(out, sess);
}
pub fn print_after_parsing(sess: &Session, krate: &ast::Crate, ppm: PpMode) {

View file

@ -32,13 +32,6 @@ pub(crate) struct RLinkRustcVersionMismatch<'a> {
#[diag(driver_impl_rlink_no_a_file)]
pub(crate) struct RlinkNotAFile;
#[derive(Diagnostic)]
#[diag(driver_impl_unpretty_dump_fail)]
pub(crate) struct UnprettyDumpFail {
pub path: String,
pub err: String,
}
#[derive(Diagnostic)]
#[diag(driver_impl_ice)]
pub(crate) struct Ice;