Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Regression in interaction between 'use' statements, crates, and 'pub use'. #32106

Closed
brson opened this issue Mar 7, 2016 · 3 comments
Closed
Labels
A-resolve Area: Name/path resolution done by `rustc_resolve` specifically regression-from-stable-to-nightly Performance or correctness regression from stable to nightly.

Comments

@brson
Copy link
Contributor

brson commented Mar 7, 2016

This compiles on stable but not on nightly:

extern crate std;

pub use a::*;
pub use b::*;

pub mod a {
    use std;
}

pub mod b {
    use std;
}

fn main() { }

Here's the error:

<anon>:9:9: 9:12 error: unresolved import [E0432]
<anon>:9     use std;
                 ^~~
<anon>:9:9: 9:12 help: see the detailed explanation for E0432
<anon>:5:9: 5:12 error: unresolved import [E0432]
<anon>:5     use std;
                 ^~~
<anon>:5:9: 5:12 help: see the detailed explanation for E0432
error: aborting due to 2 previous errors
playpen: application terminated with error code 101
@brson brson added A-resolve Area: Name/path resolution done by `rustc_resolve` specifically regression-from-stable-to-nightly Performance or correctness regression from stable to nightly. labels Mar 7, 2016
@alexcrichton
Copy link
Member

Might be a dupe of #32089 which is fixed in #32097, but not sure?

cc @jseyfried

@jseyfried
Copy link
Contributor

Yeah, this is a dupe of #32089.

This actually doesn't compile on stable since the explicit extern crate std; conflicts with the implicit, injected version. It does compile on stable without the explicit extern crate std; or with #![no_std].

@alexcrichton
Copy link
Member

Ah ok, closing as a dupe, thanks @jseyfried!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-resolve Area: Name/path resolution done by `rustc_resolve` specifically regression-from-stable-to-nightly Performance or correctness regression from stable to nightly.
Projects
None yet
Development

No branches or pull requests

3 participants