diff options
| author | bors <bors@rust-lang.org> | 2025-03-03 19:34:25 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2025-03-03 19:34:25 +0000 |
| commit | e16a049adbf94d610787430b6efdf31d896dc5b6 (patch) | |
| tree | 4909ade923f6869ee52593a6627c2a8fd78b692f /src/librustdoc/core.rs | |
| parent | d4916623403bc29927f467ccb1a80ba836a04139 (diff) | |
| parent | 15e97bd45eb83bc4114149702899bba97072bbb6 (diff) | |
| download | rust-e16a049adbf94d610787430b6efdf31d896dc5b6.tar.gz rust-e16a049adbf94d610787430b6efdf31d896dc5b6.zip | |
Auto merge of #137914 - matthiaskrgr:rollup-phaxe6f, r=matthiaskrgr
Rollup of 6 pull requests
Successful merges:
- #137103 ({json|html}docck: catch and error on deprecated syntax)
- #137632 (rustdoc: when merging target features, keep the highest stability)
- #137684 (Add rustdoc support for `--emit=dep-info[=path]`)
- #137794 (make qnx pass a test)
- #137801 (tests: Unignore target modifier tests on all platforms)
- #137826 (test(codegen): add looping_over_ne_bytes test for #133528)
r? `@ghost`
`@rustbot` modify labels: rollup
Diffstat (limited to 'src/librustdoc/core.rs')
| -rw-r--r-- | src/librustdoc/core.rs | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/src/librustdoc/core.rs b/src/librustdoc/core.rs index 757a2a6e0dd..679921c3269 100644 --- a/src/librustdoc/core.rs +++ b/src/librustdoc/core.rs @@ -15,11 +15,12 @@ use rustc_hir::def::Res; use rustc_hir::def_id::{DefId, DefIdMap, DefIdSet, LocalDefId}; use rustc_hir::intravisit::{self, Visitor}; use rustc_hir::{HirId, Path}; -use rustc_interface::interface; use rustc_lint::{MissingDoc, late_lint_mod}; use rustc_middle::hir::nested_filter; use rustc_middle::ty::{self, ParamEnv, Ty, TyCtxt}; -use rustc_session::config::{self, CrateType, ErrorOutputType, Input, ResolveDocLinks}; +use rustc_session::config::{ + self, CrateType, ErrorOutputType, Input, OutFileName, OutputType, OutputTypes, ResolveDocLinks, +}; pub(crate) use rustc_session::config::{Options, UnstableOptions}; use rustc_session::{Session, lint}; use rustc_span::source_map; @@ -219,7 +220,7 @@ pub(crate) fn create_config( remap_path_prefix, .. }: RustdocOptions, - RenderOptions { document_private, .. }: &RenderOptions, + render_options: &RenderOptions, ) -> rustc_interface::Config { // Add the doc cfg into the doc build. cfgs.push("doc".to_string()); @@ -245,8 +246,11 @@ pub(crate) fn create_config( let crate_types = if proc_macro_crate { vec![CrateType::ProcMacro] } else { vec![CrateType::Rlib] }; - let resolve_doc_links = - if *document_private { ResolveDocLinks::All } else { ResolveDocLinks::Exported }; + let resolve_doc_links = if render_options.document_private { + ResolveDocLinks::All + } else { + ResolveDocLinks::Exported + }; let test = scrape_examples_options.map(|opts| opts.scrape_tests).unwrap_or(false); // plays with error output here! let sessopts = config::Options { @@ -269,10 +273,18 @@ pub(crate) fn create_config( crate_name, test, remap_path_prefix, + output_types: if let Some(file) = render_options.dep_info() { + OutputTypes::new(&[( + OutputType::DepInfo, + file.map(|f| OutFileName::Real(f.to_path_buf())), + )]) + } else { + OutputTypes::new(&[]) + }, ..Options::default() }; - interface::Config { + rustc_interface::Config { opts: sessopts, crate_cfg: cfgs, crate_check_cfg: check_cfgs, |
