From 0709e534df2a85486f981bfbebd153bb25e3703d Mon Sep 17 00:00:00 2001 From: Will Crichton Date: Tue, 6 Dec 2022 11:24:26 -0800 Subject: [PATCH] Fix rustdoc error with no providec crate-type, fix scrape examples button colors w/ themes --- src/librustdoc/core.rs | 3 ++- src/librustdoc/doctest.rs | 8 ++++++-- src/librustdoc/html/static/css/rustdoc.css | 1 + 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/librustdoc/core.rs b/src/librustdoc/core.rs index c6358874c6162..58954ecc73f1a 100644 --- a/src/librustdoc/core.rs +++ b/src/librustdoc/core.rs @@ -13,7 +13,7 @@ use rustc_interface::interface; use rustc_middle::hir::nested_filter; use rustc_middle::ty::{ParamEnv, Ty, TyCtxt}; use rustc_resolve as resolve; -use rustc_session::config::{self, ErrorOutputType}; +use rustc_session::config::{self, CrateType, ErrorOutputType}; use rustc_session::lint; use rustc_session::Session; use rustc_span::symbol::sym; @@ -247,6 +247,7 @@ pub(crate) fn create_config( Some((lint.name_lower(), lint::Allow)) }); + let crate_types = if crate_types.is_empty() { vec![CrateType::Rlib] } else { crate_types }; let test = scrape_examples_options.map(|opts| opts.scrape_tests).unwrap_or(false); // plays with error output here! let sessopts = config::Options { diff --git a/src/librustdoc/doctest.rs b/src/librustdoc/doctest.rs index b70444ec67395..30bc2f90d2c52 100644 --- a/src/librustdoc/doctest.rs +++ b/src/librustdoc/doctest.rs @@ -12,7 +12,7 @@ use rustc_middle::hir::nested_filter; use rustc_middle::ty::TyCtxt; use rustc_parse::maybe_new_parser_from_source_str; use rustc_parse::parser::attr::InnerAttrPolicy; -use rustc_session::config::{self, ErrorOutputType}; +use rustc_session::config::{self, CrateType, ErrorOutputType}; use rustc_session::parse::ParseSess; use rustc_session::{lint, Session}; use rustc_span::edition::Edition; @@ -68,7 +68,11 @@ pub(crate) fn run(options: RustdocOptions) -> Result<(), ErrorGuaranteed> { debug!(?lint_opts); - let crate_types = options.crate_types.clone(); + let crate_types = if options.crate_types.is_empty() { + vec![CrateType::Rlib] + } else { + options.crate_types.clone() + }; let sessopts = config::Options { maybe_sysroot: options.maybe_sysroot.clone(), diff --git a/src/librustdoc/html/static/css/rustdoc.css b/src/librustdoc/html/static/css/rustdoc.css index 0432d445d53fb..6e5e293780d3d 100644 --- a/src/librustdoc/html/static/css/rustdoc.css +++ b/src/librustdoc/html/static/css/rustdoc.css @@ -1948,6 +1948,7 @@ in storage.js .scraped-example .code-wrapper .next, .scraped-example .code-wrapper .prev, .scraped-example .code-wrapper .expand { + color: var(--main-color); position: absolute; top: 0.25em; z-index: 1;