Commit graph

140783 commits

Author SHA1 Message Date
bors
dfe024e104 Auto merge of #109765 - petrochenkov:encodeless, r=cjgillot
rustc_metadata: Filter encoded data more aggressively using `DefKind`

I focused on data that contains spans, because spans are expensive to encode/decode/hash, but also touched `should_encode_visibility` too.

One incorrect use of impl visibility in diagnostics is also replaced with trait visibility.
2023-04-11 10:32:41 +00:00
bors
8e1162f07e Auto merge of #110168 - saethlin:miri, r=RalfJung
update Miri

Most importantly, this should ensure that the Miri test suite passes in this repo, when the issue is fixed.

r? `@oli-obk`
2023-04-11 08:11:46 +00:00
Yuki Okushi
48e14bbb5a
Rollup merge of #110149 - rustbot:docs-update, r=ehuss
Update books

## rust-lang/book

1 commits in 0510ca84c2ce6bf93c4ccf9248756e9e4fd00b12..c06006157b14b3d47b5c716fc392b77f3b2e21ce
2023-04-03 15:31:55 UTC to 2023-04-03 15:31:55 UTC

- Fix grammar (rust-lang/book#3600)

## rust-lang/reference

3 commits in 3c47807a3131b3c7cacb508f52632078d253cd0a..1f8dc727e94ae4ef92adf70df979521a1ea1143e
2023-04-09 14:04:53 UTC to 2023-03-29 13:21:47 UTC

- Explain typos in `asm!` can be unsound (rust-lang/reference#1344)
- Fix coding style in example: add space between module name and bracket (rust-lang/reference#1347)
- redundant word removed (rust-lang/reference#1346)

## rust-lang/rust-by-example

1 commits in ba84bf35d0f17d404003349309201654d25f61af..31961fe22521a779070a44a8f30a2b00a20b6212
2023-04-10 13:06:34 UTC to 2023-04-10 13:06:34 UTC

- Add clarity to name of file being used in library example. (rust-lang/rust-by-example#1697)

## rust-lang/rustc-dev-guide

8 commits in fca8af6c154c6cde2512f1331cf2704f214a818e..6337ed17fb8dcd918d78b7d97d213e923530337c
2023-04-10 14:23:05 UTC to 2023-04-06 00:29:18 UTC

- fix markup (rust-lang/rustc-dev-guide#1670)
- Reorganize "Getting Started" and add a "What should I work on?" section (rust-lang/rustc-dev-guide#1665)
- Clarify cfg(bootstrap) docs (rust-lang/rustc-dev-guide#1669)
- Link to forge instead of duplicating toolstate info (rust-lang/rustc-dev-guide#1664)
- Improve the landing page for contributing to the libstd docs (rust-lang/rustc-dev-guide#1666)
- Various improvements to `check_line_lengths.sh` (rust-lang/rustc-dev-guide#1667)
- Document how to ignore specific files in a diff (rust-lang/rustc-dev-guide#1668)
- mention `git clone --depth 1` (rust-lang/rustc-dev-guide#1663)
2023-04-11 12:18:52 +09:00
Yuki Okushi
a996418e3d
Rollup merge of #110146 - bvanjoi:relative-110138, r=notriddle
fix(doc): do not parse inline when output is json for external crate

relative #110138
2023-04-11 12:18:51 +09:00
Yuki Okushi
c617ddf4f3
Rollup merge of #109527 - lnicola:rust-gdb-substitute-path, r=cuviper
Set up standard library path substitution in rust-gdb and gdbgui

Fixes #62945

---

Only lightly tested (in release mode, where the paths are a bit of a mess) because my `gdb` appears to crash with `internal-error: inside_main_func: Assertion 'block != nullptr' failed.` and I don't have `gdbgui`. Please review carefully my shell syntax.

There's also `rust-lldb`, but I don't know the equivalent for it.
2023-04-11 12:18:49 +09:00
rustbot
687abb0c35 Update books 2023-04-10 13:00:46 -04:00
bohan
c127020b0f fix(doc): do not parse inline when output is json for external crate 2023-04-10 23:02:08 +08:00
Vadim Petrochenkov
f5a9f6fb7e rustc_metadata: Filter encoded data more aggressively using DefKind 2023-04-10 16:24:36 +03:00
Ben Kimock
d50fee9fb2 rustup 2023-04-10 07:57:55 -04:00
Ben Kimock
73702d5e39 Turn off the alignment check pass, remove the panic test for it
The panic test is now counted as an error test; we encounter a Terminate
terminator, and emit an interpreter error, as opposed to just
terminating due to a panic. So this test should have broken with
https://github.com/rust-lang/rust/pull/102906 but wasn't because the Miri
test suite is currently broken in rust-lang/rust:
 https://github.com/rust-lang/rust/issues/110102
2023-04-10 07:56:31 -04:00
Ben Kimock
6efdf4d130 Merge from rustc 2023-04-10 07:55:57 -04:00
Ben Kimock
0bb6d66251 Preparing for merge from rustc 2023-04-10 07:55:53 -04:00
bors
d4be8efc62 Auto merge of #110137 - Dylan-DPC:rollup-fdruvwp, r=Dylan-DPC
Rollup of 6 pull requests

Successful merges:

 - #109724 (prioritize param env candidates if they don't guide type inference)
 - #110021 (Fix a couple ICEs in the new `CastKind::Transmute` code)
 - #110044 (Avoid some manual slice length calculation)
 - #110115 (compiletest: Use remap-path-prefix only in CI)
 - #110121 (Fix `x check --stage 1` when download-rustc is enabled)
 - #110124 (Some clippy fixes in the compiler)

Failed merges:

 - #109752 (Stall auto trait assembly in new solver for int/float vars)

r? `@ghost`
`@rustbot` modify labels: rollup
2023-04-10 09:07:02 +00:00
Dylan DPC
6f2fd3e6a2
Rollup merge of #110121 - jyn514:check-stage1, r=ozkanonur
Fix `x check --stage 1` when download-rustc is enabled

Helps with https://github.com/rust-lang/rust/issues/81930
2023-04-10 14:13:15 +05:30
Dylan DPC
e327487bd8
Rollup merge of #110115 - jyn514:remap-path-prefix-ci, r=compiler-errors
compiletest: Use remap-path-prefix only in CI

This makes jump-to-definition work in most IDEs, as well as being easier to understand for contributors.

Fixes https://github.com/rust-lang/rust/issues/109725. cc `@TimNN`
2023-04-10 14:13:15 +05:30
bors
7f7e8fbc99 Auto merge of #110008 - klensy:deps-up-apr-06, r=Mark-Simulacrum
bump few deps

Update few deps to fix security vulns, future incompatibilities, duplicates.

`jemalloc-sys` v0.5.0+5.3.0 -> v0.5.3+5.3.0-patched: fixes future-incompatibilities by dropping fs_extra (https://github.com/rust-lang-ci/rust/actions/runs/4626595610/jobs/8183514150#step:26:19499, https://github.com/tikv/jemallocator/blob/tikv-jemalloc-sys-0.5.3/CHANGELOG.md)

`openssl-src` v111.22.0+1.1.1q -> v111.25.0+1.1.1t: fixes few vulns:
https://www.openssl.org/news/vulnerabilities-1.1.1.html
https://www.cve.org/CVERecord?id=CVE-2022-4304
https://www.cve.org/CVERecord?id=CVE-2022-4450
https://www.cve.org/CVERecord?id=CVE-2023-0215
https://www.cve.org/CVERecord?id=CVE-2023-0286
There exist newer openssl version 1.1.1u with low severity vulns, but no crate update yet

`openssl` crate with deps 0.10.38 ->0.10.49 fixes vulns (https://github.com/sfackler/rust-openssl/blob/openssl-v0.10.49/openssl/CHANGELOG.md)
https://rustsec.org/advisories/RUSTSEC-2023-0022
https://rustsec.org/advisories/RUSTSEC-2023-0023
https://rustsec.org/advisories/RUSTSEC-2023-0024

update `env_logger` for `rustbook` and `cargo_metadata` for `tidy` to newer versions (still used by `rustfmt`, `miri`)
2023-04-10 06:53:15 +00:00
bors
749b487be4 Auto merge of #109880 - ehuss:fix-macos-installer-rust-docs, r=Mark-Simulacrum
Fix macOS and Windows installers when rust-docs is not available.

This fixes the macOS `.pkg` and Windows `.msi` installers to work when rust-docs is not available. If the rust-docs component is not built, then the installer would fail. This adds the rust-docs component to the filtering mechanism so that the rust-docs line of the distribution definition aren't included.

I tested installing and uninstalling both with and without the rust-docs component available.

This happens on the aarch64-apple-darwin distribution provided by rust-lang since we currently disable the rust-docs component due to long build times. An alternate solution would be to just enable the rust-docs component on aarch64-apple-darwin since there are faster build systems.

Fixes #109877
2023-04-10 04:36:38 +00:00
Matthias Krüger
dd5942d77c
Rollup merge of #110114 - jyn514:wasm-errors, r=compiler-errors
compiletest: Give a better error message if `node` isn't installed
2023-04-09 23:40:06 +02:00
Matthias Krüger
7822064550
Rollup merge of #110108 - duckymirror:rename-ignore-git-changelog, r=ozkanonur
Add renaming of ignore-git to changelog

`bootstrap`'s `ignore-git` option has been renamed to `omit-git-hash` in #110059. This PR adds this change to the `CHANGELOG.md`. See also https://github.com/rust-lang/rust/issues/110020#issuecomment-1499599252.
2023-04-09 23:40:05 +02:00
Joshua Nelson
2b43f25e42 Fix x check --stage 1 when download-rustc is enabled 2023-04-09 14:28:06 -05:00
bors
39bf7777aa Auto merge of #109751 - bzEq:aix-gmake, r=Mark-Simulacrum
AIX uses gmake for GNU style Makefile

AIX's `make` is SystemV style, should use `gmake` for GNU style Makefile.
2023-04-09 18:11:59 +00:00
Joshua Nelson
464a24e68d compiletest: Use remap-path-prefix only in CI
This makes jump-to-definition work in most IDEs, as well as being easier
to understand for contributors.
2023-04-09 12:38:03 -05:00
Joshua Nelson
7ca7c8fbf3 compiletest: Give a better error message if node isn't installed 2023-04-09 12:36:30 -05:00
bors
7201301df6 Auto merge of #109500 - petrochenkov:modchainld, r=oli-obk
resolve: Preserve reexport chains in `ModChild`ren

This may be potentially useful for
- avoiding uses of `hir::ItemKind::Use` (which usually lead to correctness issues)
- preserving documentation comments on all reexports, including those from other crates
- preserving and checking stability/deprecation info on reexports
- all kinds of diagnostics

The second commit then migrates some hacky logic from rustdoc to `module_reexports` to make it simpler and more correct.
Ideally rustdoc should use `module_reexports` immediately at the top level, so `hir::ItemKind::Use`s are never used.
The second commit also fixes issues with https://github.com/rust-lang/rust/pull/109330 and therefore
Fixes https://github.com/rust-lang/rust/issues/109631
Fixes https://github.com/rust-lang/rust/issues/109614
Fixes https://github.com/rust-lang/rust/issues/109424
2023-04-09 13:05:56 +00:00
Erik Hofmayer
3fcc007f96 Add PR link to changelog entry for renaming of ignore-git 2023-04-09 12:36:15 +02:00
Erik Hofmayer
5c75dcdefa Add renaming of ignore-git to changelog 2023-04-09 12:31:13 +02:00
bors
709a97fffe Auto merge of #109173 - flba-eb:add-i586-qnx70-target, r=compiler-errors
Add tier 3 no_std x86 support for QNX Neutrino RTOS, version 7.0

This PR adds the target `i586-pc-nto-qnx700`, which targets QNX Neutrino RTOS version 7.0 on x86 32-bit targets.

cc: `@flba-eb` `@gh-tr`

This target falls under the umbrella of Tier 3 QNX Neutrino RTOS support documented in `nto-qnx.md` and previously started with #102701.
2023-04-09 07:36:53 +00:00
Yuki Okushi
66b3ad4a6f
Rollup merge of #110074 - majaha:config_toml_fix, r=jyn514
Make the "codegen" profile of `config.toml` download and build llvm from source.

The stated purpose of the codegen profile in config.toml is:

> `# These defaults are meant for contributors to the compiler who modify codegen or LLVM`

but `download-ci-llvm` must be set to be false for the llvm source to even be downloaded. This patch adds that in.

Also included: a small docs fix in `config.example.toml`
2023-04-09 12:35:55 +09:00
Yuki Okushi
ec1712f06e
Rollup merge of #110059 - gimbles:git-hash, r=ozkanonur
ignore_git → omit_git_hash

Fixes #110020
2023-04-09 12:35:54 +09:00
Yuki Okushi
f001f7beeb
Rollup merge of #110058 - gimbles:master, r=Nilstrieb
Remove `box_syntax` usage

Fixes #109978
2023-04-09 12:35:53 +09:00
bors
f8ed97ecc1 Auto merge of #110031 - compiler-errors:generic-elaboration, r=b-naber
Make elaboration generic over input

Combines all the `elaborate_*` family of functions into just one, which is an iterator over the same type that you pass in (e.g. elaborating `Predicate` gives `Predicate`s, elaborating `Obligation`s gives `Obligation`s, etc.)
2023-04-09 00:18:10 +00:00
bors
d1be642ce3 Auto merge of #109925 - notriddle:notriddle/item-union, r=GuillaumeGomez
rustdoc: migrate item_union to an Askama template
2023-04-08 21:59:49 +00:00
bors
4f87a63edc Auto merge of #109767 - GuillaumeGomez:rm-mention-missing_doc_code_examples, r=notriddle
Remove mention of `missing_doc_code_examples` lint from rustdoc book

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

r? `@notriddle`
2023-04-08 13:38:03 +00:00
Vadim Petrochenkov
9da9373bf0 rustc_middle: Remove Option from module_reexports query 2023-04-08 13:29:16 +03:00
Vadim Petrochenkov
b20ecc7c35 rustdoc: Migrate some logic to module_reexports 2023-04-08 13:29:16 +03:00
Vadim Petrochenkov
d11b9165ee resolve: Preserve reexport chains in ModChildren
This may be potentially useful for
- avoiding uses of `hir::ItemKind::Use`
- preserving documentation comments on all reexports
- preserving and checking stability/deprecation info on reexports
- all kinds of diagnostics
2023-04-08 13:29:15 +03:00
Nilstrieb
370084860a
Rollup merge of #110037 - notriddle:notriddle/theme-default, r=GuillaumeGomez
rustdoc: add test and bug fix for theme defaults

Part of https://github.com/rust-lang/rust/issues/66181
2023-04-08 10:26:14 +02:00
Nilstrieb
77639c0947
Rollup merge of #110030 - notriddle:notriddle/clean-up-js, r=GuillaumeGomez
rustdoc: clean up JS

* Stop checking `func` in `onEach`. It's always hard-coded right at the call site, so there's no point.
* Use the ternary operator in a few spots where it makes sense.
* No point in making `onEach` store `arr.length` in a variable if it's only used once anyway.
2023-04-08 10:26:13 +02:00
Matt Harding
ee554e2444 Make "codegen" config.toml profile build llvm 2023-04-08 07:16:24 +01:00
Gimbles
f1ded91a48 rm box_items
fix in plugin.md

fmt
2023-04-08 11:24:24 +05:30
Gimbles
c80a69440c s/ignore_git/omit_git_hash 2023-04-08 11:08:01 +05:30
bors
ba86600c94 Auto merge of #109448 - ozkanonur:download-beta-compiler-toolchain, r=Mark-Simulacrum
Download beta compiler toolchain in bootstrap if it doesn't yet exist

Blocker for #107812 and #99989

See: https://github.com/rust-lang/rust/pull/107812#discussion_r1143492202

r? `@jyn514`
2023-04-07 22:54:35 +00:00
ozkanonur
eeec73244d download beta compiler toolchain in bootstrap if it doesn't yet exist
This is needed for when the shell scripts bypass python altogether and run the downloaded
bootstrap directly. Changes are mainly provided from @jyn514, I just fixed the review notes.

Signed-off-by: ozkanonur <work@onurozkan.dev>
2023-04-08 00:30:49 +03:00
bors
da14081468 Auto merge of #102906 - nbdd0121:mir, r=wesleywiser,tmiasko
Refactor unwind in MIR

This makes unwinding from current `Option<BasicBlock>` into
```rust
enum UnwindAction {
	Continue,
	Cleanup(BasicBlock),
	Unreachable,
	Terminate,
}
```

cc `@JakobDegen` `@RalfJung` `@Amanieu`
2023-04-07 10:31:14 +00:00
bors
b6f6104a1f Auto merge of #110019 - jplatte:jplatte/stabilize-is-some-and, r=Amanieu
Stabilize is_some_and

This stabilizes the following public API:

```rust
impl<T> Option<T> {
    pub fn is_some_and(self, f: impl FnOnce(T) -> bool) -> bool;
}

impl<T, E> Result<T, E> {
    pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool;
    pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool;
}
```

Closes #93050 (tracking issue).

`@rustbot` label +T-libs-api -T-libs
2023-04-07 08:09:20 +00:00
Michael Howell
5cad51c0c5 rustdoc: add test and bug fix for theme defaults 2023-04-06 20:25:07 -07:00
bors
c934ce9e0a Auto merge of #110024 - matthiaskrgr:rollup-mydkufd, r=matthiaskrgr
Rollup of 6 pull requests

Successful merges:

 - #109806 (Workaround #109797 on windows-gnu)
 - #109957 (diagnostics: account for self type when looking for source of unsolved type variable)
 - #109960 (Fix buffer overrun in bootstrap and (test-only) symlink_junction)
 - #110013 (Label `non_exhaustive` attribute on privacy errors from non-local items)
 - #110016 (Run collapsed GUI test in mobile mode as well)
 - #110022 (fix: fix regression in #109203)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
2023-04-07 00:11:26 +00:00
Michael Goulet
758bedc104 Make elaborator generic 2023-04-06 23:30:22 +00:00
Michael Howell
815f5bbcc5 rustdoc: clean up JS
* Stop checking `func` in `onEach`. It's always hard-coded right
  at the call site, so there's no point.
* Use the ternary operator in a few spots where it makes sense.
* No point in making `onEach` store `arr.length` in a variable if
  it's only used once anyway.
2023-04-06 16:25:38 -07:00
Matthias Krüger
17ed06aad2
Rollup merge of #109960 - thomcc:symlink-junction-buffer-overrun, r=ChrisDenton
Fix buffer overrun in bootstrap and (test-only) symlink_junction

I don't think these can be hit in practice, due to their inputs being valid paths. It's also not security-sensitive code, but just... bad vibes.

I think this is still not really the right way to do this (in terms of path correctness), but is no worse than it was.

r? `@ChrisDenton`
2023-04-07 00:00:25 +02:00