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

Rollup of 14 pull requests #46922

Merged
merged 38 commits into from
Dec 22, 2017
Merged

Rollup of 14 pull requests #46922

merged 38 commits into from
Dec 22, 2017

Conversation

frewsxcv and others added 30 commits December 15, 2017 09:11
If rustc is invoked on a file that would be overwritten by the
compilation, the compilation now fails, to avoid accidental loss. This
resolves rust-lang#13019.
The visitor for walking function bodies did not previously properly
handle error-cases for function calls. These are now ignored,
preventing the panic.
We can simply use generic intrinsics since cd1848a

Also, minimize unsafe blocks.

Signed-off-by: NODA, Kai <nodakai@gmail.com>
This commit fixes some nondeterminism in compilation when using multiple codegen
units. The algorithm for splitting codegen units currently takes the
otherwise-would-be-for-incremental partitioning and then continuously merges the
two smallest codegen units until the desired number of codegen units are
reached.

We want to be sure to merge the same codegen units each time a compilation is
run but there's some subtle reorderings amongst all the items which was causing
this step to be slightly buggy. Notably this step involves sorting codegen units
by size, but if two codegen units had the same size they would appear in
different locations in the list each time.

This commit fixes this issue by sorting codegen units by name before doing the
loop to merge the two smallest. This means that we've got a deterministic
order going in and since we're using a stable sort this should mean that we're
always now getting a deterministic merging of codegen units.

Closes rust-lang#46846
Replace libtest/lib.rs:FnBox with std::boxed::FnBox.

Fixes rust-lang#41810.
Fix ICE when calling non-functions within closures

The visitor for walking function bodies did not previously properly
handle error-cases for function calls. These are now ignored,
preventing the panic. This fixes rust-lang#46771.
 rustc: do not raise the alignment of optimized enums to the niche's alignment.

This is the improved fix for rust-lang#46769 that does not increase the size of any types (see also rust-lang#46808).
Prevent rustc overwriting input files

If rustc is invoked on a file that would be overwritten by the
compilation, the compilation now fails, to avoid accidental loss. This
resolves rust-lang#13019. Kudos to @estebank, whose patch I finished off.
…ichton

libcore/num/mod.rs: simplify the int_impl! macro.

We can simply use generic intrinsics since cd1848a by @alexcrichton

Also, minimize unsafe blocks.
… r=QuietMisdreavus

Escape more items in the sidebar when needed

Fixes rust-lang#46724.

r? @QuietMisdreavus
… r=estebank

tweaks and fixes for doc(include)

This PR makes a handful of changes around `#[doc(include="file.md")]` (rust-lang#44732):

* Turns errors when loading files into full errors. This matches the original RFC text.
* Makes the `missing_docs` lint check for `#[doc(include="file.md")]` as well as regular `#[doc="text"]` attributes.
* Loads files included by `#[doc(include="file.md")]` into dep-info, mirroring the behavior of `include_str!()` and friends.
* Adds or modifies tests to check for all of these.
…r=steveklabnik

A few small improvements to the contributing docs

r? @steveklabnik
…, r=steveklabnik

docs: do not call integer overflows as underflows

In the API docs, integer overflow is sometimes called underflow. Underflow is really when the magnitude of a floating-point number is too small so the number underflows to subnormal or zero. With integers it is always overflow, even if the expected result is less than the minimum number that can be represented.
@rust-highfive
Copy link
Collaborator

r? @eddyb

(rust_highfive has picked a reviewer for you, use r? to override)

@kennytm
Copy link
Member Author

kennytm commented Dec 21, 2017

@bors r+ p=15

@bors
Copy link
Contributor

bors commented Dec 21, 2017

📌 Commit ed19a8c has been approved by kennytm

@kennytm kennytm added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Dec 21, 2017
@bors
Copy link
Contributor

bors commented Dec 21, 2017

⌛ Testing commit ed19a8c1c911c047ab21287c19753a3f565633be with merge 1f6d130e9c607899ddcc0eec47899bd99eb94732...

@bors
Copy link
Contributor

bors commented Dec 21, 2017

💔 Test failed - status-travis

…lwoerister

rustc: Sort CGUs before merging

This commit fixes some nondeterminism in compilation when using multiple codegen
units. The algorithm for splitting codegen units currently takes the
otherwise-would-be-for-incremental partitioning and then continuously merges the
two smallest codegen units until the desired number of codegen units are
reached.

We want to be sure to merge the same codegen units each time a compilation is
run but there's some subtle reorderings amongst all the items which was causing
this step to be slightly buggy. Notably this step involves sorting codegen units
by size, but if two codegen units had the same size they would appear in
different locations in the list each time.

This commit fixes this issue by sorting codegen units by name before doing the
loop to merge the two smallest. This means that we've got a deterministic
order going in and since we're using a stable sort this should mean that we're
always now getting a deterministic merging of codegen units.

Closes rust-lang#46846
@kennytm
Copy link
Member Author

kennytm commented Dec 21, 2017

@bors r+

Removed #46916.

@bors
Copy link
Contributor

bors commented Dec 21, 2017

📌 Commit 0787ad9 has been approved by kennytm

@kennytm kennytm changed the title Rollup of 15 pull requests Rollup of 14 pull requests Dec 21, 2017
@bors
Copy link
Contributor

bors commented Dec 21, 2017

⌛ Testing commit 0787ad9 with merge ba27415...

bors added a commit that referenced this pull request Dec 21, 2017
Rollup of 14 pull requests

- Successful merges: #46636, #46780, #46784, #46809, #46814, #46820, #46839, #46847, #46858, #46878, #46884, #46890, #46898, #46918
- Failed merges:
@bors
Copy link
Contributor

bors commented Dec 22, 2017

☀️ Test successful - status-appveyor, status-travis
Approved by: kennytm
Pushing ba27415 to master...

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.