Rollup merge of #73523 - jyn514:everybody_loops, r=ecstatic-morse
Fix -Z unpretty=everybody_loops It turns out that this has not been working for who knows how long. Previously: ``` pub fn h() { 1 + 2; } ``` After this change: ``` pub fn h() { loop { } } ``` This only affected the pass when run with the command line pretty-printing option, so rustdoc was still replacing bodies with `loop {}`.
This commit is contained in:
commit
505cf52c53
src
@ -307,6 +307,7 @@ pub fn run_compiler(
|
||||
compiler.output_file().as_ref().map(|p| &**p),
|
||||
);
|
||||
}
|
||||
trace!("finished pretty-printing");
|
||||
return early_exit();
|
||||
}
|
||||
|
||||
|
@ -202,6 +202,7 @@ pub fn run_compiler_in_existing_thread_pool<R>(
|
||||
}
|
||||
|
||||
pub fn run_compiler<R: Send>(mut config: Config, f: impl FnOnce(&Compiler) -> R + Send) -> R {
|
||||
log::trace!("run_compiler");
|
||||
let stderr = config.stderr.take();
|
||||
util::spawn_thread_pool(
|
||||
config.opts.edition,
|
||||
|
@ -101,6 +101,7 @@ pub fn configure_and_expand(
|
||||
krate: ast::Crate,
|
||||
crate_name: &str,
|
||||
) -> Result<(ast::Crate, BoxedResolver)> {
|
||||
log::trace!("configure_and_expand");
|
||||
// Currently, we ignore the name resolution data structures for the purposes of dependency
|
||||
// tracking. Instead we will run name resolution and include its output in the hash of each
|
||||
// item, much like we do for macro expansion. In other words, the hash reflects not just
|
||||
@ -230,6 +231,7 @@ fn configure_and_expand_inner<'a>(
|
||||
resolver_arenas: &'a ResolverArenas<'a>,
|
||||
metadata_loader: &'a MetadataLoaderDyn,
|
||||
) -> Result<(ast::Crate, Resolver<'a>)> {
|
||||
log::trace!("configure_and_expand_inner");
|
||||
pre_expansion_lint(sess, lint_store, &krate);
|
||||
|
||||
let mut resolver = Resolver::new(sess, &krate, crate_name, metadata_loader, &resolver_arenas);
|
||||
@ -357,6 +359,7 @@ fn configure_and_expand_inner<'a>(
|
||||
should_loop |= true;
|
||||
}
|
||||
if should_loop {
|
||||
log::debug!("replacing bodies with loop {{}}");
|
||||
util::ReplaceBodyWithLoop::new(&mut resolver).visit_crate(&mut krate);
|
||||
}
|
||||
|
||||
|
@ -169,6 +169,7 @@ impl<'tcx> Queries<'tcx> {
|
||||
pub fn expansion(
|
||||
&self,
|
||||
) -> Result<&Query<(ast::Crate, Steal<Rc<RefCell<BoxedResolver>>>, Lrc<LintStore>)>> {
|
||||
log::trace!("expansion");
|
||||
self.expansion.compute(|| {
|
||||
let crate_name = self.crate_name()?.peek().clone();
|
||||
let (krate, lint_store) = self.register_plugins()?.take();
|
||||
|
@ -1849,6 +1849,7 @@ fn parse_pretty(
|
||||
}
|
||||
}
|
||||
};
|
||||
log::debug!("got unpretty option: {:?}", first);
|
||||
first
|
||||
}
|
||||
}
|
||||
@ -1977,9 +1978,11 @@ impl PpMode {
|
||||
use PpMode::*;
|
||||
use PpSourceMode::*;
|
||||
match *self {
|
||||
PpmSource(PpmNormal | PpmEveryBodyLoops | PpmIdentified) => false,
|
||||
PpmSource(PpmNormal | PpmIdentified) => false,
|
||||
|
||||
PpmSource(PpmExpanded | PpmExpandedIdentified | PpmExpandedHygiene)
|
||||
PpmSource(
|
||||
PpmExpanded | PpmEveryBodyLoops | PpmExpandedIdentified | PpmExpandedHygiene,
|
||||
)
|
||||
| PpmHir(_)
|
||||
| PpmHirTree(_)
|
||||
| PpmMir
|
||||
|
Loading…
x
Reference in New Issue
Block a user