diff options
| author | bors <bors@rust-lang.org> | 2015-08-10 14:40:07 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2015-08-10 14:40:07 +0000 |
| commit | 1db1417736fa9d682fb0c3e36d37c123c2944a17 (patch) | |
| tree | 87e29f259f0cbf778dd2dcd32dbc33cbd1212c74 /src/rustllvm/RustWrapper.cpp | |
| parent | a136d4c95f2d927f327713d432421c47ee90df77 (diff) | |
| parent | 5847ea76195d9cbe9d066418bdf44ba2a0398649 (diff) | |
| download | rust-1db1417736fa9d682fb0c3e36d37c123c2944a17.tar.gz rust-1db1417736fa9d682fb0c3e36d37c123c2944a17.zip | |
Auto merge of #27547 - vberger:more_perseverant_resolve, r=nrc
As noted in my previous PR #27439 , the import resolution algorithm has two cases where it bails out:
- The algorithm will delay an import if the module containing the target of the import still has unresolved glob imports
- The algorithm will delay a glob import of the target module still has unresolved imports
This PR alters the behaviour to only bail out when the above described unresolved imports are `pub`, as non-pub imports don't affect the result anyway.
It is still possible to fail the algorithm with examples like
```rust
pub mod a {
pub use b::*;
}
pub mod b {
pub use a::*;
}
```
but such configurations cannot be resolved in any meaningful way, as these are cyclic imports.
Closes #4865
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
0 files changed, 0 insertions, 0 deletions
