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

Hide a few more standard library symbols #39252

Merged
merged 2 commits into from
Jan 27, 2017

Conversation

alexcrichton
Copy link
Member

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.

@alexcrichton
Copy link
Member Author

cc @michaelwoerister

@michaelwoerister
Copy link
Member

Looks good to me!

@nrc
Copy link
Member

nrc commented Jan 24, 2017

@bors: r+

@bors
Copy link
Contributor

bors commented Jan 24, 2017

📌 Commit 8abbe6d has been approved by nrc

@bors
Copy link
Contributor

bors commented Jan 24, 2017

⌛ Testing commit 8abbe6d with merge b19c8e1...

@bors
Copy link
Contributor

bors commented Jan 24, 2017

💔 Test failed - status-appveyor

@alexcrichton
Copy link
Member Author

@bors: r=nrc

@bors
Copy link
Contributor

bors commented Jan 24, 2017

📌 Commit 5934a13 has been approved by nrc

@bors
Copy link
Contributor

bors commented Jan 25, 2017

⌛ Testing commit 5934a13 with merge 018087c...

@bors
Copy link
Contributor

bors commented Jan 25, 2017

💔 Test failed - status-travis

@alexcrichton
Copy link
Member Author

@bors: r=nrc

@bors
Copy link
Contributor

bors commented Jan 26, 2017

📌 Commit e80b7ba has been approved by nrc

@bors
Copy link
Contributor

bors commented Jan 27, 2017

⌛ Testing commit e80b7ba with merge 1057387...

@bors
Copy link
Contributor

bors commented Jan 27, 2017

💔 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
@alexcrichton
Copy link
Member Author

@bors: r=nrc

@bors
Copy link
Contributor

bors commented Jan 27, 2017

📌 Commit 3d6f263 has been approved by nrc

@bors
Copy link
Contributor

bors commented Jan 27, 2017

⌛ Testing commit 3d6f263 with merge 8367fb7...

bors added a commit that referenced this pull request Jan 27, 2017
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.
@bors
Copy link
Contributor

bors commented Jan 27, 2017

☀️ Test successful - status-appveyor, status-travis
Approved by: nrc
Pushing 8367fb7 to master...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
relnotes Marks issues that should be documented in the release notes of the next release.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants