Change self in an import list use foo::{self, ...} to only import a module or enum foo.

This commit is contained in:
Jeffrey Seyfried 2016-12-12 03:35:48 +00:00
parent aee21e2594
commit 235a7a743c
4 changed files with 45 additions and 12 deletions

View file

@ -18,7 +18,5 @@ extern crate lint_stability;
use lint_stability::{unstable, deprecated}; //~ ERROR use of unstable library feature 'test_feature'
use lint_stability::unstable::{self as u}; //~ ERROR use of unstable library feature 'test_feature'
fn main() {
}

View file

@ -0,0 +1,31 @@
// Copyright 2016 The Rust Project Developers. See the COPYRIGHT
// file at the top-level directory of this distribution and at
// http://rust-lang.org/COPYRIGHT.
//
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
// option. This file may not be copied, modified, or distributed
// except according to those terms.
// Test that `fn foo::bar::{self}` only imports `bar` in the type namespace.
mod foo {
pub fn f() { }
}
use foo::f::{self};
//~^ ERROR unresolved import
//~| NOTE no `f` in `foo`
mod bar {
pub fn baz() {}
pub mod baz {}
}
use bar::baz::{self};
fn main() {
baz();
//~^ ERROR unresolved name `baz`
//~| NOTE unresolved name
//~| HELP module `baz` cannot be used as an expression
}