-
Notifications
You must be signed in to change notification settings - Fork 13k
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
rust_begin_unwind
symbol doesn't have the right visibility
#52795
Comments
I believe this is fixed in #52993 |
alexcrichton
added a commit
to alexcrichton/rust
that referenced
this issue
Aug 7, 2018
This commit tweaks the linker-level visibility of some lang items that rustc uses and defines. Notably this means that `#[panic_implementation]` and `#[alloc_error_handler]` functions are never marked as `internal`. It's up to the linker to eliminate these, not rustc. Additionally `#[global_allocator]` generated symbols are no longer forced to `Default` visibility (fully exported), but rather they're relaxed to `Hidden` visibility). This symbols are *not* needed across DLL boundaries, only as a local implementation detail of the compiler-injected allocator symbols, so `Hidden` should suffice. Closes rust-lang#51342 Closes rust-lang#52795
bors
added a commit
that referenced
this issue
Aug 8, 2018
rustc: Tweak visibility of some lang items This commit tweaks the linker-level visibility of some lang items that rustc uses and defines. Notably this means that `#[panic_implementation]` and `#[alloc_error_handler]` functions are never marked as `internal`. It's up to the linker to eliminate these, not rustc. Additionally `#[global_allocator]` generated symbols are no longer forced to `Default` visibility (fully exported), but rather they're relaxed to `Hidden` visibility). This symbols are *not* needed across DLL boundaries, only as a local implementation detail of the compiler-injected allocator symbols, so `Hidden` should suffice. Closes #51342 Closes #52795
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
when emitted from a bin crate.
STR
$ cat foo.rs
rust_begin_unwind
being an internal / private symbol (t
) causes linker errors of the form "undefined reference torust_begin_unwind
".Meta
The text was updated successfully, but these errors were encountered: