-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
Hide a few more standard library symbols #39252
Conversation
940f06a
to
8abbe6d
Compare
Looks good to me! |
@bors: r+ |
📌 Commit 8abbe6d has been approved by |
⌛ Testing commit 8abbe6d with merge b19c8e1... |
💔 Test failed - status-appveyor |
8abbe6d
to
5934a13
Compare
@bors: r=nrc |
📌 Commit 5934a13 has been approved by |
⌛ Testing commit 5934a13 with merge 018087c... |
💔 Test failed - status-travis |
5934a13
to
e80b7ba
Compare
@bors: r=nrc |
📌 Commit e80b7ba has been approved by |
⌛ Testing commit e80b7ba with merge 1057387... |
💔 Test failed - status-travis |
This hides symbols from various unstable and implementation-detail crates of the standard library. Although typically transitive exported `pub extern` functions are exported from cdylibs, these crates aren't necessary as they're all implementation details. Closes rust-lang#34493
We don't want these symbols exported from the standard library, this is just an internal implementation detail of the standard library currently. Closes rust-lang#34984
e80b7ba
to
3d6f263
Compare
@bors: r=nrc |
📌 Commit 3d6f263 has been approved by |
Hide a few more standard library symbols These commits touch up some of the symbol visibility rules for some crates related to the standard library, notably: * Symbols that are `pub extern` and `#[no_mangle]` which are internal-to-rust ABI things are no longer at the `C` export level, but the `Rust` export level. This includes allocators, panic runtimes, and compiler builtins. * The libbacktrace library is now compiled with `-fvisibility=hidden` to ensure that we don't export those symbols.
☀️ Test successful - status-appveyor, status-travis |
These commits touch up some of the symbol visibility rules for some crates related to the standard library, notably:
pub extern
and#[no_mangle]
which are internal-to-rust ABI things are no longer at theC
export level, but theRust
export level. This includes allocators, panic runtimes, and compiler builtins.-fvisibility=hidden
to ensure that we don't export those symbols.