]> git.lizzy.rs Git - rust.git/log
rust.git
19 months agoEnforce Tuple trait on Fn traits
Michael Goulet [Sat, 30 Jul 2022 01:53:53 +0000 (01:53 +0000)]
Enforce Tuple trait on Fn traits

19 months agoAuto merge of #103831 - chenyukang:yukang/fix-103751-ice, r=nagisa
bors [Sat, 5 Nov 2022 13:48:30 +0000 (13:48 +0000)]
Auto merge of #103831 - chenyukang:yukang/fix-103751-ice, r=nagisa

Fix capacity overflow issue during transmutability check

Fixes #103751

19 months agoAuto merge of #103691 - michaelwoerister:consistent-slice-and-str-cpp-like-debuginfo...
bors [Sat, 5 Nov 2022 11:07:50 +0000 (11:07 +0000)]
Auto merge of #103691 - michaelwoerister:consistent-slice-and-str-cpp-like-debuginfo-names, r=wesleywiser

[debuginfo] Make cpp-like debuginfo type names for slices and str consistent.

Before this PR, the compiler would emit the debuginfo name `slice$<T>` for all kinds of slices, regardless of whether they are behind a reference or not and regardless of the kind of reference. As a consequence, the types `Foo<&[T]>`, `Foo<[T]>`, and `Foo<&mut [T]>` would end up with the same type name `Foo<slice$<T> >` in debuginfo, making it impossible to disambiguate between them by name. Similarly, `&str` would get the name `str` in debuginfo, so the debuginfo name for `Foo<str>` and `Foo<&str>` would be the same. In contrast, `*const [bool]` and `*mut [bool]` would be `ptr_const$<slice$<bool> >` and `ptr_mut$<slice$<bool> >`, i.e. the encoding does not lose information about the type.

This PR removes all special handling for slices and `str`. The types `&[bool]`, `&mut [bool]`, and `&str` thus get the names `ref$<slice2$<bool> >`, `ref_mut$<slice2$<bool> >`, and `ref$<str$>` respectively -- as one would expect.

The new special name for slices is `slice2$` to differentiate it from the previous name `slice$`, which has different semantics. The same is true for `str` and `str$`. This kind of versioning already has a precedent with the case of `enum$` and `enum2$` and hopefully will make it easier to transition existing consumers of these names.

cc `@rust-lang/wg-debugging` `@vadimcn`

r? `@wesleywiser`

UPDATE: Here is a table to clarify the changes

| Rust type | DWARF name | C++-like name (before) | C++-like name (after) |
|-----------|------------|------------------------|------------------------|
| `[T]`        | `[T]`        | `slice$<T>`              | `slice2$<T>`           |
| `&[T]`       | `&[T]`       | `slice$<T>`              | `ref$<slice2$<T> >`    |
| `&mut [T]`   | `&mut [T]`   | `slice$<T>`              | `ref_mut$<slice2$<T> >`|
| `str`        | `str`        | `str`                    | `str$`           |
| `&str`       | `&str`       | `str`                    | `ref$<str$>`    |
| `&mut str`   | `&mut str`   | `str`                    | `ref_mut$<str$>`|
| `*const [T]` | `*const [T]` | `ptr_const$<slice$<T> >` | `ptr_const$<slice2$<T> >` |
| `*mut [T]`   | `*mut [T]`   | `ptr_mut$<slice$<T> >`   | `ptr_mut$<slice2$<T> >` |

As you can see, before the PR many types would end up with the same name, making it impossible to distinguish between them in NatVis or other places where types are matched or looked up by name. The DWARF version of names is not changed.

19 months agoAuto merge of #103998 - Dylan-DPC:rollup-2nbmtc9, r=Dylan-DPC
bors [Sat, 5 Nov 2022 07:32:09 +0000 (07:32 +0000)]
Auto merge of #103998 - Dylan-DPC:rollup-2nbmtc9, r=Dylan-DPC

Rollup of 6 pull requests

Successful merges:

 - #103621 (Correctly resolve Inherent Associated Types)
 - #103660 (improve `filesearch::get_or_default_sysroot`)
 - #103866 (Remove some return-type diagnostic booleans from `FnCtxt`)
 - #103867 (Remove `has_errors` from `FnCtxt`)
 - #103994 (Specify that `break` cannot be used outside of loop *or* labeled block)
 - #103995 (Small round of typo fixes)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup

19 months agoRollup merge of #103995 - SUPERCILEX:typos, r=Dylan-DPC
Dylan DPC [Sat, 5 Nov 2022 06:01:30 +0000 (11:31 +0530)]
Rollup merge of #103995 - SUPERCILEX:typos, r=Dylan-DPC

Small round of typo fixes

19 months agoRollup merge of #103994 - clubby789:break-unlabeled, r=TaKO8Ki
Dylan DPC [Sat, 5 Nov 2022 06:01:30 +0000 (11:31 +0530)]
Rollup merge of #103994 - clubby789:break-unlabeled, r=TaKO8Ki

Specify that `break` cannot be used outside of loop *or* labeled block

Closes #103981

`@rustbot` label +A-diagnostics

19 months agoRollup merge of #103867 - compiler-errors:no-has-errors, r=cjgillot
Dylan DPC [Sat, 5 Nov 2022 06:01:29 +0000 (11:31 +0530)]
Rollup merge of #103867 - compiler-errors:no-has-errors, r=cjgillot

Remove `has_errors` from `FnCtxt`

It doesn't seem like this `has_errors` flag actually suppresses any errors (at least in the UI test suite) --- except for one test (`E0767.rs`), and I think that error really should be considered legitimate, since it has nothing to do with the error code and continues to exist after you fix the first error...

This flag was added by ```@eddyb``` in 6b3cc0b8c8094407a3b5ea75f946c682d6d0142a, and it's likely that it was made redundant due to subsequent restructuring of the compiler.

It only affects block type-checking anyways, so its effect does seem limited these days anyway.

19 months agoRollup merge of #103866 - compiler-errors:fn-ctxt-less-state, r=fee1-dead
Dylan DPC [Sat, 5 Nov 2022 06:01:29 +0000 (11:31 +0530)]
Rollup merge of #103866 - compiler-errors:fn-ctxt-less-state, r=fee1-dead

Remove some return-type diagnostic booleans from `FnCtxt`

These can be calculated on-demand

19 months agoRollup merge of #103660 - ozkanonur:master, r=jyn514
Dylan DPC [Sat, 5 Nov 2022 06:01:28 +0000 (11:31 +0530)]
Rollup merge of #103660 - ozkanonur:master, r=jyn514

improve `filesearch::get_or_default_sysroot`

`fn get_or_default_sysroot` is now improved and used in `miri` and `clippy`, and tests are still passing as they should. So we no longer need to implement custom workarounds/hacks to find sysroot in tools like miri/clippy.

Resolves https://github.com/rust-lang/rust/issues/98832

re-opened from #103581

19 months agoRollup merge of #103621 - fee1-dead-contrib:iat-fix-use, r=cjgillot
Dylan DPC [Sat, 5 Nov 2022 06:01:28 +0000 (11:31 +0530)]
Rollup merge of #103621 - fee1-dead-contrib:iat-fix-use, r=cjgillot

Correctly resolve Inherent Associated Types

I don't know if this is the best way to do this, but at least it is one way.

19 months agoAuto merge of #103992 - weihanglo:update-cargo, r=weihanglo
bors [Sat, 5 Nov 2022 04:01:29 +0000 (04:01 +0000)]
Auto merge of #103992 - weihanglo:update-cargo, r=weihanglo

Update cargo

20 commits in 7e484fc1a766f56dbc95380f45719698e0c82749..9286a1beba5b28b115bad67de2ae91fb1c61eb0b 2022-10-27 15:20:57 +0000 to 2022-11-04 06:41:49 +0000
- chore: Upgrade dependencies (rust-lang/cargo#11328)
- Clean more aggressively in CI (rust-lang/cargo#11335)
- Remove remove_dir_all (rust-lang/cargo#11333)
- test(publish): Cover more wait-for-publish cases (rust-lang/cargo#11327)
- Revert rust-lang/cargo#11183 (rust-lang/cargo#11331)
- fix(semver-check): adapt to a different error for variant not covered (rust-lang/cargo#11332)
- Update curl-sys (rust-lang/cargo#11326)
- Mention fix on build script deadlock (rust-lang/cargo#11325)
- Make cargo forward pre-existing CARGO if set (rust-lang/cargo#11285)
- Clean up workspace dependencies after cargo remove (rust-lang/cargo#11242)
- Update the outdated link for rust-semverver (rust-lang/cargo#11322)
- Fix broken link to compilation entry point (rust-lang/cargo#11317)
- Only remove fingerprints and build script artifacts of the requested package (rust-lang/cargo#10621)
- Newer anyhow features are required (rust-lang/cargo#11316)
- Clean stale git temp files (rust-lang/cargo#11308)
- Report crate size on package and publish (rust-lang/cargo#11270)
- add a note that some warnings (and/or errors) can be auto-fixed (rust-lang/cargo#10989)
- Update libcurl (rust-lang/cargo#11307)
- artifact deps shoud works when target field specified coexists with `optional = true` (rust-lang/cargo#11183)
- Fix singular verb in tests page (rust-lang/cargo#11300)

r? `@ghost`

19 months agoSmall round of typo fixes
Alex Saveau [Sat, 5 Nov 2022 03:05:22 +0000 (20:05 -0700)]
Small round of typo fixes

Signed-off-by: Alex Saveau <saveau.alexandre@gmail.com>
19 months agoAuto merge of #103991 - matthiaskrgr:rollup-tj53nte, r=matthiaskrgr
bors [Sat, 5 Nov 2022 01:20:41 +0000 (01:20 +0000)]
Auto merge of #103991 - matthiaskrgr:rollup-tj53nte, r=matthiaskrgr

Rollup of 7 pull requests

Successful merges:

 - #103868 (Use `TraitEngine` (by itself) less)
 - #103878 (Fix artifact version/channel detection for stable)
 - #103946 (Cleanup bind_pattern args)
 - #103956 (Make mir opt unused file check blessable)
 - #103977 (LLVM 16: Switch to using MemoryEffects)
 - #103980 (rustdoc: simplify search results CSS and DOM)
 - #103984 (Refactor tcx mk_const parameters.)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup

19 months agoSpecify that `break` cannot be used outside of loop *or* labeled block
clubby789 [Sat, 5 Nov 2022 01:11:50 +0000 (01:11 +0000)]
Specify that `break` cannot be used outside of loop *or* labeled block

19 months agoUpdate cargo
Weihang Lo [Fri, 4 Nov 2022 23:50:44 +0000 (23:50 +0000)]
Update cargo

20 commits in 7e484fc1a766f56dbc95380f45719698e0c82749..9286a1beba5b28b115bad67de2ae91fb1c61eb0b
2022-10-27 15:20:57 +0000 to 2022-11-04 06:41:49 +0000
- chore: Upgrade dependencies (rust-lang/cargo#11328)
- Clean more aggressively in CI (rust-lang/cargo#11335)
- Remove remove_dir_all (rust-lang/cargo#11333)
- test(publish): Cover more wait-for-publish cases (rust-lang/cargo#11327)
- Revert rust-lang/cargo#11183 (rust-lang/cargo#11331)
- fix(semver-check): adapt to a different error for variant not covered (rust-lang/cargo#11332)
- Update curl-sys (rust-lang/cargo#11326)
- Mention fix on build script deadlock (rust-lang/cargo#11325)
- Make cargo forward pre-existing CARGO if set (rust-lang/cargo#11285)
- Clean up workspace dependencies after cargo remove (rust-lang/cargo#11242)
- Update the outdated link for rust-semverver (rust-lang/cargo#11322)
- Fix broken link to compilation entry point (rust-lang/cargo#11317)
- Only remove fingerprints and build script artifacts of the requested package (rust-lang/cargo#10621)
- Newer anyhow features are required (rust-lang/cargo#11316)
- Clean stale git temp files (rust-lang/cargo#11308)
- Report crate size on package and publish (rust-lang/cargo#11270)
- add a note that some warnings (and/or errors) can be auto-fixed (rust-lang/cargo#10989)
- Update libcurl (rust-lang/cargo#11307)
- artifact deps shoud works when target field specified coexists with `optional = true` (rust-lang/cargo#11183)
- Fix singular verb in tests page (rust-lang/cargo#11300)

19 months agoRollup merge of #103984 - V0ldek:103974-refactor-mk_const, r=BoxyUwU
Matthias Krüger [Fri, 4 Nov 2022 23:02:06 +0000 (00:02 +0100)]
Rollup merge of #103984 - V0ldek:103974-refactor-mk_const, r=BoxyUwU

Refactor tcx mk_const parameters.

Unroll the `ty::ConstS` parameter to `TyCtxt::mk_const` into separate `ty::ConstKind` and `Ty` parameters.

Signature change is in:

https://github.com/V0ldek/rust/blob/c97fd8183a98d6a89b8fc2e02eb068298e6fb7dc/compiler/rustc_middle/src/ty/context.rs#L2234

and

https://github.com/V0ldek/rust/blob/c97fd8183a98d6a89b8fc2e02eb068298e6fb7dc/compiler/rustc_middle/src/ty/context.rs#L2572-L2575

the rest is callsites.

Closes #103974

r? `@oli-obk`

19 months agoRollup merge of #103980 - notriddle:notriddle/search-results, r=GuillaumeGomez
Matthias Krüger [Fri, 4 Nov 2022 23:02:06 +0000 (00:02 +0100)]
Rollup merge of #103980 - notriddle:notriddle/search-results, r=GuillaumeGomez

rustdoc: simplify search results CSS and DOM

Preview: http://notriddle.com/notriddle-rustdoc-demos/search-results/std/index.html?search=vec

There is a layout change caused by this commit, but it's subtle. You won't notice it unless you're looking for it.

## Before

![image](https://user-images.githubusercontent.com/1593513/200060877-05ae4135-db8d-4d24-8dfa-4c06b8ef671c.png)

## After

![image](https://user-images.githubusercontent.com/1593513/200061474-b0ea9e8d-72c3-401f-9106-072307d9e2ff.png)

19 months agoRollup merge of #103977 - TimNN:memory-effects, r=nikic
Matthias Krüger [Fri, 4 Nov 2022 23:02:05 +0000 (00:02 +0100)]
Rollup merge of #103977 - TimNN:memory-effects, r=nikic

LLVM 16: Switch to using MemoryEffects

This adapts the compiler to the changes required by https://github.com/llvm/llvm-project/commit/304f1d59ca41872c094def3aee0a8689df6aa398.

AFAICT, `WriteOnly` isn't used by the compiler, all `ReadNone` uses were migrated and the remaining use of `ReadOnly` is only for function parameters.

To simplify the FFI, this PR uses an enum to represent `MemoryEffects` across the FFI boundary, which then gets mapped to the matching static factory method when constructing the attribute.

Fixes #103961.

`@rustbot` label +llvm-main

r? `@nikic`

19 months agoRollup merge of #103956 - JakobDegen:tidy-bless, r=jyn514
Matthias Krüger [Fri, 4 Nov 2022 23:02:05 +0000 (00:02 +0100)]
Rollup merge of #103956 - JakobDegen:tidy-bless, r=jyn514

Make mir opt unused file check blessable

Makes it slightly nicer to work with.

Can't write automated test but tested locally via

```
$ touch src/test/mir-opt/random
$ x test tidy // shows failure
$ x test tidy --bless // file gone
```

r? `@jyn514`

19 months agoRollup merge of #103946 - camsteffen:cleanup-bind-pattern, r=cjgillot
Matthias Krüger [Fri, 4 Nov 2022 23:02:05 +0000 (00:02 +0100)]
Rollup merge of #103946 - camsteffen:cleanup-bind-pattern, r=cjgillot

Cleanup bind_pattern args

Fixes #101896

19 months agoRollup merge of #103878 - Mark-Simulacrum:fix-stable-ci-download, r=jyn514
Matthias Krüger [Fri, 4 Nov 2022 23:02:04 +0000 (00:02 +0100)]
Rollup merge of #103878 - Mark-Simulacrum:fix-stable-ci-download, r=jyn514

Fix artifact version/channel detection for stable

On stable, our artifacts are uploaded with the raw version number (e.g., 1.65.0), not the channel. This adjusts our detection logic to use the version number from src/version when we detect the stable channel.

This is really only important for stable channel re-builds, I think, but those do happen from time to time. I'm backporting a similar commit in https://github.com/rust-lang/rust/pull/103859 to make that PR pass CI.

19 months agoRollup merge of #103868 - compiler-errors:trait-engine-less, r=jackh726
Matthias Krüger [Fri, 4 Nov 2022 23:02:04 +0000 (00:02 +0100)]
Rollup merge of #103868 - compiler-errors:trait-engine-less, r=jackh726

Use `TraitEngine` (by itself) less

Replace `TraitEngine` in favor of `ObligationCtxt` or `fully_solve_*`, improving code readability.

19 months agoAuto merge of #103298 - ferrocene:pa-compile-flags-last, r=jyn514
bors [Fri, 4 Nov 2022 22:24:46 +0000 (22:24 +0000)]
Auto merge of #103298 - ferrocene:pa-compile-flags-last, r=jyn514

Ensure that compile-flags arguments are the last in UI tests

Before this PR, compiletest would add `-L path/to/aux` at the end of the rustc flags, even after the custom ones set with the compile-flags header comment. This made it impossible to check how rustc would behave when a flag requiring an argument was passed without the argument, because the argument would become `-L`.

This PR fixes that by adding the `-L path/to/aux` before the arguments defined in compile-flags, at least for UI tests. Other test suites might either be fixed as well by this change, or still present the old behavior (`-L` is now always passed before, but other tests suites might add additional flags after the custom ones).

19 months agoRefactor tcx mk_const parameters.
Mateusz [Fri, 4 Nov 2022 20:33:32 +0000 (20:33 +0000)]
Refactor tcx mk_const parameters.

19 months agorustdoc: get rid of CSS/DOM `div.desc span`, which isn't really needed
Michael Howell [Fri, 4 Nov 2022 20:19:33 +0000 (13:19 -0700)]
rustdoc: get rid of CSS/DOM `div.desc span`, which isn't really needed

19 months agoAuto merge of #103978 - matthiaskrgr:rollup-iym9kmg, r=matthiaskrgr
bors [Fri, 4 Nov 2022 19:43:36 +0000 (19:43 +0000)]
Auto merge of #103978 - matthiaskrgr:rollup-iym9kmg, r=matthiaskrgr

Rollup of 8 pull requests

Successful merges:

 - #103367 (Remove std's transitive dependency on cfg-if 0.1)
 - #103397 (Port `dead_code` lints to be translatable.)
 - #103681 (libtest: run all tests in their own thread, if supported by the host)
 - #103792 (Migrate `codegen_ssa` to diagnostics structs - [Part 2])
 - #103897 (asm: Work around LLVM bug on AArch64)
 - #103937 (minor changes to make method lookup diagnostic code easier to read)
 - #103958 (Test tidy should not count untracked paths towards entries limit)
 - #103964 (Give a specific lint for unsafety not being inherited)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup

19 months agorustdoc: simplify search results CSS and DOM
Michael Howell [Fri, 4 Nov 2022 19:34:24 +0000 (12:34 -0700)]
rustdoc: simplify search results CSS and DOM

There is a layout change caused by this commit, but it's subtle. You won't
notice it unless you're looking for it.

19 months agoLLVM 16: Switch to using MemoryEffects
Tim Neumann [Fri, 4 Nov 2022 16:20:42 +0000 (16:20 +0000)]
LLVM 16: Switch to using MemoryEffects

19 months agoRollup merge of #103964 - clubby789:lint-enclosing-unsafe, r=compiler-errors
Matthias Krüger [Fri, 4 Nov 2022 17:52:29 +0000 (18:52 +0100)]
Rollup merge of #103964 - clubby789:lint-enclosing-unsafe, r=compiler-errors

Give a specific lint for unsafety not being inherited

In cases like
```rs
static mut FOO: u64 = 0;
fn main() {
    unsafe {static BAR: u64 = FOO;}
}
```
and
```rs
fn foo() {
  unsafe {
    fn bar() {
      unsafe_call();
    }
  }
}
```
Specifically inform the user that the unsafety is not inherited for the seperate enclosing items
Fixes #94077
r? compiler-errors
`@rustbot` label +A-diagnostics

19 months agoRollup merge of #103958 - chenyukang:yukang/fix-103951-count-limit, r=jyn514
Matthias Krüger [Fri, 4 Nov 2022 17:52:28 +0000 (18:52 +0100)]
Rollup merge of #103958 - chenyukang:yukang/fix-103951-count-limit, r=jyn514

Test tidy should not count untracked paths towards entries limit

Fixes #103951
r? `@jyn514`

19 months agoRollup merge of #103937 - BoxyUwU:misc_cleanups, r=compiler-errors
Matthias Krüger [Fri, 4 Nov 2022 17:52:28 +0000 (18:52 +0100)]
Rollup merge of #103937 - BoxyUwU:misc_cleanups, r=compiler-errors

minor changes to make method lookup diagnostic code easier to read

The end result of around 4 days of trying to understand this 1000+ line long function- a bunch of tiny nitpicks

r? `@compiler-errors`

19 months agoRollup merge of #103897 - Amanieu:llvm-58384, r=davidtwco
Matthias Krüger [Fri, 4 Nov 2022 17:52:27 +0000 (18:52 +0100)]
Rollup merge of #103897 - Amanieu:llvm-58384, r=davidtwco

asm: Work around LLVM bug on AArch64

Upstream issue: https://github.com/llvm/llvm-project/issues/58384

LLVM gets confused if we assign a 32-bit value to a 64-bit register, so pass the 32-bit register name to LLVM in that case.

19 months agoRollup merge of #103792 - JhonnyBillM:migrate-codegen-ssa-to-diagnostics-structs...
Matthias Krüger [Fri, 4 Nov 2022 17:52:27 +0000 (18:52 +0100)]
Rollup merge of #103792 - JhonnyBillM:migrate-codegen-ssa-to-diagnostics-structs-pt2, r=davidtwco

Migrate `codegen_ssa` to diagnostics structs - [Part 2]

Completes migrating `link.rs` in `codegen_ssa` module.

_Part 1 - https://github.com/rust-lang/rust/pull/102612_

r? `@davidtwco`

19 months agoRollup merge of #103681 - RalfJung:libtest-thread, r=thomcc
Matthias Krüger [Fri, 4 Nov 2022 17:52:26 +0000 (18:52 +0100)]
Rollup merge of #103681 - RalfJung:libtest-thread, r=thomcc

libtest: run all tests in their own thread, if supported by the host

This reverts the threading changes of https://github.com/rust-lang/rust/pull/56243, which made it so that with `-j1`, the test harness does not spawn any threads. Those changes were done to enable Miri to run the test harness, but Miri supports threads nowadays, so this is no longer needed. Using a thread for each test is useful because the thread's name can be set to the test's name which makes panic messages consistent between `-j1` and `-j2` runs and also a bit more readable.

I did not revert the HashMap changes of https://github.com/rust-lang/rust/pull/56243; using a deterministic map seems fine for the test harness and the more deterministic testing is the better.

Fixes https://github.com/rust-lang/rust/issues/59122
Fixes https://github.com/rust-lang/rust/issues/70492

19 months agoRollup merge of #103397 - crlf0710:port_dead_code_lint, r=davidtwco
Matthias Krüger [Fri, 4 Nov 2022 17:52:26 +0000 (18:52 +0100)]
Rollup merge of #103397 - crlf0710:port_dead_code_lint, r=davidtwco

Port `dead_code` lints to be translatable.

This adds an additional comma to lists with three or more items, to be consistent with list formatters like `icu4x`.

r? `@davidtwco`

19 months agoRollup merge of #103367 - chbaker0:update-std-getrandom, r=thomcc
Matthias Krüger [Fri, 4 Nov 2022 17:52:25 +0000 (18:52 +0100)]
Rollup merge of #103367 - chbaker0:update-std-getrandom, r=thomcc

Remove std's transitive dependency on cfg-if 0.1

After https://github.com/rust-lang/rust/pull/101946 this completes the move to cfg-if 1.0 by:
* Updating getrandom 0.1.14->0.1.16
* Updating panic_abort's and unwind's dep to cfg-if 1.0

Fixes https://github.com/rust-lang/rust/issues/103365

19 months agoAuto merge of #101703 - nicholasbishop:bishop-add-uefi-ci-2, r=jyn514
bors [Fri, 4 Nov 2022 17:00:24 +0000 (17:00 +0000)]
Auto merge of #101703 - nicholasbishop:bishop-add-uefi-ci-2, r=jyn514

Add QEMU test for x86_64-unknown-uefi

The UEFI targets don't have std support yet, so the normal tests don't work. However, we can compile a simple no-std program and run it under QEMU to at least check that the target compiles, links, and runs.

Tested locally with: `src/ci/docker/run.sh x86_64-uefi`

19 months agoimprove `filesearch::get_or_default_sysroot` r=ozkanonur
Onur Özkan [Fri, 28 Oct 2022 07:20:51 +0000 (10:20 +0300)]
improve `filesearch::get_or_default_sysroot` r=ozkanonur

Signed-off-by: Onur Özkan <work@onurozkan.dev>
19 months agotest tidy should not count untracked paths towards entries limit
yukang [Fri, 4 Nov 2022 08:56:48 +0000 (16:56 +0800)]
test tidy should not count untracked paths towards entries limit

19 months agoAuto merge of #103962 - matthiaskrgr:rollup-9av8i6k, r=matthiaskrgr
bors [Fri, 4 Nov 2022 13:47:37 +0000 (13:47 +0000)]
Auto merge of #103962 - matthiaskrgr:rollup-9av8i6k, r=matthiaskrgr

Rollup of 7 pull requests

Successful merges:

 - #103680 (CStr: add some doc links)
 - #103780 (Fix late-bound lifetime closure ICEs in HIR typeck and MIR borrowck)
 - #103845 (Add track_caller to some Lock methods)
 - #103935 (Remove rustdoc clean::Visibility type)
 - #103941 (Fixed typos)
 - #103950 (Fix ICE when negative impl is collected during eager mono)
 - #103953 (Remove unused argument from `throw_unresolved_import_error`)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup

19 months agoFormatting changes + add UI test
clubby789 [Fri, 4 Nov 2022 12:57:42 +0000 (12:57 +0000)]
Formatting changes + add UI test

19 months agoGive a specific lint for unsafety not being inherited
clubby789 [Fri, 4 Nov 2022 12:25:40 +0000 (12:25 +0000)]
Give a specific lint for unsafety not being inherited

19 months agoRollup merge of #103953 - TaKO8Ki:remove-unused-arg-from-throw_unresolved_import_erro...
Matthias Krüger [Fri, 4 Nov 2022 11:18:03 +0000 (12:18 +0100)]
Rollup merge of #103953 - TaKO8Ki:remove-unused-arg-from-throw_unresolved_import_error, r=oli-obk

Remove unused argument from `throw_unresolved_import_error`

`throw_unresolved_import_error` does not need the second argument.

19 months agoRollup merge of #103950 - nbdd0121:master, r=tmiasko
Matthias Krüger [Fri, 4 Nov 2022 11:18:03 +0000 (12:18 +0100)]
Rollup merge of #103950 - nbdd0121:master, r=tmiasko

Fix ICE when negative impl is collected during eager mono

```rust
trait Foo {
    fn foo() {}
}

impl !Foo for () {}
```

This code will currently cause an ICE when mono collection mode is "eager" (with `-C link-dead-code=y` or `-Z print-mono-items=eager`.

19 months agoRollup merge of #103941 - douweschulte:patch-1, r=jyn514
Matthias Krüger [Fri, 4 Nov 2022 11:18:02 +0000 (12:18 +0100)]
Rollup merge of #103941 - douweschulte:patch-1, r=jyn514

Fixed typos

Fixed a typo that has been found on two locations in comments.

19 months agoRollup merge of #103935 - GuillaumeGomez:remove-rustdoc-visibility-ty, r=notriddle
Matthias Krüger [Fri, 4 Nov 2022 11:18:02 +0000 (12:18 +0100)]
Rollup merge of #103935 - GuillaumeGomez:remove-rustdoc-visibility-ty, r=notriddle

Remove rustdoc clean::Visibility type

Fixes #90852.

Follow-up of https://github.com/rust-lang/rust/pull/103690.

This PR completely removes the rustdoc `clean::Visibility` type to use the `rustc_middle` one instead. I don't think there will be any impact on perf.

r? `@notriddle`

19 months agoRollup merge of #103845 - camsteffen:data-structures-track-caller, r=compiler-errors
Matthias Krüger [Fri, 4 Nov 2022 11:18:01 +0000 (12:18 +0100)]
Rollup merge of #103845 - camsteffen:data-structures-track-caller, r=compiler-errors

Add track_caller to some Lock methods

Would have helped to diagnose #103844.

19 months agoRollup merge of #103780 - compiler-errors:bound-closure-lifetimes, r=jackh726
Matthias Krüger [Fri, 4 Nov 2022 11:18:01 +0000 (12:18 +0100)]
Rollup merge of #103780 - compiler-errors:bound-closure-lifetimes, r=jackh726

Fix late-bound lifetime closure ICEs in HIR typeck and MIR borrowck

During HIR typeck, we need to teach astconv to treat late-bound regions within a closure body as free, fixing escaping bound vars ICEs in both of the issues below.

However, this then gets us to MIR borrowck, which itself needs to be taught how to instantiate free region vids for late-bound regions that come from items that _aren't_ the typeck root (for now, just closures).

Fixes #103771
Fixes #103736

19 months agoRollup merge of #103680 - RalfJung:cstr-links, r=JohnTitor
Matthias Krüger [Fri, 4 Nov 2022 11:18:00 +0000 (12:18 +0100)]
Rollup merge of #103680 - RalfJung:cstr-links, r=JohnTitor

CStr: add some doc links

19 months agoAuto merge of #103098 - Amanieu:asm-tied-fixed, r=bjorn3
bors [Fri, 4 Nov 2022 10:39:04 +0000 (10:39 +0000)]
Auto merge of #103098 - Amanieu:asm-tied-fixed, r=bjorn3

asm: Match clang behavior for inlateout fixed register operands

We have 2 options for representing LLVM constraints for `inlateout` operands on a fixed register (e.g. `r0`): `={r0},0` or `={r0},{r0}`.

This PR changes the behavior to the latter, which matches the behavior of Clang since https://reviews.llvm.org/D87279.

19 months agoAuto merge of #103954 - matthiaskrgr:rollup-tskpxnj, r=matthiaskrgr
bors [Fri, 4 Nov 2022 07:26:56 +0000 (07:26 +0000)]
Auto merge of #103954 - matthiaskrgr:rollup-tskpxnj, r=matthiaskrgr

Rollup of 10 pull requests

Successful merges:

 - #103825 (Remove let_underscore_must_use from list of uplifted lints)
 - #103884 (Add visit_fn_ret_ty to hir intravisit)
 - #103892 (Properly render asyncness for trait fns without default body)
 - #103905 (rustdoc: remove redundant mobile CSS `.sidebar-elems { background }`)
 - #103912 (Add howto for adding new targets)
 - #103915 (Improve use of ErrorGuaranteed and code cleanup)
 - #103930 (Move some tests from `src/test/ui` to more reasonable places)
 - #103931 (Add note to RELEASES.md regarding issue 102754.)
 - #103938 (rustdoc: clean up hardcoded CSS border color on search results)
 - #103940 (rustdoc: remove no-op CSS `#main-content > .item-info { margin-top: 0 }`)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup

19 months agoMake mir opt unused file check blessable
Jakob Degen [Fri, 4 Nov 2022 06:19:59 +0000 (23:19 -0700)]
Make mir opt unused file check blessable

19 months agoRollup merge of #103940 - notriddle:notriddle/main-content-item-info-margin-top,...
Matthias Krüger [Fri, 4 Nov 2022 05:40:34 +0000 (06:40 +0100)]
Rollup merge of #103940 - notriddle:notriddle/main-content-item-info-margin-top, r=GuillaumeGomez

rustdoc: remove no-op CSS `#main-content > .item-info { margin-top: 0 }`

When this line was added in 04b4c40682c01cad8f9bc8d5b3907be91d6f81d4, it overrode a negative `margin-top` that was set on it by default.

https://github.com/rust-lang/rust/blob/04b4c40682c01cad8f9bc8d5b3907be91d6f81d4/src/librustdoc/html/static/rustdoc.css#L500-L516

That negative top margin was removed in 593d6d1cb15c55c88319470dabb40126c7b7f1e2.

19 months agoRollup merge of #103938 - notriddle:notriddle/search-results-border-bottom, r=Guillau...
Matthias Krüger [Fri, 4 Nov 2022 05:40:34 +0000 (06:40 +0100)]
Rollup merge of #103938 - notriddle:notriddle/search-results-border-bottom, r=GuillaumeGomez

rustdoc: clean up hardcoded CSS border color on search results

Hardcoded colors in rustdoc.css should usually be avoided.

Preview: http://notriddle.com/notriddle-rustdoc-demos/border-bottom-search/test_dingus/?search=test

19 months agoRollup merge of #103931 - pnkfelix:note-eh-personality-limit-atop-lld, r=Mark-Simulacrum
Matthias Krüger [Fri, 4 Nov 2022 05:40:33 +0000 (06:40 +0100)]
Rollup merge of #103931 - pnkfelix:note-eh-personality-limit-atop-lld, r=Mark-Simulacrum

Add note to RELEASES.md regarding issue 102754.

As discussed in [compiler triage meeting today](https://rust-lang.zulipchat.com/#narrow/stream/238009-t-compiler.2Fmeetings/topic/.5Bweekly.5D.202022-11-03/near/307746618); it would have been nice to get this in time for the stable notes, but having it only in nightly only is better than nothing...

r? `@Mark-Simulacrum`

19 months agoRollup merge of #103930 - fee1-dead-contrib:mv-from-root, r=jyn514
Matthias Krüger [Fri, 4 Nov 2022 05:40:33 +0000 (06:40 +0100)]
Rollup merge of #103930 - fee1-dead-contrib:mv-from-root, r=jyn514

Move some tests from `src/test/ui` to more reasonable places

19 months agoRollup merge of #103915 - chenyukang:yukang/fix-103874, r=lcnr
Matthias Krüger [Fri, 4 Nov 2022 05:40:32 +0000 (06:40 +0100)]
Rollup merge of #103915 - chenyukang:yukang/fix-103874, r=lcnr

Improve use of ErrorGuaranteed and code cleanup

Part of #103874

19 months agoRollup merge of #103912 - flba-eb:doc_adding_tier3_target, r=davidtwco
Matthias Krüger [Fri, 4 Nov 2022 05:40:32 +0000 (06:40 +0100)]
Rollup merge of #103912 - flba-eb:doc_adding_tier3_target, r=davidtwco

Add howto for adding new targets

When new targets are added, often a reviewer finds out that e.g. the target-3-tier-policy is not filled out (missing), there is no description etc.
This change adds a description of what I've learned while working on #102701. It should make reviews easier in the future with less rework.

r? compiler-team

19 months agoRollup merge of #103905 - notriddle:notriddle/sidebar-elems-background, r=GuillaumeGomez
Matthias Krüger [Fri, 4 Nov 2022 05:40:31 +0000 (06:40 +0100)]
Rollup merge of #103905 - notriddle:notriddle/sidebar-elems-background, r=GuillaumeGomez

rustdoc: remove redundant mobile CSS `.sidebar-elems { background }`

The exact same background is already set for its parent, the `nav.sidebar`.

19 months agoRollup merge of #103892 - compiler-errors:afit-rustdoc, r=GuillaumeGomez
Matthias Krüger [Fri, 4 Nov 2022 05:40:31 +0000 (06:40 +0100)]
Rollup merge of #103892 - compiler-errors:afit-rustdoc, r=GuillaumeGomez

Properly render asyncness for trait fns without default body

We weren't properly desugaring async fns in traits unless they had default bodies (in which case rustdoc treats them much like they came from an impl).

cc ```@yoshuawuyts``` should help with https://rust-lang.zulipchat.com/#narrow/stream/330606-wg-async.2Fasync-fn-in-trait-impl/topic/type.20inside.20.60async.20fn.60.20body.20must.20be.20known.20in.20this.20context/near/306894869

19 months agoRollup merge of #103884 - spastorino:visit-fn-ret-ty-intravisit, r=compiler-errors
Matthias Krüger [Fri, 4 Nov 2022 05:40:31 +0000 (06:40 +0100)]
Rollup merge of #103884 - spastorino:visit-fn-ret-ty-intravisit, r=compiler-errors

Add visit_fn_ret_ty to hir intravisit

I'm working on some RPITIT changes and I need to specialize `visit_fn_ret_ty` in my visitor impl. So I guess it's better to land it separately.

r? `@compiler-errors`

19 months agoRollup merge of #103825 - Mark-Simulacrum:fix-relnotes, r=pietroalbini
Matthias Krüger [Fri, 4 Nov 2022 05:40:30 +0000 (06:40 +0100)]
Rollup merge of #103825 - Mark-Simulacrum:fix-relnotes, r=pietroalbini

Remove let_underscore_must_use from list of uplifted lints

Per https://internals.rust-lang.org/t/rust-1-65-0-pre-release-testing/17660/2

We probably won't backport this (not worth rebuilding stable artifacts over it) but still should be fixed.

19 months agoUPDATE - accept dyn error and make Box<dyn error> conform to IntoDiagnosticArg
Jhonny Bill Mena [Fri, 4 Nov 2022 05:16:16 +0000 (01:16 -0400)]
UPDATE - accept dyn error and make Box<dyn error> conform to IntoDiagnosticArg

19 months agoUPDATE - address PR Comments
Jhonny Bill Mena [Thu, 3 Nov 2022 05:53:06 +0000 (01:53 -0400)]
UPDATE - address PR Comments

FIX - StrippingDebugInfoFailed typo

DELETE - unneeded FIXME comment

UPDATE - only declare the error with ExtractBundledLibsError as an enum and use the Diagnostic derive macro

19 months agoFIX - Migrate missing errors in link.rs
Jhonny Bill Mena [Mon, 31 Oct 2022 05:51:58 +0000 (01:51 -0400)]
FIX - Migrate missing errors in link.rs

19 months agoADD - ExtractBundledLibsError. Migrated extract_bundled_libs to translatable diagnostics
Jhonny Bill Mena [Mon, 31 Oct 2022 05:36:32 +0000 (01:36 -0400)]
ADD - ExtractBundledLibsError. Migrated extract_bundled_libs to translatable diagnostics

19 months agoUPDATE - Complete link.rs migration to new diagnostics infraestructure
Jhonny Bill Mena [Sun, 30 Oct 2022 19:38:37 +0000 (15:38 -0400)]
UPDATE - Complete link.rs migration to new diagnostics infraestructure

19 months agoremove unused argument from `throw_unresolved_import_error`
Takayuki Maeda [Fri, 4 Nov 2022 04:59:04 +0000 (13:59 +0900)]
remove unused argument from `throw_unresolved_import_error`

19 months agoAuto merge of #102928 - notriddle:notriddle/rustdoc-thin-vec, r=GuillaumeGomez
bors [Fri, 4 Nov 2022 03:32:18 +0000 (03:32 +0000)]
Auto merge of #102928 - notriddle:notriddle/rustdoc-thin-vec, r=GuillaumeGomez

rustdoc: use ThinVec for cleaned generics

Depends on https://github.com/Gankra/thin-vec/pull/38

19 months agoFix ICE when negative impl is collected during eager mono
Gary Guo [Fri, 4 Nov 2022 03:08:28 +0000 (03:08 +0000)]
Fix ICE when negative impl is collected during eager mono

19 months agoAuto merge of #101834 - compiler-errors:super-deduce-closure-sig, r=lcnr
bors [Fri, 4 Nov 2022 00:51:37 +0000 (00:51 +0000)]
Auto merge of #101834 - compiler-errors:super-deduce-closure-sig, r=lcnr

Elaborate supertrait obligations when deducing closure signatures

We elaborate the supertrait obligations of any registered predicates for a closure to see if we can infer a closure signature.

This is not as general of a fix as it *could* be, since we just elaborate supertrait bounds instead of doing a theoretical walk of _all_ registered predicates that might cause us to deduce `Fn` trait information for a closure infer var. I don't even know how to come up with an example that fails here but would work with a more general system.

Fixes #23012
Also fixes the existing compile failure in #57611

r? `@ghost` for now until I do a perf run
cc `@nikomatsakis` since you commented on https://github.com/rust-lang/rust/issues/23012#issuecomment-1152397290

19 months agoCleanup bind_pattern args
Cameron Steffen [Wed, 2 Nov 2022 17:18:00 +0000 (12:18 -0500)]
Cleanup bind_pattern args

19 months agoAuto merge of #103922 - Mark-Simulacrum:revert-cargo, r=Mark-Simulacrum
bors [Thu, 3 Nov 2022 21:37:05 +0000 (21:37 +0000)]
Auto merge of #103922 - Mark-Simulacrum:revert-cargo, r=Mark-Simulacrum

Revert "Update cargo"

This reverts commit 331aa4509315f670803b7e232486be84d84ea686.

This Cargo upgrade introduced a regression into dependency resolution, so reverting the upgrade until we can fix that.

cc https://github.com/rust-lang/rust/pull/103860,
https://rust-lang.zulipchat.com/#narrow/stream/247081-t-compiler.2Fperformance/topic/cargo.20and.20rustc.20benchmarks.20broken

19 months agoFixed typos
Douwe Schulte [Thu, 3 Nov 2022 21:19:02 +0000 (21:19 +0000)]
Fixed typos

Fixed a typo that has been found on two locations in comments.

19 months agorustdoc: remove no-op CSS `#main-content > .item-info { margin-top: 0 }`
Michael Howell [Thu, 3 Nov 2022 20:22:54 +0000 (13:22 -0700)]
rustdoc: remove no-op CSS `#main-content > .item-info { margin-top: 0 }`

When this line was added in 04b4c40682c01cad8f9bc8d5b3907be91d6f81d4, it
overrode a negative `margin-top` that was set on it by default.

https://github.com/rust-lang/rust/blob/04b4c40682c01cad8f9bc8d5b3907be91d6f81d4/src/librustdoc/html/static/rustdoc.css#L500-L516

That negative top margin was removed in
593d6d1cb15c55c88319470dabb40126c7b7f1e2.

19 months agorustdoc: clean up hardcoded CSS border color on search results
Michael Howell [Thu, 3 Nov 2022 19:29:17 +0000 (12:29 -0700)]
rustdoc: clean up hardcoded CSS border color on search results

Hardcoded colors in rustdoc.css should usually be avoided.

19 months agoUse `derive(Subdiagnostic)` for `ChangeFieldsToBeOfUnitType`.
Charles Lew [Thu, 3 Nov 2022 19:02:09 +0000 (03:02 +0800)]
Use `derive(Subdiagnostic)` for `ChangeFieldsToBeOfUnitType`.

19 months agoCleanups
Boxy [Thu, 3 Nov 2022 18:52:08 +0000 (18:52 +0000)]
Cleanups

19 months agoRemove rustdoc clean::Visibility type
Guillaume Gomez [Thu, 3 Nov 2022 17:15:24 +0000 (18:15 +0100)]
Remove rustdoc clean::Visibility type

19 months agoMove some tests from `src/test/ui` to more reasonable places
Deadbeef [Thu, 3 Nov 2022 15:41:01 +0000 (15:41 +0000)]
Move some tests from `src/test/ui` to more reasonable places

19 months agoreverse obligations for better diagnostics on multiple conflicting fn bounds
Michael Goulet [Sat, 15 Oct 2022 18:48:13 +0000 (18:48 +0000)]
reverse obligations for better diagnostics on multiple conflicting fn bounds

19 months agoElaborate supertrait obligations when deducing closure signature
Michael Goulet [Thu, 15 Sep 2022 00:35:23 +0000 (00:35 +0000)]
Elaborate supertrait obligations when deducing closure signature

19 months agoMake obligations_for_self_ty only return an obligation
Michael Goulet [Thu, 15 Sep 2022 00:18:35 +0000 (00:18 +0000)]
Make obligations_for_self_ty only return an obligation

19 months agoAdd note to RELEASES.md regarding issue 102754.
Felix S. Klock II [Thu, 3 Nov 2022 15:44:50 +0000 (11:44 -0400)]
Add note to RELEASES.md regarding issue 102754.

19 months agoroll another resolution logic in rustdoc
Deadbeef [Thu, 27 Oct 2022 17:33:41 +0000 (17:33 +0000)]
roll another resolution logic in rustdoc

19 months agoCorrectly resolve Inherent Associated Types
Deadbeef [Thu, 27 Oct 2022 07:11:15 +0000 (07:11 +0000)]
Correctly resolve Inherent Associated Types

19 months agoAdd visit_fn_ret_ty to hir intravisit
Santiago Pastorino [Wed, 26 Oct 2022 17:40:34 +0000 (14:40 -0300)]
Add visit_fn_ret_ty to hir intravisit

19 months agoRevert "Update cargo"
Mark Rousskov [Thu, 3 Nov 2022 12:37:45 +0000 (08:37 -0400)]
Revert "Update cargo"

This reverts commit 331aa4509315f670803b7e232486be84d84ea686.

This Cargo upgrade introduced a regression into dependency resolution,
so reverting the upgrade until we can fix that.

19 months agoFix artifact version/channel detection for stable
Mark Rousskov [Wed, 2 Nov 2022 12:21:21 +0000 (08:21 -0400)]
Fix artifact version/channel detection for stable

On stable, our artifacts are uploaded with the raw version number (e.g.,
1.65.0), not the channel. This adjusts our detection logic to use the
version number from src/version when we detect the stable channel.

19 months agoAdd howto for adding new targets
Florian Bartels [Thu, 3 Nov 2022 08:19:47 +0000 (09:19 +0100)]
Add howto for adding new targets

19 months agoput custom flags as last in codegen and asm tests
Pietro Albini [Thu, 3 Nov 2022 11:00:17 +0000 (12:00 +0100)]
put custom flags as last in codegen and asm tests

19 months agomove compiletest's own ui tests into a subdirectory
Pietro Albini [Thu, 3 Nov 2022 10:48:33 +0000 (11:48 +0100)]
move compiletest's own ui tests into a subdirectory

19 months agocheck for pattern in compiletest-compile-flags-last
Pietro Albini [Thu, 3 Nov 2022 10:47:05 +0000 (11:47 +0100)]
check for pattern in compiletest-compile-flags-last

19 months agoAuto merge of #103904 - JakobDegen:mir-opt-dash, r=oli-obk
bors [Thu, 3 Nov 2022 09:24:28 +0000 (09:24 +0000)]
Auto merge of #103904 - JakobDegen:mir-opt-dash, r=oli-obk

Ban dashes in miropt test file names

Dashes in miropt test file names are annoying - specifically, they cause the test files to not be sorted next to their outputs, which makes it very difficult to tell what goes with what. This PR changes all files to use underscores and adds a blessable tidy check that enforces this.

r? `@jyn514`

This PR is obviously going to bitrot very quickly. Because of this, I'm going to wait at least 48 hours and until review comes back to allow people from `@rust-lang/wg-mir-opt` or elsewhere to lodge complaints if there are any. If not, I'll rebase the branch on Friday afternoon PST and ask that it be `r+`'d with `p=1` at that time.

19 months agoAuto merge of #103860 - weihanglo:update-cargo, r=ehuss
bors [Thu, 3 Nov 2022 06:11:58 +0000 (06:11 +0000)]
Auto merge of #103860 - weihanglo:update-cargo, r=ehuss

Update cargo

14 commits in 7e484fc1a766f56dbc95380f45719698e0c82749..810cbad9a123ad4ee0a55a96171b8f8478ff1c03
2022-10-27 15:20:57 +0000 to 2022-11-02 21:04:31 +0000
- Update curl-sys (rust-lang/cargo#11326)
- Mention fix on build script deadlock (rust-lang/cargo#11325)
- Make cargo forward pre-existing CARGO if set (rust-lang/cargo#11285)
- Clean up workspace dependencies after cargo remove (rust-lang/cargo#11242)
- Update the outdated link for rust-semverver (rust-lang/cargo#11322)
- Fix broken link to compilation entry point (rust-lang/cargo#11317)
- Only remove fingerprints and build script artifacts of the requested package (rust-lang/cargo#10621)
- Newer anyhow features are required (rust-lang/cargo#11316)
- Clean stale git temp files (rust-lang/cargo#11308)
- Report crate size on package and publish (rust-lang/cargo#11270)
- add a note that some warnings (and/or errors) can be auto-fixed (rust-lang/cargo#10989)
- Update libcurl (rust-lang/cargo#11307)
- artifact deps shoud works when target field specified coexists with `optional = true` (rust-lang/cargo#11183)
- Fix singular verb in tests page (rust-lang/cargo#11300)

r? `@ghost`

19 months agoAuto merge of #103455 - BlackHoleFox:apple-sim-abi-consistency, r=davidtwco
bors [Thu, 3 Nov 2022 03:07:31 +0000 (03:07 +0000)]
Auto merge of #103455 - BlackHoleFox:apple-sim-abi-consistency, r=davidtwco

Fixed consistency of Apple simulator target's ABI

Currently there's a few Apple device simulator targets that are inconsistent since some set `target_abi = "sim"` (the correct thing to do) while a bunch of others don't set anything (`""`). Due to this its very hard to reliability check if some Rust code is running inside a simulator. This changes all of them to do the same thing and set `sim` as their `target_abi`.

The new way to identity a simulator during compilation is as simple as `cfg(all(target_vendor="apple", target_abi = "sim"))` or even `cfg(target_abi = "sim")` being less pedantic about it.

The issues with the current form (and inspiration for this) are also summarized in `@thomcc's` [Tweet](https://twitter.com/at_tcsc/status/1576685244702691328).

19 months agocode cleanup
yukang [Thu, 3 Nov 2022 01:42:34 +0000 (09:42 +0800)]
code cleanup

19 months agoremove 'delay_span_bug' following 'references_error'
yukang [Thu, 3 Nov 2022 01:22:08 +0000 (09:22 +0800)]
remove 'delay_span_bug' following 'references_error'

19 months agoAuto merge of #103903 - matthiaskrgr:rollup-r5xcvrp, r=matthiaskrgr
bors [Thu, 3 Nov 2022 00:20:08 +0000 (00:20 +0000)]
Auto merge of #103903 - matthiaskrgr:rollup-r5xcvrp, r=matthiaskrgr

Rollup of 6 pull requests

Successful merges:

 - #99801 (fix(generic_const_exprs): Fix predicate inheritance for children of opaque types)
 - #103610 (Allow use of `-Clto=thin` with `-Ccodegen-units=1` in general)
 - #103870 (Fix `inferred_kind` ICE)
 - #103875 (Simplify astconv item def id handling)
 - #103886 (rustdoc: Fix merge of attributes for reexports of local items)
 - #103890 (rustdoc: remove unused mobile CSS `.rustdoc { padding-top: 0 }`)

Failed merges:

 - #103884 (Add visit_fn_ret_ty to hir intravisit)

r? `@ghost`
`@rustbot` modify labels: rollup

19 months agorustdoc: add size tracking for `Generics`
Michael Howell [Wed, 12 Oct 2022 21:29:32 +0000 (14:29 -0700)]
rustdoc: add size tracking for `Generics`