Skip to content

Rollup of PRs in the queue; Monday #22940

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

Merged
merged 27 commits into from
Mar 2, 2015
Merged

Rollup of PRs in the queue; Monday #22940

merged 27 commits into from
Mar 2, 2015

Conversation

Manishearth
Copy link
Member

No description provided.

Ms2ger and others added 24 commits February 28, 2015 12:17
Traits can have associated types and not just methods. This
clarification reflects the the type of the input the method accepts.

[breaking-change]
Count recursion across phantom data separately from all recursion,
and treat `Box<T>` just as if it were carrying `PhantomData<T>`.

(Regression tests are in followup commit.)

The practical effect of this is just to increment the `xref_depth`
counter, the same way that `Vec` and other types carrying
`PhantomData` do.
The logic for the argument translation was duplicated here.
this is the same problem as openbsd (rust-lang#22792).

without the patch, liblibc don't build.
…ait objects

For method calls through trait objects, we currently generate the llvm
function argument attributes using the non-opaque method signature that
still has the trait object fat pointer for the self pointer. This leads
to attributes that are plain wrong, e.g. noalias. As we don't know
anything about the concrete type of the underlying object, we must
replace the self argument with an opaque i8 pointer before applying the
attributes.
 Check for unbounded recursion during dropck.

Such recursion can be introduced by the erroneous use of non-regular types (aka types employing polymorphic recursion), which Rust does not support.

Fix rust-lang#22443
 Traits can have associated types and not just methods. This
clarification reflects the the type of the input the method accepts.

[breaking-change]
 The logic for the argument translation was duplicated here.
…hton

 this is the same problem as openbsd (rust-lang#22792).
without the patch, liblibc don't build.

@mneumann please comment.
I have encountered this problem while building some rust libs with `target=x86_64-unknown-dragonfly` (while working on rust-lang#22794)
 ... objects

For method calls through trait objects, we currently generate the llvm
function argument attributes using the non-opaque method signature that
still has the trait object fat pointer for the self pointer. This leads
to attributes that are plain wrong, e.g. noalias. As we don't know
anything about the concrete type of the underlying object, we must
replace the self argument with an opaque i8 pointer before applying the
attributes.
@Manishearth
Copy link
Member Author

@bors: p=20 r+

@bors
Copy link
Collaborator

bors commented Mar 1, 2015

@bors r=Manishearth b79a788

@Manishearth
Copy link
Member Author

@bors: r+

@bors
Copy link
Collaborator

bors commented Mar 1, 2015

@bors r=Manishearth c84e3a1

@bors
Copy link
Collaborator

bors commented Mar 1, 2015

⌛ Testing commit c84e3a1 with merge 3161646...

@bors
Copy link
Collaborator

bors commented Mar 2, 2015

💔 Test failed - auto-mac-64-nopt-t

@Manishearth
Copy link
Member Author

----- /Users/rustbuild/src/rust-buildbot/slave/auto-mac-64-nopt-t/build/src/test/run-make/error-found-staticlib-instead-crate/ --------------------
------ stdout ---------------------------------------------
DYLD_LIBRARY_PATH="/Users/rustbuild/src/rust-buildbot/slave/auto-mac-64-nopt-t/build/obj/x86_64-apple-darwin/test/run-make/error-found-staticlib-instead-crate:/Users/rustbuild/src/rust-buildbot/slave/auto-mac-64-nopt-t/build/obj/x86_64-apple-darwin/stage2/lib:" /Users/rustbuild/src/rust-buildbot/slave/auto-mac-64-nopt-t/build/obj/x86_64-apple-darwin/stage2/bin/rustc --out-dir /Users/rustbuild/src/rust-buildbot/slave/auto-mac-64-nopt-t/build/obj/x86_64-apple-darwin/test/run-make/error-found-staticlib-instead-crate -L /Users/rustbuild/src/rust-buildbot/slave/auto-mac-64-nopt-t/build/obj/x86_64-apple-darwin/test/run-make/error-found-staticlib-instead-crate foo.rs --crate-type staticlib

------ stderr ---------------------------------------------
error: "ar" '"x"' '"/Users/rustbuild/src/rust-buildbot/slave/auto-mac-64-nopt-t/build/obj/x86_64-apple-darwin/stage2/lib/rustlib/x86_64-apple-darwin/lib/libstd-4e7c5e5c.rlib"' failed with: exit code: 1
note: stdout ---

note: stderr ---
ar: rust.metadata.bin: No space left on device

error: aborting due to previous error
make[1]: *** [all] Error 101

 Been breaking tests lately. Somehow nondeterministic?
@Manishearth
Copy link
Member Author

@bors: retry force

@Manishearth
Copy link
Member Author

@bors: r+

@bors
Copy link
Collaborator

bors commented Mar 2, 2015

@bors r=Manishearth 6988157

@Manishearth
Copy link
Member Author

@bors: force

@bors
Copy link
Collaborator

bors commented Mar 2, 2015

⌛ Testing commit 6988157 with merge 4b3b02f...

bors added a commit that referenced this pull request Mar 2, 2015
@bors
Copy link
Collaborator

bors commented Mar 2, 2015

💔 Test failed - auto-linux-32-nopt-t

@Manishearth
Copy link
Member Author

@bors retry

@Manishearth
Copy link
Member Author

@bors: force

@bors
Copy link
Collaborator

bors commented Mar 2, 2015

⚡ Previous build results are reusable. Rebuilding only auto-linux-32-nopt-t, auto-linux-32-opt, auto-win-32-opt, auto-win-64-nopt-t...

@bors bors merged commit 6988157 into rust-lang:master Mar 2, 2015
@Manishearth Manishearth deleted the rollup branch March 2, 2015 07:44
@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
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants