diff --git a/src/librustc/middle/resolve.rs b/src/librustc/middle/resolve.rs index e42f4433653d3..f5b3f46d66924 100644 --- a/src/librustc/middle/resolve.rs +++ b/src/librustc/middle/resolve.rs @@ -3035,9 +3035,8 @@ impl Resolver { Some(type_def) => { match type_def.module_def { None => { - error!("!!! (resolving module in lexical \ - scope) module wasn't actually a \ - module!"); + debug!("(resolving module in lexical scope) \ + module definition not found"); return Failed; } Some(module_def) => { @@ -3046,8 +3045,8 @@ impl Resolver { } } None => { - error!("!!! (resolving module in lexical scope) module - wasn't actually a module!"); + debug!("(resolving module in lexical scope) \ + type defintion not found"); return Failed; } } diff --git a/src/test/compile-fail/call-method-using-module-syntax.rs b/src/test/compile-fail/call-method-using-module-syntax.rs new file mode 100644 index 0000000000000..3a32da23599b1 --- /dev/null +++ b/src/test/compile-fail/call-method-using-module-syntax.rs @@ -0,0 +1,16 @@ +struct T; + +trait Test { + fn hello() -> uint; +} + +impl Test for T { + fn hello() { 5 } +} + +fn main() { + T::hello(); + //~^ ERROR unresolved name + //~^^ ERROR use of undeclared module `T` + //~^^^ ERROR unresolved name `T::hello` +}