summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMukund Lakshman <yaymukund@gmail.com>2021-10-01 06:17:15 -0400
committerMukund Lakshman <yaymukund@gmail.com>2021-10-04 05:01:04 -0400
commita8a40ea9a4947a7b46421564517ee2aa4e3711f0 (patch)
treeb636e1f880c0f4aa70866dbc99e60621b2e80664
parente737694a4d66b01308b73d4559a35b43e414faf9 (diff)
downloadrust-a8a40ea9a4947a7b46421564517ee2aa4e3711f0.tar.gz
librustdoc: Use correct heading levels.
- Avoid multiple <h1>s on a page. - The <h#> tags should follow a semantic hierarchy. - Cap at h6 (no h7)
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0001.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0002.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0007.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0009.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0014.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0073.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0074.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0087.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0088.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0089.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0090.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0110.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0136.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0137.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0139.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0154.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0162.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0165.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0193.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0205.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0211.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0243.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0244.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0251.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0256.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0281.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0297.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0301.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0302.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0303.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0329.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0383.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0386.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0387.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0388.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0389.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0398.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0399.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0439.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0447.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0448.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0497.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0504.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0595.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0619.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0633.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0665.md2
-rw-r--r--compiler/rustc_error_codes/src/error_codes/E0671.md2
-rw-r--r--src/librustdoc/externalfiles.rs4
-rw-r--r--src/librustdoc/html/markdown.rs21
-rw-r--r--src/librustdoc/html/markdown/tests.rs32
-rw-r--r--src/librustdoc/html/render/mod.rs52
-rw-r--r--src/librustdoc/html/render/print_item.rs10
-rw-r--r--src/librustdoc/html/static/css/rustdoc.css19
-rw-r--r--src/librustdoc/html/static/css/themes/ayu.css2
-rw-r--r--src/librustdoc/html/static/css/themes/dark.css2
-rw-r--r--src/librustdoc/html/static/css/themes/light.css2
-rw-r--r--src/librustdoc/markdown.rs2
-rw-r--r--src/test/rustdoc/external-cross.rs2
-rw-r--r--src/test/rustdoc/external-doc.rs6
-rw-r--r--src/test/rustdoc/issue-42760.rs2
-rw-r--r--src/test/rustdoc/short-docblock.rs4
-rw-r--r--src/test/rustdoc/smart-punct.rs2
-rw-r--r--src/tools/error_index_generator/main.rs3
-rw-r--r--src/tools/tidy/src/error_codes_check.rs4
65 files changed, 147 insertions, 118 deletions
diff --git a/compiler/rustc_error_codes/src/error_codes/E0001.md b/compiler/rustc_error_codes/src/error_codes/E0001.md
index 90756780d15..cd6e15f581f 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0001.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0001.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
This error suggests that the expression arm corresponding to the noted pattern
will never be reached as for all possible values of the expression being
diff --git a/compiler/rustc_error_codes/src/error_codes/E0002.md b/compiler/rustc_error_codes/src/error_codes/E0002.md
index 5cb59da10e0..4e7aa7fb9ed 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0002.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0002.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
This error indicates that an empty match expression is invalid because the type
it is matching on is non-empty (there exist values of this type). In safe code
diff --git a/compiler/rustc_error_codes/src/error_codes/E0007.md b/compiler/rustc_error_codes/src/error_codes/E0007.md
index 2c22b86af92..d30de4af0eb 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0007.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0007.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
This error indicates that the bindings in a match arm would require a value to
be moved into more than one location, thus violating unique ownership. Code
diff --git a/compiler/rustc_error_codes/src/error_codes/E0009.md b/compiler/rustc_error_codes/src/error_codes/E0009.md
index aaabba04349..6aab44cb4d6 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0009.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0009.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
In a pattern, all values that don't implement the `Copy` trait have to be bound
the same way. The goal here is to avoid binding simultaneously by-move and
diff --git a/compiler/rustc_error_codes/src/error_codes/E0014.md b/compiler/rustc_error_codes/src/error_codes/E0014.md
index 2c69957e9f6..27ae8f09898 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0014.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0014.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
Constants can only be initialized by a constant value or, in a future
version of Rust, a call to a const function. This error indicates the use
diff --git a/compiler/rustc_error_codes/src/error_codes/E0073.md b/compiler/rustc_error_codes/src/error_codes/E0073.md
index a5aea86ff2d..39c16bc438f 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0073.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0073.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
You cannot define a struct (or enum) `Foo` that requires an instance of `Foo`
in order to make a new `Foo` value. This is because there would be no way a
diff --git a/compiler/rustc_error_codes/src/error_codes/E0074.md b/compiler/rustc_error_codes/src/error_codes/E0074.md
index 785d6de226d..026acac99e7 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0074.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0074.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
When using the `#[simd]` attribute on a tuple struct, the components of the
tuple struct must all be of a concrete, nongeneric type so the compiler can
diff --git a/compiler/rustc_error_codes/src/error_codes/E0087.md b/compiler/rustc_error_codes/src/error_codes/E0087.md
index 9d292186f0f..cd2da0469bb 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0087.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0087.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
Too many type arguments were supplied for a function. For example:
diff --git a/compiler/rustc_error_codes/src/error_codes/E0088.md b/compiler/rustc_error_codes/src/error_codes/E0088.md
index 7780ad5b56e..6b565507ce4 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0088.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0088.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
You gave too many lifetime arguments. Erroneous code example:
diff --git a/compiler/rustc_error_codes/src/error_codes/E0089.md b/compiler/rustc_error_codes/src/error_codes/E0089.md
index 504fbc7b96a..b78f95f266c 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0089.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0089.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
Too few type arguments were supplied for a function. For example:
diff --git a/compiler/rustc_error_codes/src/error_codes/E0090.md b/compiler/rustc_error_codes/src/error_codes/E0090.md
index e091bb6c9f2..7b07a86dc25 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0090.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0090.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
You gave too few lifetime arguments. Example:
diff --git a/compiler/rustc_error_codes/src/error_codes/E0110.md b/compiler/rustc_error_codes/src/error_codes/E0110.md
index b9fe406ffb9..91f599ff1dc 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0110.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0110.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
You tried to provide a lifetime to a type which doesn't need it.
See `E0109` for more details.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0136.md b/compiler/rustc_error_codes/src/error_codes/E0136.md
index 15cf09a18cb..0a74558e75b 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0136.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0136.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
More than one `main` function was found.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0137.md b/compiler/rustc_error_codes/src/error_codes/E0137.md
index d4e19170f3f..ba6f02add94 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0137.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0137.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
More than one function was declared with the `#[main]` attribute.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0139.md b/compiler/rustc_error_codes/src/error_codes/E0139.md
index a116cf29395..e7ad2a6f44d 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0139.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0139.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
There are various restrictions on transmuting between types in Rust; for example
types being transmuted must have the same size. To apply all these restrictions,
diff --git a/compiler/rustc_error_codes/src/error_codes/E0154.md b/compiler/rustc_error_codes/src/error_codes/E0154.md
index e437a71897c..9c954839eee 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0154.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0154.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
Imports (`use` statements) are not allowed after non-item statements, such as
variable declarations and expression statements.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0162.md b/compiler/rustc_error_codes/src/error_codes/E0162.md
index 0161c9325c2..2e0f387e352 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0162.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0162.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
An `if let` pattern attempts to match the pattern, and enters the body if the
match was successful. If the match is irrefutable (when it cannot fail to
diff --git a/compiler/rustc_error_codes/src/error_codes/E0165.md b/compiler/rustc_error_codes/src/error_codes/E0165.md
index 7bcd6c0cbf3..3222b7a87eb 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0165.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0165.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
A `while let` pattern attempts to match the pattern, and enters the body if the
match was successful. If the match is irrefutable (when it cannot fail to
diff --git a/compiler/rustc_error_codes/src/error_codes/E0193.md b/compiler/rustc_error_codes/src/error_codes/E0193.md
index e29a949ffba..6e7ebbaddf9 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0193.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0193.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
`where` clauses must use generic type parameters: it does not make sense to use
them otherwise. An example causing this error:
diff --git a/compiler/rustc_error_codes/src/error_codes/E0205.md b/compiler/rustc_error_codes/src/error_codes/E0205.md
index 7916f53ad3b..07bbd1f6834 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0205.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0205.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
An attempt to implement the `Copy` trait for an enum failed because one of the
variants does not implement `Copy`. To fix this, you must implement `Copy` for
diff --git a/compiler/rustc_error_codes/src/error_codes/E0211.md b/compiler/rustc_error_codes/src/error_codes/E0211.md
index 77289f01900..2485367e097 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0211.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0211.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
You used a function or type which doesn't fit the requirements for where it was
used. Erroneous code examples:
diff --git a/compiler/rustc_error_codes/src/error_codes/E0243.md b/compiler/rustc_error_codes/src/error_codes/E0243.md
index 5d3d1828bf5..ef4a837ec21 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0243.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0243.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
This error indicates that not enough type parameters were found in a type or
trait.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0244.md b/compiler/rustc_error_codes/src/error_codes/E0244.md
index 5187b7b05d2..31c5b4542e2 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0244.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0244.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
This error indicates that too many type parameters were found in a type or
trait.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0251.md b/compiler/rustc_error_codes/src/error_codes/E0251.md
index 4121dd27877..7b048db5ece 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0251.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0251.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
Two items of the same name cannot be imported without rebinding one of the
items under a new local name.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0256.md b/compiler/rustc_error_codes/src/error_codes/E0256.md
index 385376cdade..1b518b1615b 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0256.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0256.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
You can't import a type or module when the name of the item being imported is
the same as another type or submodule defined in the module.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0281.md b/compiler/rustc_error_codes/src/error_codes/E0281.md
index 1d7904b67dd..2d8ead0b018 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0281.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0281.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
You tried to supply a type which doesn't implement some trait in a location
which expected that trait. This error typically occurs when working with
diff --git a/compiler/rustc_error_codes/src/error_codes/E0297.md b/compiler/rustc_error_codes/src/error_codes/E0297.md
index 66c31376d8b..001e0f3089e 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0297.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0297.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
Patterns used to bind names must be irrefutable. That is, they must guarantee
that a name will be extracted in all cases. Instead of pattern matching the
diff --git a/compiler/rustc_error_codes/src/error_codes/E0301.md b/compiler/rustc_error_codes/src/error_codes/E0301.md
index 485e19fbb8d..7b1e02051dc 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0301.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0301.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
Mutable borrows are not allowed in pattern guards, because matching cannot have
side effects. Side effects could alter the matched object or the environment
diff --git a/compiler/rustc_error_codes/src/error_codes/E0302.md b/compiler/rustc_error_codes/src/error_codes/E0302.md
index e6ac9d590c8..c56500fcebc 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0302.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0302.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
Assignments are not allowed in pattern guards, because matching cannot have
side effects. Side effects could alter the matched object or the environment
diff --git a/compiler/rustc_error_codes/src/error_codes/E0303.md b/compiler/rustc_error_codes/src/error_codes/E0303.md
index 459906047cc..750b766f5bf 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0303.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0303.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
Sub-bindings, e.g. `ref x @ Some(ref y)` are now allowed under
`#![feature(bindings_after_at)]` and checked to make sure that
diff --git a/compiler/rustc_error_codes/src/error_codes/E0329.md b/compiler/rustc_error_codes/src/error_codes/E0329.md
index 37d84a1a89b..36114316e88 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0329.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0329.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
An attempt was made to access an associated constant through either a generic
type parameter or `Self`. This is not supported yet. An example causing this
diff --git a/compiler/rustc_error_codes/src/error_codes/E0383.md b/compiler/rustc_error_codes/src/error_codes/E0383.md
index fd2b0b08fb0..309eb2b59eb 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0383.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0383.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
This error occurs when an attempt is made to partially reinitialize a
structure that is currently uninitialized.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0386.md b/compiler/rustc_error_codes/src/error_codes/E0386.md
index de3b468b6e4..5e45a2b40ce 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0386.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0386.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
This error occurs when an attempt is made to mutate the target of a mutable
reference stored inside an immutable container.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0387.md b/compiler/rustc_error_codes/src/error_codes/E0387.md
index 38ad19bd6aa..ddc838bdca1 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0387.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0387.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
This error occurs when an attempt is made to mutate or mutably reference data
that a closure has captured immutably.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0388.md b/compiler/rustc_error_codes/src/error_codes/E0388.md
index 512fb42e6ec..13ef94a4855 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0388.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0388.md
@@ -1 +1 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0389.md b/compiler/rustc_error_codes/src/error_codes/E0389.md
index 9f064e44c82..19bb6ec4081 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0389.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0389.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
An attempt was made to mutate data using a non-mutable reference. This
commonly occurs when attempting to assign to a non-mutable reference of a
diff --git a/compiler/rustc_error_codes/src/error_codes/E0398.md b/compiler/rustc_error_codes/src/error_codes/E0398.md
index 75d86979e3c..12e0eb1a5d5 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0398.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0398.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
In Rust 1.3, the default object lifetime bounds are expected to change, as
described in [RFC 1156]. You are getting a warning because the compiler
diff --git a/compiler/rustc_error_codes/src/error_codes/E0399.md b/compiler/rustc_error_codes/src/error_codes/E0399.md
index 6ea6054b417..c3e9616c606 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0399.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0399.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler
+### Note: this error code is no longer emitted by the compiler
You implemented a trait, overriding one or more of its associated types but did
not reimplement its default methods.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0439.md b/compiler/rustc_error_codes/src/error_codes/E0439.md
index 24268aef222..85e965c4eee 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0439.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0439.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
The length of the platform-intrinsic function `simd_shuffle` wasn't specified.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0447.md b/compiler/rustc_error_codes/src/error_codes/E0447.md
index af8cd8d6d52..e880ff4637d 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0447.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0447.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
The `pub` keyword was used inside a function.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0448.md b/compiler/rustc_error_codes/src/error_codes/E0448.md
index ba096f9e984..f4bd1841888 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0448.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0448.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
The `pub` keyword was used inside a public enum.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0497.md b/compiler/rustc_error_codes/src/error_codes/E0497.md
index ef2882415d2..12004996384 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0497.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0497.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
A stability attribute was used outside of the standard library.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0504.md b/compiler/rustc_error_codes/src/error_codes/E0504.md
index bcbd00a8690..640cfad656f 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0504.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0504.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
This error occurs when an attempt is made to move a borrowed variable into a
closure.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0595.md b/compiler/rustc_error_codes/src/error_codes/E0595.md
index e6729013243..96fbb5e410a 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0595.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0595.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
Closures cannot mutate immutable captured variables.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0619.md b/compiler/rustc_error_codes/src/error_codes/E0619.md
index f516de43095..d33154058dd 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0619.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0619.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
The type-checker needed to know the type of an expression, but that type had not
yet been inferred.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0633.md b/compiler/rustc_error_codes/src/error_codes/E0633.md
index 5b6c15c82eb..f6e8a4042ed 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0633.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0633.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
The `unwind` attribute was malformed.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0665.md b/compiler/rustc_error_codes/src/error_codes/E0665.md
index ae54d6d1579..db5e088cc50 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0665.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0665.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
The `Default` trait was derived on an enum.
diff --git a/compiler/rustc_error_codes/src/error_codes/E0671.md b/compiler/rustc_error_codes/src/error_codes/E0671.md
index d4dbfb7a5d8..a68273f752e 100644
--- a/compiler/rustc_error_codes/src/error_codes/E0671.md
+++ b/compiler/rustc_error_codes/src/error_codes/E0671.md
@@ -1,4 +1,4 @@
-#### Note: this error code is no longer emitted by the compiler.
+### Note: this error code is no longer emitted by the compiler.
Const parameters cannot depend on type parameters.
The following is therefore invalid:
diff --git a/src/librustdoc/externalfiles.rs b/src/librustdoc/externalfiles.rs
index 56d2ca57218..1fd5e2d5ef6 100644
--- a/src/librustdoc/externalfiles.rs
+++ b/src/librustdoc/externalfiles.rs
@@ -39,14 +39,14 @@ impl ExternalHtml {
let bc = format!(
"{}{}",
bc,
- Markdown(&m_bc, &[], id_map, codes, edition, playground).into_string()
+ Markdown(&m_bc, &[], id_map, codes, edition, playground, 0).into_string()
);
let ac = load_external_files(after_content, diag)?;
let m_ac = load_external_files(md_after_content, diag)?;
let ac = format!(
"{}{}",
ac,
- Markdown(&m_ac, &[], id_map, codes, edition, playground).into_string()
+ Markdown(&m_ac, &[], id_map, codes, edition, playground, 0).into_string()
);
Some(ExternalHtml { in_header: ih, before_content: bc, after_content: ac })
}
diff --git a/src/librustdoc/html/markdown.rs b/src/librustdoc/html/markdown.rs
index fda2512a050..56b580a0518 100644
--- a/src/librustdoc/html/markdown.rs
+++ b/src/librustdoc/html/markdown.rs
@@ -12,7 +12,7 @@
//!
//! let s = "My *markdown* _text_";
//! let mut id_map = IdMap::new();
-//! let md = Markdown(s, &[], &mut id_map, ErrorCodes::Yes, Edition::Edition2015, &None);
+//! let md = Markdown(s, &[], &mut id_map, ErrorCodes::Yes, Edition::Edition2015, &None, 0);
//! let html = md.into_string();
//! // ... something using html
//! ```
@@ -47,6 +47,8 @@ use pulldown_cmark::{
#[cfg(test)]
mod tests;
+const MAX_HEADER_LEVEL: u32 = 6;
+
/// Options for rendering Markdown in the main body of documentation.
pub(crate) fn main_body_opts() -> Options {
Options::ENABLE_TABLES
@@ -78,6 +80,7 @@ pub struct Markdown<'a>(
/// Default edition to use when parsing doctests (to add a `fn main`).
pub Edition,
pub &'a Option<Playground>,
+ pub u32,
);
/// A tuple struct like `Markdown` that renders the markdown with a table of contents.
crate struct MarkdownWithToc<'a>(
@@ -489,11 +492,12 @@ struct HeadingLinks<'a, 'b, 'ids, I> {
toc: Option<&'b mut TocBuilder>,
buf: VecDeque<SpannedEvent<'a>>,
id_map: &'ids mut IdMap,
+ level: u32,
}
impl<'a, 'b, 'ids, I> HeadingLinks<'a, 'b, 'ids, I> {
- fn new(iter: I, toc: Option<&'b mut TocBuilder>, ids: &'ids mut IdMap) -> Self {
- HeadingLinks { inner: iter, toc, buf: VecDeque::new(), id_map: ids }
+ fn new(iter: I, toc: Option<&'b mut TocBuilder>, ids: &'ids mut IdMap, level: u32) -> Self {
+ HeadingLinks { inner: iter, toc, buf: VecDeque::new(), id_map: ids, level }
}
}
@@ -530,6 +534,7 @@ impl<'a, 'b, 'ids, I: Iterator<Item = SpannedEvent<'a>>> Iterator
self.buf.push_front((Event::Html(format!("{} ", sec).into()), 0..0));
}
+ let level = std::cmp::min(level + self.level + 1, MAX_HEADER_LEVEL);
self.buf.push_back((Event::Html(format!("</a></h{}>", level).into()), 0..0));
let start_tags = format!(
@@ -1005,7 +1010,7 @@ impl LangString {
impl Markdown<'_> {
pub fn into_string(self) -> String {
- let Markdown(md, links, mut ids, codes, edition, playground) = self;
+ let Markdown(md, links, mut ids, codes, edition, playground, level) = self;
// This is actually common enough to special-case
if md.is_empty() {
@@ -1026,7 +1031,7 @@ impl Markdown<'_> {
let mut s = String::with_capacity(md.len() * 3 / 2);
- let p = HeadingLinks::new(p, None, &mut ids);
+ let p = HeadingLinks::new(p, None, &mut ids, level);
let p = Footnotes::new(p);
let p = LinkReplacer::new(p.map(|(ev, _)| ev), links);
let p = TableWrapper::new(p);
@@ -1048,7 +1053,7 @@ impl MarkdownWithToc<'_> {
let mut toc = TocBuilder::new();
{
- let p = HeadingLinks::new(p, Some(&mut toc), &mut ids);
+ let p = HeadingLinks::new(p, Some(&mut toc), &mut ids, 0);
let p = Footnotes::new(p);
let p = TableWrapper::new(p.map(|(ev, _)| ev));
let p = CodeBlocks::new(p, codes, edition, playground);
@@ -1077,7 +1082,7 @@ impl MarkdownHtml<'_> {
let mut s = String::with_capacity(md.len() * 3 / 2);
- let p = HeadingLinks::new(p, None, &mut ids);
+ let p = HeadingLinks::new(p, None, &mut ids, 0);
let p = Footnotes::new(p);
let p = TableWrapper::new(p.map(|(ev, _)| ev));
let p = CodeBlocks::new(p, codes, edition, playground);
@@ -1295,7 +1300,7 @@ crate fn markdown_links(md: &str) -> Vec<MarkdownLink> {
// There's no need to thread an IdMap through to here because
// the IDs generated aren't going to be emitted anywhere.
let mut ids = IdMap::new();
- let iter = Footnotes::new(HeadingLinks::new(p, None, &mut ids));
+ let iter = Footnotes::new(HeadingLinks::new(p, None, &mut ids, 0));
for ev in iter {
if let Event::Start(Tag::Link(kind, dest, _)) = ev.0 {
diff --git a/src/librustdoc/html/markdown/tests.rs b/src/librustdoc/html/markdown/tests.rs
index 1e4cf3381f6..c6af7e5847c 100644
--- a/src/librustdoc/html/markdown/tests.rs
+++ b/src/librustdoc/html/markdown/tests.rs
@@ -147,33 +147,33 @@ fn test_lang_string_tokenizer() {
fn test_header() {
fn t(input: &str, expect: &str) {
let mut map = IdMap::new();
- let output =
- Markdown(input, &[], &mut map, ErrorCodes::Yes, DEFAULT_EDITION, &None).into_string();
+ let output = Markdown(input, &[], &mut map, ErrorCodes::Yes, DEFAULT_EDITION, &None, 0)
+ .into_string();
assert_eq!(output, expect, "original: {}", input);
}
t(
"# Foo bar",
- "<h1 id=\"foo-bar\" class=\"section-header\"><a href=\"#foo-bar\">Foo bar</a></h1>",
+ "<h2 id=\"foo-bar\" class=\"section-header\"><a href=\"#foo-bar\">Foo bar</a></h2>",
);
t(
"## Foo-bar_baz qux",
- "<h2 id=\"foo-bar_baz-qux\" class=\"section-header\">\
- <a href=\"#foo-bar_baz-qux\">Foo-bar_baz qux</a></h2>",
+ "<h3 id=\"foo-bar_baz-qux\" class=\"section-header\">\
+ <a href=\"#foo-bar_baz-qux\">Foo-bar_baz qux</a></h3>",
);
t(
"### **Foo** *bar* baz!?!& -_qux_-%",
- "<h3 id=\"foo-bar-baz--qux-\" class=\"section-header\">\
+ "<h4 id=\"foo-bar-baz--qux-\" class=\"section-header\">\
<a href=\"#foo-bar-baz--qux-\"><strong>Foo</strong> \
<em>bar</em> baz!?!&amp; -<em>qux</em>-%</a>\
- </h3>",
+ </h4>",
);
t(
"#### **Foo?** & \\*bar?!* _`baz`_ ❤ #qux",
- "<h4 id=\"foo--bar--baz--qux\" class=\"section-header\">\
+ "<h5 id=\"foo--bar--baz--qux\" class=\"section-header\">\
<a href=\"#foo--bar--baz--qux\"><strong>Foo?</strong> &amp; *bar?!* \
<em><code>baz</code></em> ❤ #qux</a>\
- </h4>",
+ </h5>",
);
}
@@ -182,39 +182,39 @@ fn test_header_ids_multiple_blocks() {
let mut map = IdMap::new();
fn t(map: &mut IdMap, input: &str, expect: &str) {
let output =
- Markdown(input, &[], map, ErrorCodes::Yes, DEFAULT_EDITION, &None).into_string();
+ Markdown(input, &[], map, ErrorCodes::Yes, DEFAULT_EDITION, &None, 0).into_string();
assert_eq!(output, expect, "original: {}", input);
}
t(
&mut map,
"# Example",
- "<h1 id=\"example\" class=\"section-header\"><a href=\"#example\">Example</a></h1>",
+ "<h2 id=\"example\" class=\"section-header\"><a href=\"#example\">Example</a></h2>",
);
t(
&mut map,
"# Panics",
- "<h1 id=\"panics\" class=\"section-header\"><a href=\"#panics\">Panics</a></h1>",
+ "<h2 id=\"panics\" class=\"section-header\"><a href=\"#panics\">Panics</a></h2>",
);
t(
&mut map,
"# Example",
- "<h1 id=\"example-1\" class=\"section-header\"><a href=\"#example-1\">Example</a></h1>",
+ "<h2 id=\"example-1\" class=\"section-header\"><a href=\"#example-1\">Example</a></h2>",
);
t(
&mut map,
"# Main",
- "<h1 id=\"main-1\" class=\"section-header\"><a href=\"#main-1\">Main</a></h1>",
+ "<h2 id=\"main-1\" class=\"section-header\"><a href=\"#main-1\">Main</a></h2>",
);
t(
&mut map,
"# Example",
- "<h1 id=\"example-2\" class=\"section-header\"><a href=\"#example-2\">Example</a></h1>",
+ "<h2 id=\"example-2\" class=\"section-header\"><a href=\"#example-2\">Example</a></h2>",
);
t(
&mut map,
"# Panics",
- "<h1 id=\"panics-1\" class=\"section-header\"><a href=\"#panics-1\">Panics</a></h1>",
+ "<h2 id=\"panics-1\" class=\"section-header\"><a href=\"#panics-1\">Panics</a></h2>",
);
}
diff --git a/src/librustdoc/html/render/mod.rs b/src/librustdoc/html/render/mod.rs
index 5045a99800a..69f39bb58a8 100644
--- a/src/librustdoc/html/render/mod.rs
+++ b/src/librustdoc/html/render/mod.rs
@@ -471,19 +471,35 @@ fn settings(root_path: &str, suffix: &str, themes: &[StylePath]) -> Result<Strin
}
fn document(w: &mut Buffer, cx: &Context<'_>, item: &clean::Item, parent: Option<&clean::Item>) {
+ document_at_level(w, cx, item, parent, 0)
+}
+
+fn document_at_level(
+ w: &mut Buffer,
+ cx: &Context<'_>,
+ item: &clean::Item,
+ parent: Option<&clean::Item>,
+ level: u32,
+) {
if let Some(ref name) = item.name {
info!("Documenting {}", name);
}
document_item_info(w, cx, item, parent);
if parent.is_none() {
- document_full_collapsible(w, item, cx);
+ document_full_collapsible(w, item, cx, level);
} else {
- document_full(w, item, cx);
+ document_full(w, item, cx, level);
}
}
/// Render md_text as markdown.
-fn render_markdown(w: &mut Buffer, cx: &Context<'_>, md_text: &str, links: Vec<RenderedLink>) {
+fn render_markdown(
+ w: &mut Buffer,
+ cx: &Context<'_>,
+ md_text: &str,
+ links: Vec<RenderedLink>,
+ level: u32,
+) {
let mut ids = cx.id_map.borrow_mut();
write!(
w,
@@ -494,7 +510,8 @@ fn render_markdown(w: &mut Buffer, cx: &Context<'_>, md_text: &str, links: Vec<R
&mut ids,
cx.shared.codes,
cx.shared.edition(),
- &cx.shared.playground
+ &cx.shared.playground,
+ level
)
.into_string()
)
@@ -531,15 +548,21 @@ fn document_short(
}
}
-fn document_full_collapsible(w: &mut Buffer, item: &clean::Item, cx: &Context<'_>) {
- document_full_inner(w, item, cx, true);
+fn document_full_collapsible(w: &mut Buffer, item: &clean::Item, cx: &Context<'_>, level: u32) {
+ document_full_inner(w, item, cx, true, level);
}
-fn document_full(w: &mut Buffer, item: &clean::Item, cx: &Context<'_>) {
- document_full_inner(w, item, cx, false);
+fn document_full(w: &mut Buffer, item: &clean::Item, cx: &Context<'_>, level: u32) {
+ document_full_inner(w, item, cx, false, level);
}
-fn document_full_inner(w: &mut Buffer, item: &clean::Item, cx: &Context<'_>, is_collapsible: bool) {
+fn document_full_inner(
+ w: &mut Buffer,
+ item: &clean::Item,
+ cx: &Context<'_>,
+ is_collapsible: bool,
+ level: u32,
+) {
if let Some(s) = cx.shared.maybe_collapsed_doc_value(item) {
debug!("Doc block: =====\n{}\n=====", s);
if is_collapsible {
@@ -549,10 +572,10 @@ fn document_full_inner(w: &mut Buffer, item: &clean::Item, cx: &Context<'_>, is_
<span>Expand description</span>\
</summary>",
);
- render_markdown(w, cx, &s, item.links(cx));
+ render_markdown(w, cx, &s, item.links(cx), level);
w.write_str("</details>");
} else {
- render_markdown(w, cx, &s, item.links(cx));
+ render_markdown(w, cx, &s, item.links(cx), level);
}
}
}
@@ -1321,7 +1344,7 @@ fn render_impl(
// because impls can't have a stability.
if item.doc_value().is_some() {
document_item_info(&mut info_buffer, cx, it, Some(parent));
- document_full(&mut doc_buffer, item, cx);
+ document_full(&mut doc_buffer, item, cx, 0);
short_documented = false;
} else {
// In case the item isn't documented,
@@ -1339,7 +1362,7 @@ fn render_impl(
} else {
document_item_info(&mut info_buffer, cx, item, Some(parent));
if rendering_params.show_def_docs {
- document_full(&mut doc_buffer, item, cx);
+ document_full(&mut doc_buffer, item, cx, 3);
short_documented = false;
}
}
@@ -1579,7 +1602,8 @@ fn render_impl(
&mut ids,
cx.shared.codes,
cx.shared.edition(),
- &cx.shared.playground
+ &cx.shared.playground,
+ 0
)
.into_string()
);
diff --git a/src/librustdoc/html/render/print_item.rs b/src/librustdoc/html/render/print_item.rs
index fa0d211efe6..59a6925d8b4 100644
--- a/src/librustdoc/html/render/print_item.rs
+++ b/src/librustdoc/html/render/print_item.rs
@@ -16,10 +16,10 @@ use rustc_span::symbol::{kw, sym, Symbol};
use rustc_target::abi::{Layout, Primitive, TagEncoding, Variants};
use super::{
- collect_paths_for_type, document, ensure_trailing_slash, item_ty_to_strs, notable_traits_decl,
- render_assoc_item, render_assoc_items, render_attributes_in_code, render_attributes_in_pre,
- render_impl, render_stability_since_raw, write_srclink, AssocItemLink, Context,
- ImplRenderingParameters,
+ collect_paths_for_type, document, document_at_level, ensure_trailing_slash, item_ty_to_strs,
+ notable_traits_decl, render_assoc_item, render_assoc_items, render_attributes_in_code,
+ render_attributes_in_pre, render_impl, render_stability_since_raw, write_srclink,
+ AssocItemLink, Context, ImplRenderingParameters,
};
use crate::clean::{self, GetDefId};
use crate::formats::item_type::ItemType;
@@ -626,7 +626,7 @@ fn item_trait(w: &mut Buffer, cx: &Context<'_>, it: &clean::Item, t: &clean::Tra
let item_type = m.type_();
let id = cx.derive_id(format!("{}.{}", item_type, name));
let mut content = Buffer::empty_from(w);
- document(&mut content, cx, m, Some(t));
+ document_at_level(&mut content, cx, m, Some(t), 3);
let toggled = !content.is_empty();
if toggled {
write!(w, "<details class=\"rustdoc-toggle\" open><summary>");
diff --git a/src/librustdoc/html/static/css/rustdoc.css b/src/librustdoc/html/static/css/rustdoc.css
index eb7cc9309f4..925d76956ab 100644
--- a/src/librustdoc/html/static/css/rustdoc.css
+++ b/src/librustdoc/html/static/css/rustdoc.css
@@ -126,7 +126,7 @@ h2 {
h3 {
font-size: 1.3em;
}
-h1, h2, h3, h4 {
+h1, h2, h3, h4, h5, h6 {
font-weight: 500;
margin: 20px 0 15px 0;
padding-bottom: 6px;
@@ -179,7 +179,7 @@ div.impl-items > div {
padding-left: 0;
}
-h1, h2, h3, h4,
+h1, h2, h3, h4, h5, h6,
.sidebar, a.source, .search-input, .search-results .result-name,
.content table td:first-child > a,
.item-left > a,
@@ -501,21 +501,20 @@ nav.sub {
white-space: pre-wrap;
}
-.docblock h1, .docblock h2, .docblock h3, .docblock h4, .docblock h5 {
+.docblock h1, .docblock h2, .docblock h3, .docblock h4, .docblock h5, .docblock h6 {
border-bottom: 1px solid;
}
-.top-doc .docblock h1 { font-size: 1.3em; }
-.top-doc .docblock h2 { font-size: 1.15em; }
-.top-doc .docblock h3,
+.top-doc .docblock h2 { font-size: 1.3em; }
+.top-doc .docblock h3 { font-size: 1.15em; }
.top-doc .docblock h4,
-.top-doc .docblock h5 {
+.top-doc .docblock h5,
+.top-doc .docblock h6 {
font-size: 1em;
}
-.docblock h1 { font-size: 1em; }
-.docblock h2 { font-size: 0.95em; }
-.docblock h3, .docblock h4, .docblock h5 { font-size: 0.9em; }
+.docblock h5 { font-size: 1em; }
+.docblock h6 { font-size: 0.95em; }
.docblock {
margin-left: 24px;
diff --git a/src/librustdoc/html/static/css/themes/ayu.css b/src/librustdoc/html/static/css/themes/ayu.css
index c79801e8308..0fb4f95acdf 100644
--- a/src/librustdoc/html/static/css/themes/ayu.css
+++ b/src/librustdoc/html/static/css/themes/ayu.css
@@ -136,7 +136,7 @@ pre, .rustdoc.source .example-wrap {
border-right: 1px solid #ffb44c;
}
-.docblock h1, .docblock h2, .docblock h3, .docblock h4, .docblock h5 {
+.docblock h2, .docblock h3, .docblock h4, .docblock h5, .docblock h6 {
border-bottom-color: #5c6773;
}
diff --git a/src/librustdoc/html/static/css/themes/dark.css b/src/librustdoc/html/static/css/themes/dark.css
index d2e54070acd..4fb6f7b38bb 100644
--- a/src/librustdoc/html/static/css/themes/dark.css
+++ b/src/librustdoc/html/static/css/themes/dark.css
@@ -93,7 +93,7 @@ pre, .rustdoc.source .example-wrap {
background-color: #0a042f !important;
}
-.docblock h1, .docblock h2, .docblock h3, .docblock h4, .docblock h5 {
+.docblock h2, .docblock h3, .docblock h4, .docblock h5, .docblock h6 {
border-bottom-color: #DDD;
}
diff --git a/src/librustdoc/html/static/css/themes/light.css b/src/librustdoc/html/static/css/themes/light.css
index 25d810560c1..62134f025c8 100644
--- a/src/librustdoc/html/static/css/themes/light.css
+++ b/src/librustdoc/html/static/css/themes/light.css
@@ -93,7 +93,7 @@ pre, .rustdoc.source .example-wrap {
background-color: #f6fdb0 !important;
}
-.docblock h1, .docblock h2, .docblock h3, .docblock h4, .docblock h5 {
+.docblock h2, .docblock h3, .docblock h4, .docblock h5, .docblock h6 {
border-bottom-color: #ddd;
}
diff --git a/src/librustdoc/markdown.rs b/src/librustdoc/markdown.rs
index 2ae4897dc34..82e6231782c 100644
--- a/src/librustdoc/markdown.rs
+++ b/src/librustdoc/markdown.rs
@@ -70,7 +70,7 @@ crate fn render<P: AsRef<Path>>(
let text = if !options.markdown_no_toc {
MarkdownWithToc(text, &mut ids, error_codes, edition, &playground).into_string()
} else {
- Markdown(text, &[], &mut ids, error_codes, edition, &playground).into_string()
+ Markdown(text, &[], &mut ids, error_codes, edition, &playground, 0).into_string()
};
let err = write!(
diff --git a/src/test/rustdoc/external-cross.rs b/src/test/rustdoc/external-cross.rs
index 056ed353462..3f8e1688291 100644
--- a/src/test/rustdoc/external-cross.rs
+++ b/src/test/rustdoc/external-cross.rs
@@ -6,5 +6,5 @@
extern crate external_cross;
// @has host/struct.NeedMoreDocs.html
-// @has - '//h1' 'Cross-crate imported docs'
+// @has - '//h2' 'Cross-crate imported docs'
pub use external_cross::NeedMoreDocs;
diff --git a/src/test/rustdoc/external-doc.rs b/src/test/rustdoc/external-doc.rs
index fc29cb252e2..bd322d67a37 100644
--- a/src/test/rustdoc/external-doc.rs
+++ b/src/test/rustdoc/external-doc.rs
@@ -1,6 +1,6 @@
// @has external_doc/struct.IncludeStrDocs.html
-// @has - '//h1' 'External Docs'
-// @has - '//h2' 'Inline Docs'
+// @has - '//h2' 'External Docs'
+// @has - '//h3' 'Inline Docs'
#[doc = include_str!("auxiliary/external-doc.md")]
/// ## Inline Docs
pub struct IncludeStrDocs;
@@ -8,7 +8,7 @@ pub struct IncludeStrDocs;
macro_rules! dir { () => { "auxiliary" } }
// @has external_doc/struct.EagerExpansion.html
-// @has - '//h1' 'External Docs'
+// @has - '//h2' 'External Docs'
#[doc = include_str!(concat!(dir!(), "/external-doc.md"))]
/// ## Inline Docs
pub struct EagerExpansion;
diff --git a/src/test/rustdoc/issue-42760.rs b/src/test/rustdoc/issue-42760.rs
index b07dc3f6e96..4944f815701 100644
--- a/src/test/rustdoc/issue-42760.rs
+++ b/src/test/rustdoc/issue-42760.rs
@@ -1,5 +1,5 @@
// @has issue_42760/struct.NonGen.html
-// @has - '//h1' 'Example'
+// @has - '//h2' 'Example'
/// Item docs.
///
diff --git a/src/test/rustdoc/short-docblock.rs b/src/test/rustdoc/short-docblock.rs
index 74fa783174d..17c44eab091 100644
--- a/src/test/rustdoc/short-docblock.rs
+++ b/src/test/rustdoc/short-docblock.rs
@@ -2,7 +2,7 @@
// @has foo/index.html '//*[@class="item-right docblock-short"]/p' 'fooo'
// @!has foo/index.html '//*[@class="item-right docblock-short"]/p/h1' 'fooo'
-// @has foo/fn.foo.html '//h1[@id="fooo"]/a[@href="#fooo"]' 'fooo'
+// @has foo/fn.foo.html '//h2[@id="fooo"]/a[@href="#fooo"]' 'fooo'
/// # fooo
///
@@ -11,7 +11,7 @@ pub fn foo() {}
// @has foo/index.html '//*[@class="item-right docblock-short"]/p' 'mooood'
// @!has foo/index.html '//*[@class="item-right docblock-short"]/p/h2' 'mooood'
-// @has foo/foo/index.html '//h2[@id="mooood"]/a[@href="#mooood"]' 'mooood'
+// @has foo/foo/index.html '//h3[@id="mooood"]/a[@href="#mooood"]' 'mooood'
/// ## mooood
///
diff --git a/src/test/rustdoc/smart-punct.rs b/src/test/rustdoc/smart-punct.rs
index 5319892c99c..7ae5bd69945 100644
--- a/src/test/rustdoc/smart-punct.rs
+++ b/src/test/rustdoc/smart-punct.rs
@@ -21,7 +21,7 @@
//! ```
// @has "foo/index.html" "//p" "This is the “start” of the ‘document’! How’d you know that “it’s” the start?"
-// @has "foo/index.html" "//h1" "Header with “smart punct’”"
+// @has "foo/index.html" "//h2" "Header with “smart punct’”"
// @has "foo/index.html" '//a[@href="https://www.rust-lang.org"]' "link with “smart punct’” – yessiree!"
// @has "foo/index.html" '//code' "this inline code -- it shouldn't have \"smart punct\""
// @has "foo/index.html" '//pre' "let x = \"don't smart-punct me -- please!\";"
diff --git a/src/tools/error_index_generator/main.rs b/src/tools/error_index_generator/main.rs
index 01a3fc812b2..1ba283b1781 100644
--- a/src/tools/error_index_generator/main.rs
+++ b/src/tools/error_index_generator/main.rs
@@ -125,7 +125,8 @@ impl Formatter for HTMLFormatter {
&mut id_map,
ErrorCodes::Yes,
DEFAULT_EDITION,
- &Some(playground)
+ &Some(playground),
+ 0
)
.into_string()
)?
diff --git a/src/tools/tidy/src/error_codes_check.rs b/src/tools/tidy/src/error_codes_check.rs
index 53c75a46339..ae169d383b2 100644
--- a/src/tools/tidy/src/error_codes_check.rs
+++ b/src/tools/tidy/src/error_codes_check.rs
@@ -49,7 +49,7 @@ fn check_error_code_explanation(
} else if s.contains("compile-fail") {
invalid_compile_fail_format = true;
}
- } else if s.starts_with("#### Note: this error code is no longer emitted by the compiler") {
+ } else if s.starts_with("### Note: this error code is no longer emitted by the compiler") {
if !found_error_code {
error_codes.get_mut(&err_code).map(|x| x.has_test = true);
found_error_code = true;
@@ -64,7 +64,7 @@ fn check_if_error_code_is_test_in_explanation(f: &str, err_code: &str) -> bool {
for line in f.lines() {
let s = line.trim();
- if s.starts_with("#### Note: this error code is no longer emitted by the compiler") {
+ if s.starts_with("### Note: this error code is no longer emitted by the compiler") {
return true;
}
if s.starts_with("```") {