rust/src/librustc/metadata
Patrick Walton 7f928d150e librustc: Forbid external crates, imports, and/or items from being
declared with the same name in the same scope.

This breaks several common patterns. First are unused imports:

    use foo::bar;
    use baz::bar;

Change this code to the following:

    use baz::bar;

Second, this patch breaks globs that import names that are shadowed by
subsequent imports. For example:

    use foo::*; // including `bar`
    use baz::bar;

Change this code to remove the glob:

    use foo::{boo, quux};
    use baz::bar;

Or qualify all uses of `bar`:

    use foo::{boo, quux};
    use baz;

    ... baz::bar ...

Finally, this patch breaks code that, at top level, explicitly imports
`std` and doesn't disable the prelude.

    extern crate std;

Because the prelude imports `std` implicitly, there is no need to
explicitly import it; just remove such directives.

The old behavior can be opted into via the `import_shadowing` feature
gate. Use of this feature gate is discouraged.

This implements RFC #116.

Closes #16464.

[breaking-change]
2014-08-16 19:32:25 -07:00
..
common.rs librustc: Stop assuming that implementations and traits only contain 2014-08-14 11:40:22 -07:00
creader.rs Properly canonicalize crate paths specified via --extern 2014-08-15 14:40:09 +02:00
csearch.rs librustc: Stop assuming that implementations and traits only contain 2014-08-14 11:40:22 -07:00
cstore.rs Strip empty strings from link args 2014-07-07 10:13:22 -07:00
decoder.rs librustc: Stop assuming that implementations and traits only contain 2014-08-14 11:40:22 -07:00
encoder.rs librustc: Forbid external crates, imports, and/or items from being 2014-08-16 19:32:25 -07:00
filesearch.rs Rename functions in the CloneableVector trait 2014-07-17 16:35:48 +02:00
loader.rs auto merge of #16505 : dotdash/rust/extern_realpath, r=alexcrichton 2014-08-16 17:36:07 +00:00
mod.rs
tydecode.rs librustc: Tie up loose ends in unboxed closures. 2014-08-14 08:53:25 -07:00
tyencode.rs librustc: Tie up loose ends in unboxed closures. 2014-08-14 08:53:25 -07:00