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

[beta] Rollup backports #54484

Merged
merged 3 commits into from
Sep 22, 2018
Merged

[beta] Rollup backports #54484

merged 3 commits into from
Sep 22, 2018

Conversation

pietroalbini
Copy link
Member

Merged and approved:

r? @ghost

Keruspe and others added 3 commits September 22, 2018 19:13
Let cargo handle that for us

Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
proc macro crates are essentially implemented as dynamic libraries using
a dlopen-based ABI. They are also Rust crates, so they have 2 worlds -
the "host" world in which they are defined, and the "target" world in
which they are used.

For all the "target" world knows, the proc macro crate might not even
be implemented in Rust, so leaks of details from the host to the target
must be avoided for correctness.

Because the "host" DefId space is different from the "target" DefId
space, any leak involving a DefId will have a nonsensical or
out-of-bounds DefKey, and will cause all sorts of crashes.

This PR fixes all leaks I have found in `decoder`. In particular, rust-lang#54059
was caused by host native libraries leaking into the target, which feels
like it might even be a correctness issue if it doesn't cause an ICE.

Fixes rust-lang#54059
@pietroalbini
Copy link
Member Author

@bors r+ p=10

@bors
Copy link
Contributor

bors commented Sep 22, 2018

📌 Commit ce782b9 has been approved by pietroalbini

@bors bors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Sep 22, 2018
@bors
Copy link
Contributor

bors commented Sep 22, 2018

⌛ Testing commit ce782b9 with merge 0ebb250...

bors added a commit that referenced this pull request Sep 22, 2018
[beta] Rollup backports

Merged and approved:

* #54323: rustbuild: drop color handling
* #54265: avoid leaking host details in proc macro metadata decoding

r? @ghost
@bors
Copy link
Contributor

bors commented Sep 22, 2018

☀️ Test successful - status-appveyor, status-travis
Approved by: pietroalbini
Pushing 0ebb250 to beta...

@bors bors merged commit ce782b9 into rust-lang:beta Sep 22, 2018
@pietroalbini pietroalbini deleted the beta-backports branch September 22, 2018 20:40
@Centril Centril added the rollup A PR which is a rollup label Oct 2, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants