From 3cbcc5a22d8eaeed4b33fcb5b066e154b35bd98f Mon Sep 17 00:00:00 2001 From: Guillaume Gomez Date: Thu, 31 May 2018 22:08:31 +0200 Subject: [PATCH] Fix crate-name option in rustdoc --- src/librustdoc/core.rs | 5 ++++- src/test/rustdoc/invalid.crate.name.rs | 13 +++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 src/test/rustdoc/invalid.crate.name.rs diff --git a/src/librustdoc/core.rs b/src/librustdoc/core.rs index 458ed105d2650..bad5ff2596fd3 100644 --- a/src/librustdoc/core.rs +++ b/src/librustdoc/core.rs @@ -230,7 +230,10 @@ pub fn run_core(search_paths: SearchPaths, let krate = panictry!(driver::phase_1_parse_input(control, &sess, &input)); - let name = ::rustc_codegen_utils::link::find_crate_name(Some(&sess), &krate.attrs, &input); + let name = match crate_name { + Some(ref crate_name) => crate_name.clone(), + None => ::rustc_codegen_utils::link::find_crate_name(Some(&sess), &krate.attrs, &input), + }; let mut crate_loader = CrateLoader::new(&sess, &cstore, &name); diff --git a/src/test/rustdoc/invalid.crate.name.rs b/src/test/rustdoc/invalid.crate.name.rs new file mode 100644 index 0000000000000..4e4946a60a338 --- /dev/null +++ b/src/test/rustdoc/invalid.crate.name.rs @@ -0,0 +1,13 @@ +// Copyright 2018 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +// compile-flags: --crate-name foo + +pub fn foo() {}