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 6 pull requests #64366

Closed
wants to merge 14 commits into from

Conversation

@tmandry
Copy link
Contributor

commented Sep 10, 2019

Successful merges:

  • #64060 (Improve hygiene of alloc::format!)
  • #64072 (Replace file_stem by file_name in rustdoc markdown)
  • #64085 (Tweak unsatisfied HRTB errors)
  • #64188 (rustc: Allow the cdylib crate type with wasm32-wasi)
  • #64250 (save-analysis: Nest typeck tables when processing functions/methods)
  • #64349 (documentation for AtomicPtr CAS operations)

Failed merges:

r? @ghost

limira and others added 14 commits Sep 1, 2019
The wasm32-wasi target respects configuration around `crt-static` in
general, but is defaulted to being static. This interacted badly with
code which validated the `cdylib` crate type for `wasm32-wasi`,
erroneously saying that the `cdylib` crate type wasn't supported on
`wasm32-wasi` by default. This commit sets the appropriate flag in
`wasm32_wasi`'s target specification to indicate that the `cdylib` crate
type is supported regardless of `crt-static`

Closes #64187
Fixes an issue where we did not nest tables correctly when resolving
associated types in formal argument/return type positions
Performance shouldn't be impacted (see [1] for a perf run) and this
should allow us to catch more bugs, e.g. [2] and [3].

[1]: #64262
[2]: #64250
[3]: #57298
Improve hygiene of `alloc::format!`

`format` now uses `format_args` though a `__export` module, as described in #63687 (comment).

Fixes #63687
Replace file_stem by file_name in rustdoc markdown

Before this PR, a file name like `some.file.md` will be output to a file named `some.html` with is not correct because the expected output file must be `some.file.html`
Tweak unsatisfied HRTB errors

r? @oli-obk

Close #35180.
rustc: Allow the cdylib crate type with wasm32-wasi

The wasm32-wasi target respects configuration around `crt-static` in
general, but is defaulted to being static. This interacted badly with
code which validated the `cdylib` crate type for `wasm32-wasi`,
erroneously saying that the `cdylib` crate type wasn't supported on
`wasm32-wasi` by default. This commit sets the appropriate flag in
`wasm32_wasi`'s target specification to indicate that the `cdylib` crate
type is supported regardless of `crt-static`

Closes #64187
save-analysis: Nest typeck tables when processing functions/methods

Fixes an issue where we did not nest tables correctly when resolving
associated types in formal argument/return type positions.

This was the minimized reproduction case that I tested the fix on:
```rust
pub trait Trait {
    type Assoc;
}

pub struct A;

pub fn func() {
    fn _inner1<U: Trait>(_: U::Assoc) {}
    fn _inner2<U: Trait>() -> U::Assoc { unimplemented!() }

    impl A {
        fn _inner1<U: Trait>(self, _: U::Assoc) {}
        fn _inner2<U: Trait>(self) -> U::Assoc { unimplemented!() }
    }
}
```
using `debug_assertions`-enabled rustc and by additionally passing `-Zsave-analysis`.

Unfortunately the original assertion fired is a *debug* one and from what I can tell we don't run the tests with these on, so I'm not adding a test here. If I missed it and there is a way to run tests with these on, I'd love to add a test case for this.

Closes #63663
Closes #50328
Closes #43982
…ertj

documentation for AtomicPtr CAS operations

The examples in the documentation for AtomicPtr CAS operations only show code that does *not* perform the CAS operation. I suggest to change them so that they actually do exchange the AtomicPtr's value.
@tmandry

This comment has been minimized.

Copy link
Contributor Author

commented Sep 10, 2019

@bors r+ p=6 rollup=never

@bors

This comment has been minimized.

Copy link
Contributor

commented Sep 10, 2019

📌 Commit 02fd8f4 has been approved by tmandry

@bors

This comment has been minimized.

Copy link
Contributor

commented Sep 10, 2019

⌛️ Testing commit 02fd8f4 with merge 8830342...

bors added a commit that referenced this pull request Sep 10, 2019
Rollup of 6 pull requests

Successful merges:

 - #64060 (Improve hygiene of `alloc::format!`)
 - #64072 (Replace file_stem by file_name in rustdoc markdown)
 - #64085 (Tweak unsatisfied HRTB errors)
 - #64188 (rustc: Allow the cdylib crate type with wasm32-wasi)
 - #64250 (save-analysis: Nest typeck tables when processing functions/methods)
 - #64349 (documentation for AtomicPtr CAS operations)

Failed merges:

r? @ghost
@bors

This comment has been minimized.

Copy link
Contributor

commented Sep 10, 2019

💔 Test failed - checks-azure

@rust-highfive

This comment has been minimized.

Copy link
Collaborator

commented Sep 10, 2019

The job dist-armhf-linux of your PR failed (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2019-09-10T22:14:59.0855350Z [RUSTC-TIMING] build_script_build test:false 2.437
2019-09-10T22:14:59.0894919Z    Compiling unwind v0.0.0 (/checkout/src/libunwind)
2019-09-10T22:15:00.3320961Z [RUSTC-TIMING] build_script_build test:false 1.238
2019-09-10T22:15:00.3357105Z    Compiling backtrace-sys v0.1.30
2019-09-10T22:15:00.7478061Z error: internal compiler error: src/librustc/ty/context.rs:211: node type <I>::Item (hir_id=HirId { owner: DefIndex(4366), local_id: 4 }) with HirId::owner DefId(0:4366 ~ core[db80]::iter[0]::adapters[0]::{{impl}}[25]::try_fold[0]::nth[0]::{{opaque}}[0]) cannot be placed in TypeckTables with local_id_root DefId(0:4364 ~ core[db80]::iter[0]::adapters[0]::{{impl}}[25]::try_fold[0]::nth[0])
2019-09-10T22:15:00.7480644Z thread 'rustc' panicked at 'Box<Any>', src/librustc_errors/lib.rs:643:9
2019-09-10T22:15:00.7484197Z note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
2019-09-10T22:15:00.8680626Z error: aborting due to previous error
2019-09-10T22:15:00.8681221Z 
2019-09-10T22:15:00.8681221Z 
2019-09-10T22:15:00.9411647Z 
2019-09-10T22:15:00.9420202Z note: the compiler unexpectedly panicked. this is a bug.
2019-09-10T22:15:00.9425456Z 
2019-09-10T22:15:00.9433004Z note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
2019-09-10T22:15:00.9440948Z 
2019-09-10T22:15:00.9442321Z note: rustc 1.39.0-nightly (88303427b 2019-09-10) running on x86_64-unknown-linux-gnu
2019-09-10T22:15:00.9443828Z 
2019-09-10T22:15:00.9490839Z note: compiler flags: -Z binary-dep-depinfo -Z external-macro-backtrace -Z save-analysis -Z force-unstable-if-unmarked -C opt-level=2 -C debuginfo=1 -C prefer-dynamic -C linker=arm-unknown-linux-gnueabihf-gcc -C debug-assertions=n -C codegen-units=1 -C link-args=-Wl,-rpath,$ORIGIN/../lib --crate-type lib
2019-09-10T22:15:00.9491370Z note: some of the compiler flags provided by cargo are hidden
2019-09-10T22:15:00.9491421Z 
2019-09-10T22:15:00.9512956Z [RUSTC-TIMING] core test:false 13.747
2019-09-10T22:15:00.9519105Z error: Could not compile `core`.
---
2019-09-10T22:15:01.3577379Z == clock drift check ==
2019-09-10T22:15:01.3593394Z   local time: Tue Sep 10 22:15:01 UTC 2019
2019-09-10T22:15:01.4512316Z   network time: Tue, 10 Sep 2019 22:15:01 GMT
2019-09-10T22:15:01.4514044Z == end clock drift check ==
2019-09-10T22:15:06.0585439Z ##[error]Bash exited with code '1'.
2019-09-10T22:15:06.0637708Z ##[section]Starting: Upload CPU usage statistics
2019-09-10T22:15:06.0641207Z ==============================================================================
2019-09-10T22:15:06.0641317Z Task         : Bash
2019-09-10T22:15:06.0641388Z Description  : Run a Bash script on macOS, Linux, or Windows

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
9 participants
You can’t perform that action at this time.