diff options
Diffstat (limited to 'tests/ui/imports/glob-resolve1.rs')
-rw-r--r-- | tests/ui/imports/glob-resolve1.rs | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/ui/imports/glob-resolve1.rs b/tests/ui/imports/glob-resolve1.rs new file mode 100644 index 000000000..904b77117 --- /dev/null +++ b/tests/ui/imports/glob-resolve1.rs @@ -0,0 +1,39 @@ +// Make sure that globs only bring in public things. + +use bar::*; + +mod bar { + use self::fpriv as import; + fn fpriv() {} + extern "C" { + fn epriv(); + } + enum A { + A1, + } + pub enum B { + B1, + } + + struct C; + + type D = isize; +} + +fn foo<T>() {} + +fn main() { + fpriv(); //~ ERROR cannot find function `fpriv` in this scope + epriv(); //~ ERROR cannot find function `epriv` in this scope + B; //~ ERROR expected value, found enum `B` + C; //~ ERROR cannot find value `C` in this scope + import(); //~ ERROR: cannot find function `import` in this scope + + foo::<A>(); //~ ERROR: cannot find type `A` in this scope + foo::<C>(); //~ ERROR: cannot find type `C` in this scope + foo::<D>(); //~ ERROR: cannot find type `D` in this scope +} + +mod other { + pub fn import() {} +} |