error: unknown start of token: \
 --> <doctest>:1:1
  |
1 | \__________pkt->size___________/          \_result->size_/ \__pkt->size__/
  | ^

error: unknown start of token: \
 --> <doctest>:1:43
  |
1 | \__________pkt->size___________/          \_result->size_/ \__pkt->size__/
  |                                           ^

error: unknown start of token: \
 --> <doctest>:1:60
  |
1 | \__________pkt->size___________/          \_result->size_/ \__pkt->size__/
  |                                                            ^

warning: could not parse code block as Rust code
  --> $DIR/invalid-syntax.rs:3:5
   |
LL |   /// ```
   |  _____^
LL | | /// \__________pkt->size___________/          \_result->size_/ \__pkt->size__/
LL | | /// ```
   | |_______^
help: mark blocks that do not contain Rust code as text
   |
LL | /// ```text
   |     ^^^^^^^

error: unknown start of token: `
 --> <doctest>:3:30
  |
3 |    |     ^^^^^^ did you mean `baz::foobar`?
  |                              ^
help: Unicode character '`' (Grave Accent) looks like ''' (Single Quote), but it is not
  |
3 |    |     ^^^^^^ did you mean 'baz::foobar`?
  |                              ^

error: unknown start of token: `
 --> <doctest>:3:42
  |
3 |    |     ^^^^^^ did you mean `baz::foobar`?
  |                                          ^
help: Unicode character '`' (Grave Accent) looks like ''' (Single Quote), but it is not
  |
3 |    |     ^^^^^^ did you mean `baz::foobar'?
  |                                          ^

warning: could not parse code block as Rust code
  --> $DIR/invalid-syntax.rs:8:5
   |
LL |   /// ```
   |  _____^
LL | | ///    |
LL | | /// LL | use foobar::Baz;
LL | | ///    |     ^^^^^^ did you mean `baz::foobar`?
LL | | /// ```
   | |_______^
help: mark blocks that do not contain Rust code as text
   |
LL | /// ```text
   |     ^^^^^^^

error: unknown start of token: \
 --> <doctest>:1:1
  |
1 | \_
  | ^

warning: could not parse code block as Rust code
  --> $DIR/invalid-syntax.rs:19:5
   |
LL |   /// ```
   |  _____^
LL | | /// \_
LL | | /// ```
   | |_______^
help: mark blocks that do not contain Rust code as text
   |
LL | /// ```text
   |     ^^^^^^^

error: unknown start of token: \
 --> <doctest>:1:1
  |
1 | \_
  | ^

warning: could not parse code block as Rust code
  --> $DIR/invalid-syntax.rs:32:5
   |
LL |   /// ```rust
   |  _____^
LL | | /// \_
LL | | /// ```
   | |_______^

error: unknown start of token: \
 --> <doctest>:2:5
  |
2 |     \_
  |     ^

warning: could not parse code block as Rust code
  --> $DIR/invalid-syntax.rs:41:9
   |
LL |   ///     code with bad syntax
   |  _________^
LL | | ///     \_
   | |__________^

error: unknown start of token: `
 --> <doctest>:1:1
  |
1 | ```
  | ^
help: Unicode character '`' (Grave Accent) looks like ''' (Single Quote), but it is not
  |
1 | '``
  | ^

error: unknown start of token: `
 --> <doctest>:1:2
  |
1 | ```
  |  ^
help: Unicode character '`' (Grave Accent) looks like ''' (Single Quote), but it is not
  |
1 | `'`
  |  ^

error: unknown start of token: `
 --> <doctest>:1:3
  |
1 | ```
  |   ^
help: Unicode character '`' (Grave Accent) looks like ''' (Single Quote), but it is not
  |
1 | ``'
  |   ^

warning: could not parse code block as Rust code
  --> $DIR/invalid-syntax.rs:55:9
   |
LL | ///     ```
   |         ^^^

error: unknown start of token: \
 --> <doctest>:1:1
  |
1 | \_
  | ^

warning: could not parse code block as Rust code
  --> $DIR/invalid-syntax.rs:58:5
   |
LL |   /// ```edition2018
   |  _____^
LL | | /// \_
LL | | /// ```
   | |_______^

error: unknown start of token: \
 --> <doctest>:1:1
  |
1 | \_
  | ^

warning: doc comment contains an invalid Rust code block
  --> $DIR/invalid-syntax.rs:63:1
   |
LL | / #[doc = "```"]
LL | | /// \_
LL | | #[doc = "```"]
   | |______________^
   |
   = help: mark blocks that do not contain Rust code as text: ```text

warning: Rust code block is empty
  --> $DIR/invalid-syntax.rs:68:5
   |
LL |   /// ```rust
   |  _____^
LL | | /// ```
   | |_______^

warning: Rust code block is empty
  --> $DIR/invalid-syntax.rs:72:5
   |
LL |   /// ```
   |  _____^
LL | | ///
LL | | ///
LL | | /// ```
   | |_______^
help: mark blocks that do not contain Rust code as text
   |
LL | /// ```text
   |     ^^^^^^^

error: unknown start of token: \
 --> <rustdoc-highlighting>:1:1
  |
1 | \_
  | ^

error: unknown start of token: \
 --> <rustdoc-highlighting>:1:1
  |
1 | \_
  | ^

error: unknown start of token: `
 --> <rustdoc-highlighting>:1:1
  |
1 | ```
  | ^
help: Unicode character '`' (Grave Accent) looks like ''' (Single Quote), but it is not
  |
1 | '``
  | ^

error: unknown start of token: \
 --> <rustdoc-highlighting>:2:1
  |
2 | \_
  | ^

error: unknown start of token: \
 --> <rustdoc-highlighting>:1:1
  |
1 | \_
  | ^

error: unknown start of token: \
 --> <rustdoc-highlighting>:1:1
  |
1 | \_
  | ^

error: unknown start of token: `
 --> <rustdoc-highlighting>:3:30
  |
3 |    |     ^^^^^^ did you mean `baz::foobar`?
  |                              ^
help: Unicode character '`' (Grave Accent) looks like ''' (Single Quote), but it is not
  |
3 |    |     ^^^^^^ did you mean 'baz::foobar`?
  |                              ^

error: unknown start of token: \
 --> <rustdoc-highlighting>:1:1
  |
1 | \__________pkt->size___________/          \_result->size_/ \__pkt->size__/
  | ^

