Skip to content

__rust_alloc can no longer be used to provide a custom allocator #139265

Closed
@anforowicz

Description

@anforowicz
Contributor

As discussed in #127173 (comment) Chromium’s update of the Rust toolchain is blocked, because of how __rust_alloc and similar symbols are expected to be mangled going forward. I have opened rust-lang/compiler-team#858 for the long-term, officially-supported solution for __rust_alloc, but in the meantime @bjorn3 suggested authoring and merging a temporary exception for mangling of the allocator symbols.

IIUC Chromium currently depends on the spelling of the following symbols:

  • __rust_no_alloc_shim_is_unstable
  • __rust_alloc
  • __rust_dealloc
  • __rust_realloc
  • __rust_alloc_zeroed
  • __rust_alloc_error_handler
  • __rust_alloc_error_handler_should_panic

/cc @chbaker0, @alanzhao1, @zmodem from Chromium

Activity

added
I-prioritizeIssue: Indicates that prioritization has been requested for this issue.
needs-triageThis issue may need triage. Remove it if it has been sufficiently triaged.
on Apr 2, 2025
chbaker0

chbaker0 commented on Apr 2, 2025

@chbaker0
Contributor

Seems like #86844 is related

apiraino

apiraino commented on Apr 3, 2025

@apiraino
Contributor

Assigning priority (discussion on Zulip).

@rustbot label -I-prioritize +P-critical

added and removed
I-prioritizeIssue: Indicates that prioritization has been requested for this issue.
on Apr 3, 2025
anforowicz

anforowicz commented on Apr 8, 2025

@anforowicz
ContributorAuthor

IIUC Chromium has been able to successfully apply a workaround that has been discussed in https://rust-lang.zulipchat.com/#narrow/channel/233931-t-compiler.2Fmajor-changes/topic/.60-Zemit-code-for-final-artifact-to-link.60.20.E2.80.A6.20compiler-team.23858/with/510973829. So this issue can probably closed at this point.

added
T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.
A-allocatorsArea: Custom and system allocators
and removed
needs-triageThis issue may need triage. Remove it if it has been sufficiently triaged.
on Apr 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-allocatorsArea: Custom and system allocatorsC-bugCategory: This is a bug.P-criticalCritical priorityT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @apiraino@chbaker0@anforowicz@jieyouxu@rustbot

        Issue actions

          `__rust_alloc` can no longer be used to provide a custom allocator · Issue #139265 · rust-lang/rust