rustc: Fix enum variant privacy across crates
The code in resolve erroneously assumed that private enums weren't visited, so the logic was adjusted to check to see if the enum definition itself was public. Closes #11680
This commit is contained in:
parent
cf6857b9e9
commit
49efab8ac9
3 changed files with 48 additions and 6 deletions
19
src/test/auxiliary/issue-11680.rs
Normal file
19
src/test/auxiliary/issue-11680.rs
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
// Copyright 2014 The Rust Project Developers. See the COPYRIGHT
|
||||
// file at the top-level directory of this distribution and at
|
||||
// http://rust-lang.org/COPYRIGHT.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
enum Foo {
|
||||
Bar(int)
|
||||
}
|
||||
|
||||
pub mod test {
|
||||
enum Foo {
|
||||
Bar(int)
|
||||
}
|
||||
}
|
||||
21
src/test/compile-fail/issue-11680.rs
Normal file
21
src/test/compile-fail/issue-11680.rs
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
// Copyright 2014 The Rust Project Developers. See the COPYRIGHT
|
||||
// file at the top-level directory of this distribution and at
|
||||
// http://rust-lang.org/COPYRIGHT.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// aux-build:issue-11680.rs
|
||||
|
||||
extern crate other = "issue-11680";
|
||||
|
||||
fn main() {
|
||||
let _b = other::Bar(1);
|
||||
//~^ ERROR: variant `Bar` is private
|
||||
|
||||
let _b = other::test::Bar(1);
|
||||
//~^ ERROR: variant `Bar` is private
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue