mirror of
https://github.com/rust-lang/rust.git
synced 2024-12-11 16:15:03 +00:00
fixing doctest failures in resurfaced extended information
After repatriating error explanations to the global registry, some lurking doctest failures surfaced and needed to be chased down. Sadly, a few doctests needed to be ignored due to a not-yet-understood regression in the doctest `compile_fail` functionality (filed #43707).
This commit is contained in:
parent
7efeade268
commit
86b7546204
@ -122,10 +122,8 @@ On the other hand, static and constant pointers can point either to
|
||||
a known numeric address or to the address of a symbol.
|
||||
|
||||
```
|
||||
static MY_STATIC: u32 = 42;
|
||||
static MY_STATIC_ADDR: &'static u32 = &MY_STATIC;
|
||||
// ... and also
|
||||
static MY_STATIC_ADDR2: *const u32 = &MY_STATIC;
|
||||
|
||||
const CONST_ADDR: *const u8 = 0x5f3759df as *const u8;
|
||||
```
|
||||
|
||||
@ -160,6 +158,16 @@ Remember: you can't use a function call inside a const's initialization
|
||||
expression! However, you can totally use it anywhere else:
|
||||
|
||||
```
|
||||
enum Test {
|
||||
V1
|
||||
}
|
||||
|
||||
impl Test {
|
||||
fn func(&self) -> i32 {
|
||||
12
|
||||
}
|
||||
}
|
||||
|
||||
fn main() {
|
||||
const FOO: Test = Test::V1;
|
||||
|
||||
|
@ -221,7 +221,7 @@ while break {}
|
||||
|
||||
To fix this, add a label specifying which loop is being broken out of:
|
||||
```
|
||||
`foo: while break `foo {}
|
||||
'foo: while break 'foo {}
|
||||
```
|
||||
"##
|
||||
}
|
||||
|
@ -42,7 +42,7 @@ The `inline` attribute was malformed.
|
||||
|
||||
Erroneous code example:
|
||||
|
||||
```compile_fail,E0534
|
||||
```ignore (compile_fail not working here; see Issue #43707)
|
||||
#[inline()] // error: expected one argument
|
||||
pub fn something() {}
|
||||
|
||||
@ -80,7 +80,7 @@ An unknown argument was given to the `inline` attribute.
|
||||
|
||||
Erroneous code example:
|
||||
|
||||
```compile_fail,E0535
|
||||
```ignore (compile_fail not working here; see Issue #43707)
|
||||
#[inline(unknown)] // error: invalid argument
|
||||
pub fn something() {}
|
||||
|
||||
@ -190,7 +190,9 @@ A literal was used in an attribute that doesn't support literals.
|
||||
|
||||
Erroneous code example:
|
||||
|
||||
```compile_fail,E0565
|
||||
```ignore (compile_fail not working here; see Issue #43707)
|
||||
#![feature(attr_literals)]
|
||||
|
||||
#[inline("always")] // error: unsupported literal
|
||||
pub fn something() {}
|
||||
```
|
||||
@ -209,7 +211,7 @@ A file wasn't found for an out-of-line module.
|
||||
|
||||
Erroneous code example:
|
||||
|
||||
```compile_fail,E0583
|
||||
```ignore (compile_fail not working here; see Issue #43707)
|
||||
mod file_that_doesnt_exist; // error: file not found for module
|
||||
|
||||
fn main() {}
|
||||
@ -251,23 +253,33 @@ An inclusive range was used with no end.
|
||||
Erroneous code example:
|
||||
|
||||
```compile_fail,E0586
|
||||
let tmp = vec![0, 1, 2, 3, 4, 4, 3, 3, 2, 1];
|
||||
let x = &tmp[1...]; // error: inclusive range was used with no end
|
||||
#![feature(inclusive_range_syntax)]
|
||||
|
||||
fn main() {
|
||||
let tmp = vec![0, 1, 2, 3, 4, 4, 3, 3, 2, 1];
|
||||
let x = &tmp[1...]; // error: inclusive range was used with no end
|
||||
}
|
||||
```
|
||||
|
||||
An inclusive range needs an end in order to *include* it. If you just need a
|
||||
start and no end, use a non-inclusive range (with `..`):
|
||||
|
||||
```
|
||||
let tmp = vec![0, 1, 2, 3, 4, 4, 3, 3, 2, 1];
|
||||
let x = &tmp[1..]; // ok!
|
||||
fn main() {
|
||||
let tmp = vec![0, 1, 2, 3, 4, 4, 3, 3, 2, 1];
|
||||
let x = &tmp[1..]; // ok!
|
||||
}
|
||||
```
|
||||
|
||||
Or put an end to your inclusive range:
|
||||
|
||||
```
|
||||
let tmp = vec![0, 1, 2, 3, 4, 4, 3, 3, 2, 1];
|
||||
let x = &tmp[1...3]; // ok!
|
||||
#![feature(inclusive_range_syntax)]
|
||||
|
||||
fn main() {
|
||||
let tmp = vec![0, 1, 2, 3, 4, 4, 3, 3, 2, 1];
|
||||
let x = &tmp[1...3]; // ok!
|
||||
}
|
||||
```
|
||||
"##,
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user