Update E0423 description
E0423 doesn't apply only to structs, update the error index description to make this clear.
This commit is contained in:
parent
41affd03eb
commit
a6782d9e4e
1 changed files with 30 additions and 4 deletions
|
@ -967,16 +967,18 @@ one.
|
||||||
"##,
|
"##,
|
||||||
|
|
||||||
E0423: r##"
|
E0423: r##"
|
||||||
A `struct` variant name was used like a function name.
|
An identifier was used like a function name or a value was expected and the
|
||||||
|
identifier exists but it belongs to a different namespace.
|
||||||
|
|
||||||
Erroneous code example:
|
For (an erroneous) example, here a `struct` variant name were used as a
|
||||||
|
function:
|
||||||
|
|
||||||
```compile_fail,E0423
|
```compile_fail,E0423
|
||||||
struct Foo { a: bool };
|
struct Foo { a: bool };
|
||||||
|
|
||||||
let f = Foo();
|
let f = Foo();
|
||||||
// error: `Foo` is a struct variant name, but this expression uses
|
// error: expected function, found `Foo`
|
||||||
// it like a function name
|
// `Foo` is a struct name, but this expression uses it like a function name
|
||||||
```
|
```
|
||||||
|
|
||||||
Please verify you didn't misspell the name of what you actually wanted to use
|
Please verify you didn't misspell the name of what you actually wanted to use
|
||||||
|
@ -987,6 +989,30 @@ fn Foo() -> u32 { 0 }
|
||||||
|
|
||||||
let f = Foo(); // ok!
|
let f = Foo(); // ok!
|
||||||
```
|
```
|
||||||
|
|
||||||
|
It is common to forget the trailing `!` on macro invocations, which would also
|
||||||
|
yield this error:
|
||||||
|
|
||||||
|
```compile_fail,E0423
|
||||||
|
println("");
|
||||||
|
// error: expected function, found macro `println`
|
||||||
|
// did you mean `println!(...)`? (notice the trailing `!`)
|
||||||
|
```
|
||||||
|
|
||||||
|
Another case where this error is emitted is when a value is expected, but
|
||||||
|
something else is found:
|
||||||
|
|
||||||
|
```compile_fail,E0423
|
||||||
|
pub mod a {
|
||||||
|
pub const I: i32 = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
fn h1() -> i32 {
|
||||||
|
a.I
|
||||||
|
//~^ ERROR expected value, found module `a`
|
||||||
|
// did you mean `a::I`?
|
||||||
|
}
|
||||||
|
```
|
||||||
"##,
|
"##,
|
||||||
|
|
||||||
E0424: r##"
|
E0424: r##"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue