From 8175dce5172bfb66dd6bc8e57175a5102acb1f94 Mon Sep 17 00:00:00 2001 From: Alisdair Owens Date: Fri, 4 Sep 2015 19:21:22 +0100 Subject: [PATCH] Add long diagnostics for E0247 --- src/librustc_typeck/diagnostics.rs | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/librustc_typeck/diagnostics.rs b/src/librustc_typeck/diagnostics.rs index dfce7a9c315..8a2f8b1cf4b 100644 --- a/src/librustc_typeck/diagnostics.rs +++ b/src/librustc_typeck/diagnostics.rs @@ -2475,6 +2475,24 @@ struct Bar { x: Foo } ``` "##, +//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##" This error indicates an attempt to use a value where a type is expected. For example: @@ -3291,7 +3309,6 @@ register_diagnostics! { E0242, // internal error looking up a definition E0245, // not a trait // E0246, // invalid recursive type - E0247, // found module name used as a type // E0319, // trait impls for defaulted traits allowed just for structs/enums E0320, // recursive overflow during dropck E0321, // extended coherence rules for defaulted traits violated