Add long diagnostics for E0247

This commit is contained in:
Alisdair Owens 2015-09-04 19:21:22 +01:00
parent 62c45f4f25
commit 8175dce517
1 changed files with 18 additions and 1 deletions

View File

@ -2475,6 +2475,24 @@ struct Bar<S, T> { x: Foo<S, T> }
``` ```
"##, "##,
//NB: not currently reachable
E0247: r##"
This error indicates an attempt to use a module name where a type is expected.
For example:
```
mod MyMod {
mod MySubMod { }
}
fn do_something(x: MyMod::MySubMod) { }
```
In this example, we're attempting to take a parameter of type `MyMod::MySubMod`
in the do_something function. This is not legal: `MyMod::MySubMod` is a module
name, not a type.
"##,
E0248: r##" E0248: r##"
This error indicates an attempt to use a value where a type is expected. For This error indicates an attempt to use a value where a type is expected. For
example: example:
@ -3291,7 +3309,6 @@ register_diagnostics! {
E0242, // internal error looking up a definition E0242, // internal error looking up a definition
E0245, // not a trait E0245, // not a trait
// E0246, // invalid recursive type // E0246, // invalid recursive type
E0247, // found module name used as a type
// E0319, // trait impls for defaulted traits allowed just for structs/enums // E0319, // trait impls for defaulted traits allowed just for structs/enums
E0320, // recursive overflow during dropck E0320, // recursive overflow during dropck
E0321, // extended coherence rules for defaulted traits violated E0321, // extended coherence rules for defaulted traits violated