Commit Graph

221140 Commits

Author SHA1 Message Date
Michael Goulet 5485a54e19
Rollup merge of #109913 - scottmcm:index-slice, r=WaffleLapkin
Doc-comment  `IndexVec::from_elem` and use it in a few more places

Since this PR is a reply to https://github.com/rust-lang/rust/pull/109819#discussion_r1156128164,
r? ``@WaffleLapkin``
2023-04-04 09:27:45 -07:00
Michael Goulet ed17b599df
Rollup merge of #109901 - cjgillot:validate-debuginfo, r=b-naber
Enforce VarDebugInfo::Place in MIR validation.
2023-04-04 09:27:44 -07:00
Michael Goulet 4d32de6fcb
Rollup merge of #109838 - clubby789:non-exhaustive-span, r=Nilstrieb
Fix `non_exhaustive_omitted_patterns` lint span

Fixes #109837

`DUMMY_SP` was being passed as the span in many cases where we have a span available to use. This meant that the location of the violating pattern wasn't shown, or the list of un-covered variants

r? `@Nilstrieb`
2023-04-04 09:27:44 -07:00
Michael Goulet ec22850c2c
Rollup merge of #109723 - oli-obk:ast_refactor, r=Nilstrieb
Pull some tuple variant fields out into their own struct

This is groundwork for adding more fields to those new structs, but I believe the change to be useful on its own.

r? `@Nilstrieb` but feel free to reroll for `compiler`
2023-04-04 09:27:43 -07:00
Oli Scherer 373807a95c Rename `ast::Static` to `ast::StaticItem` to match `ast::ConstItem` 2023-04-04 15:34:40 +00:00
Oli Scherer 4bebdd7104 box a bunch of large types 2023-04-04 13:58:50 +00:00
bors be8e5ba157 Auto merge of #109917 - compiler-errors:remove-relation-methods, r=oli-obk
Remove `intercrate` and `mark_ambiguous` from `TypeRelation`

Fixes #109863

Pulls this logic into `super_combine_tys`, which has access to `InferCtxt` and takes a `ObligationEmittingRelation` -- both of which simplify the logic here.

r? `@oli-obk` `@aliemjay`
2023-04-04 11:08:23 +00:00
Oli Scherer ec74653652 Split out ast::ItemKind::Const into its own struct 2023-04-04 09:44:50 +00:00
Oli Scherer e3828777a6 rust-analyzer guided tuple field to named field 2023-04-04 09:44:50 +00:00
Oli Scherer b08a557f80 rust-analyzer guided enum variant structification 2023-04-04 09:44:45 +00:00
bors 7c96e40da8 Auto merge of #109891 - the8472:llvm-16-fixes-79308, r=nikic
llvm 16 finally reconizes some additional vec in-place conversions as noops

closes #79308

r? `@nikic`
2023-04-04 08:54:33 +00:00
bors 35d06f9c74 Auto merge of #109599 - notriddle:notriddle/use-redundant-glob, r=petrochenkov
diagnostics: account for glob shadowing when linting redundant imports

Fixes #92904
2023-04-04 06:41:27 +00:00
bors bd991d9953 Auto merge of #109888 - Mark-Simulacrum:balanced-compression, r=pietroalbini
Remove optimal xz settings from CI

This is a companion PR to rust-lang/promote-release#58, which moves the relevant optimal code to rust-lang/promote-release. As mentioned in the comments of that PR, this is expected to cut CI costs (and time, though predominantly felt on fast builders) and reduce wasted resources due to in-practice single-threaded compression not using the full 8+ vCPU builders we have available.

This probably shouldn't land before that PR + a simpleinfra change to enable the recompression of xz artifacts. But if it does land, it's just a matter of a few nightlies with slightly larger artifacts, so not a big deal.

r? `@pietroalbini`
2023-04-04 03:54:22 +00:00
bors eb48e9771a Auto merge of #109876 - jsha:uniquify-intra-doc, r=notriddle
rustdoc: make intra-doc link pass non-quadratic for repeated links

In the collect_intra_doc_links pass, links to a given item that occurred repeatedly were getting inserted into a `Vec<clean::ItemLink>` repeatedly. This led to n^2 behavior (where n = the number of pages generated), particularly for the intra-doc link on the `Into<U> for T where U: From<T>` blanket implementation, since that link appears on every single struct page.

Fixes #109851
2023-04-04 01:12:24 +00:00
Michael Goulet a368316905 Remove intercrate and mark_ambiguous from Relation 2023-04-04 00:09:12 +00:00
bors cf7ada217c Auto merge of #109911 - JohnTitor:rollup-7gjiqim, r=JohnTitor
Rollup of 6 pull requests

Successful merges:

 - #109783 (Update contributing links for rustc-dev-guide changes)
 - #109883 (Add links to <cell.rs>)
 - #109889 (Update book, rustc-dev-guide, rust-by-example)
 - #109896 (Never consider int and float vars for `FnPtr` candidates)
 - #109902 (Add async-await test for #107414)
 - #109903 (Add Chris Denton to `.mailmap`)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
2023-04-03 22:29:54 +00:00
Scott McMurray 5c3e5af2ed Doc-comment `IndexVec::from_elem` and use it in a few more places 2023-04-03 14:29:32 -07:00
Yuki Okushi b691507b73
Rollup merge of #109903 - ChrisDenton:map-me, r=compiler-errors
Add Chris Denton to `.mailmap`
2023-04-04 05:52:36 +09:00
Yuki Okushi 52dad9933b
Rollup merge of #109902 - Nilstrieb:107414test, r=compiler-errors
Add async-await test for #107414

fixes #107414

r? `@cjgillot`
2023-04-04 05:52:36 +09:00
Yuki Okushi 7d3207be97
Rollup merge of #109896 - Nilstrieb:integers-are-not-fn-ptrs-remember-this-dear-transmuter, r=compiler-errors
Never consider int and float vars for `FnPtr` candidates

This solves a regression where `0.0.cmp()` was ambiguous when a custom trait with a `cmp` method was in scope.

For integers it shouldn't be a problem in practice so I wasn't able to add a test.

I'm not sure whether there could be more issues hidden in the shadows as mentioned in the issue, but this should at least fix the problematic regression immediately.

fixes #109892

r? oli-obk
2023-04-04 05:52:35 +09:00
Yuki Okushi 4e25d20f95
Rollup merge of #109889 - ferrocene:pa-update-books, r=ehuss
Update book, rustc-dev-guide, rust-by-example

Changes from `rust-lang/book`:

* https://github.com/rust-lang/book/pull/3598

Changes from `rust-lang/rust-by-example`:

* https://github.com/rust-lang/rust-by-example/pull/1695
* https://github.com/rust-lang/rust-by-example/pull/1694
* https://github.com/rust-lang/rust-by-example/pull/1693
* https://github.com/rust-lang/rust-by-example/pull/1688
* https://github.com/rust-lang/rust-by-example/pull/1696

Changes from `rust-lang/rustc-dev-guide`:

* https://github.com/rust-lang/rustc-dev-guide/pull/1655
* https://github.com/rust-lang/rustc-dev-guide/pull/1657
* https://github.com/rust-lang/rustc-dev-guide/pull/1659
* d436bf134e...fca8af6c15

r? `@ehuss`
2023-04-04 05:52:35 +09:00
Yuki Okushi ed5e2ddeed
Rollup merge of #109883 - skaunov:patch-1, r=thomcc
Add links to <cell.rs>

`UnsafeCell` page could benefit too from having links to these most popular structs in the module.
2023-04-04 05:52:34 +09:00
Yuki Okushi bce7253178
Rollup merge of #109783 - jyn514:dev-guide-links, r=Mark-Simulacrum
Update contributing links for rustc-dev-guide changes

Companion PR to https://github.com/rust-lang/rustc-dev-guide/pull/1653.

- Remove unused reference link in CONTRIBUTING.md
- Change the contributing_url for triagebot to the getting started page
2023-04-04 05:52:34 +09:00
bors 48829ea74b Auto merge of #109771 - uweigand:s390x-miri-libffi, r=oli-obk
Increase libffi version to 3.2 to support s390x

libffi versions prior to 3.2 have no support for s390x, causing the Miri build to fail on our platform.
2023-04-03 19:53:24 +00:00
Chris Denton 07e3bd1ffb
Add Chris Denton to `.mailmap` 2023-04-03 20:07:35 +01:00
Nilstrieb 9e579cc10c Add test 2023-04-03 20:45:02 +02:00
Camille GILLOT a84909c1e7 Enforce VarDebugInfo::Place in MIR validation. 2023-04-03 17:44:12 +00:00
bors bf41e753ec Auto merge of #109819 - scottmcm:index-slice, r=WaffleLapkin
Use `&IndexSlice` instead of `&IndexVec` where possible

All the same reasons as for `[T]`: more general, less pointer chasing, and `&mut IndexSlice` emphasizes that it doesn't change *length*.

r? `@ghost`
2023-04-03 16:41:49 +00:00
Nilstrieb ca79b82c6c Never consider int and float vars for `FnPtr` candidates
This solves a regression where `0.0.cmp()` was ambiguous when a custom
trait with a `cmp` method was in scope.

FOr integers it shouldn't be a problem in practice so I wasn't able to
add a test.
2023-04-03 15:25:06 +00:00
The 8472 7a70647f19 llvm 16 finally reconizes some additional vec in-place conversions as noops 2023-04-03 15:29:46 +02:00
bors 1767585509 Auto merge of #109756 - cr1901:msp-shift, r=Mark-Simulacrum
Update compiler-builtins to 0.1.91 to bring in msp430 shift primitive…

… fixes.

This fixes unsoundness on MSP430 where `compiler-builtins` and LLVM didn't agree on the width of the shift amount argument of the shifting primitives (4 bytes vs 2 bytes). See https://github.com/rust-lang/compiler-builtins/pull/522 for more details.
2023-04-03 13:09:08 +00:00
Pietro Albini a6431e96b1
update rust-by-example 2023-04-03 14:12:48 +02:00
Pietro Albini 49795b40cf
update rustc dev guide 2023-04-03 14:12:13 +02:00
Mark Rousskov 0da526b5f3 Remove optimal xz settings from CI
This is a companion PR to rust-lang/promote-release#58, which moves the
relevant optimal code to rust-lang/promote-release. As mentioned in the
comments of that PR, this is expected to cut CI costs (and time, though
predominantly felt on fast builders) and reduce wasted resources due to
in-practice single-threaded compression not using the full 8+ vCPU
builders we have available.
2023-04-03 07:44:58 -04:00
Ulrich Weigand 09541b5e1b Increase libffi version to 3.2 to support s390x 2023-04-03 13:27:51 +02:00
bors f13ccefb5b Auto merge of #108448 - ishitatsuyuki:binary-heap, r=Mark-Simulacrum
binary_heap: Optimize Extend implementation.

This PR makes the `Extend` implementation for `BinaryHeap` no longer rely on specialization, so that it always use the bulk rebuild optimization that was previously only available for the `Vec` specialization.
2023-04-03 10:30:20 +00:00
Pietro Albini 5d842a6f32
update book 2023-04-03 11:44:06 +02:00
bors 932c173ca1 Auto merge of #109884 - matthiaskrgr:rollup-5wapig9, r=matthiaskrgr
Rollup of 7 pull requests

Successful merges:

 - #109526 (LIBPATH is used as dylib's path environment variable on AIX)
 - #109642 (check for missing codegen backeng config)
 - #109722 (Implement read_buf for RustHermit)
 - #109856 (fix(middle): emit error rather than delay bug when reaching limit)
 - #109868 (Improve PR job names in Github Actions preview)
 - #109871 (Include invocation start times)
 - #109873 (Move some UI tests into subdirectories)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
2023-04-03 07:27:58 +00:00
Matthias Krüger 22df7107bd
Rollup merge of #109873 - jyn514:subdirectories, r=compiler-errors
Move some UI tests into subdirectories
2023-04-03 08:58:55 +02:00
Matthias Krüger 41cd454228
Rollup merge of #109871 - Mark-Simulacrum:metrics-timestamp, r=ozkanonur
Include invocation start times

For multi-invocation builders (e.g., dist-x86_64-linux) this timestamp is necessary to correlate the data in the metrics JSON with other data sources (e.g., logs, cpu-usage CSV, etc.). Such correlation may not be perfect but is sometimes helpful and awkward to do otherwise.
2023-04-03 08:58:54 +02:00
Matthias Krüger 9007ee9f1c
Rollup merge of #109868 - jyn514:ci-names, r=Mark-Simulacrum
Improve PR job names in Github Actions preview

Fixes https://rust-lang.zulipchat.com/#narrow/stream/242791-t-infra/topic/PR.20CI.20job.20names.

Before: `CI / PR (mingw-check, false, ubuntu-20.04-16core-64gb) (pull_request)`
After:  `CI / PR - mingw-check (pull_request)`

r? ``@jyn514``
2023-04-03 08:58:54 +02:00
Matthias Krüger 99a71dc4d6
Rollup merge of #109856 - bvanjoi:fix-issue-109304, r=compiler-errors
fix(middle): emit error rather than delay bug when reaching limit

close #109304
2023-04-03 08:58:53 +02:00
Matthias Krüger f2f5efce9c
Rollup merge of #109722 - hermitcore:read, r=Mark-Simulacrum
Implement read_buf for RustHermit

In principle, this PR extends rust-lang/rust#108326 for RustyHermit.
2023-04-03 08:58:53 +02:00
Matthias Krüger cc6a279f05
Rollup merge of #109642 - lenko-d:rust_codegen-backends_interacts_confusingly_with_paths, r=Mark-Simulacrum
check for missing codegen backeng config

Fixes [#109610](https://github.com/rust-lang/rust/issues/109610)
2023-04-03 08:58:52 +02:00
Matthias Krüger 7192ef3efd
Rollup merge of #109526 - bzEq:aix-libpath, r=Mark-Simulacrum
LIBPATH is used as dylib's path environment variable on AIX

See https://4js.com/online_documentation/fjs-fgl-3.00.05-manual-html/c_fgl_installation_017.html.
2023-04-03 08:58:52 +02:00
Sergey Kaunov abc61d23de
Add links to <cell.rs>
`UnsafeCell` page could benefit too from having links to these most popular structs in the module.
2023-04-03 09:18:14 +03:00
bors d0eed58a1e Auto merge of #108288 - ozkanonur:hotfix-90244, r=Mark-Simulacrum
fix `build --stage 2 compiler/rustc` panic

Skip assembling(which causes panic due to not found `.librustc.stamp` file) process
for stage3(since it has problems with sysroot) if full-bootstrap isn't used.

Resolves #90244
2023-04-03 04:54:02 +00:00
Jacob Hoffman-Andrews d9edb05d44 rustdoc: fix quadratic time in intra-doc link pass
In the collect_intra_doc_links pass, links to a given item that occurred
repeatedly were getting inserted into a Vec<clean::ItemLink> repeatedly.
This led to n^2 behavior (where n = the number of pages generated), particularly
for the intra-doc link on the `Into<U> for T where U: From<T>` blanket
implementation, since that link appears on every single struct page.
2023-04-02 20:46:02 -07:00
bohan d8a4e7cf51 fix(middle): emit error rather than delay bug when reaching limit 2023-04-03 11:08:14 +08:00
bors 33289132ec Auto merge of #109770 - jyn514:run-make-fulldeps, r=Mark-Simulacrum
Move almost all run-make-fulldeps tests to run-make

They pass fine, and this avoids having to build the compiler twice.

There are few enough tests left that I think it should be possible to get rid of this test suite altogether, but I expect this PR to fail at least a few times in bors and want to get it merged before tackling further changes. cc https://github.com/rust-lang/rust/pull/83775

Fixes https://github.com/rust-lang/rust/issues/66085. Fixes https://github.com/rust-lang/rust/issues/83773.
2023-04-03 01:34:05 +00:00