diff options
| author | bors <bors@rust-lang.org> | 2016-03-03 02:21:28 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2016-03-03 02:21:28 +0000 |
| commit | 7cee8b9ffb6a2dac7e2f729988c2324e2f8ac10f (patch) | |
| tree | 0854aec9954b6d1692ff43d9e879abecc3942100 /src/libstd/sys/unix/stack_overflow.rs | |
| parent | 7b0b80ae21a195a5dba91d557f94a96136c27eaf (diff) | |
| parent | e67590b0821c8985a02b699471d85be6d2137bff (diff) | |
| download | rust-7cee8b9ffb6a2dac7e2f729988c2324e2f8ac10f.tar.gz rust-7cee8b9ffb6a2dac7e2f729988c2324e2f8ac10f.zip | |
Auto merge of #31824 - jseyfried:privacy_in_resolve, r=nikomatsakis
This PR privacy checks paths as they are resolved instead of in `librustc_privacy` (fixes #12334 and fixes #31779). This removes the need for the `LastPrivate` system introduced in PR #9735, the limitations of which cause #31779.
This PR also reports privacy violations in paths to intra- and inter-crate items the same way -- it always reports the first inaccessible segment of the path.
Since it fixes #31779, this is a [breaking-change]. For example, the following code would break:
```rust
mod foo {
pub use foo::bar::S;
mod bar { // `bar` should be private to `foo`
pub struct S;
}
}
impl foo::S {
fn f() {}
}
fn main() {
foo::bar::S::f(); // This is now a privacy error
}
```
r? @alexcrichton
Diffstat (limited to 'src/libstd/sys/unix/stack_overflow.rs')
0 files changed, 0 insertions, 0 deletions
