Commit Graph

4383 Commits

Author SHA1 Message Date
Michael Goulet 5d064f2b1b Don't modify libstd to dump rustc ICEs
(cherry picked from commit 8ad2379407)
2023-09-21 16:18:16 -07:00
ouz-a 028f3407af Remove assert that checks type equality 2023-09-16 17:55:08 -04:00
bohan 82f6044d45 fix(resolve): update def if binding is warning ambiguity 2023-09-16 17:55:01 -04:00
Oli Scherer 9a545c58b4 Don't require Drop for [PhantomData<T>; N] where N and T are generic, if T requires Drop 2023-09-16 17:54:55 -04:00
León Orell Valerian Liehr f11aa34f39 Only suggest turbofish in patterns if we may recover 2023-09-16 17:54:48 -04:00
León Orell Valerian Liehr 309468c30d rustdoc: correctly deal with self ty params when eliding default object lifetimes 2023-09-09 19:04:20 -04:00
lcnr c14b2b69b9 unconstrained region vars: do not ICE ICE baby 2023-09-09 19:03:56 -04:00
Michael Howell 20ddd452b8 rustdoc: use unicode-aware checks for redundant explicit link fastpath
Fixes #115064

(cherry picked from commit 3df9b4d65d)
2023-09-01 08:52:07 -07:00
Camille GILLOT 5e8dc078e4 Restrict test to x86_64.
(cherry picked from commit 5529e2f893)
2023-09-01 08:51:52 -07:00
Camille GILLOT 5d2b78ba08 Do not produce fragment for ZST.
(cherry picked from commit 930b2e72ee)
2023-09-01 08:51:52 -07:00
Camille GILLOT b6e160eaa0 Add test with non-ZST.
(cherry picked from commit f49494ecce)
2023-09-01 08:51:52 -07:00
Camille GILLOT 85e1b4ec10 Do not forget to pass DWARF fragment information to LLVM.
(cherry picked from commit b3bbc22cb7)
2023-09-01 08:51:52 -07:00
Scott McMurray 29c9ed9bb2 Stop emitting non-power-of-two vectors in basic LLVM codegen
(cherry picked from commit 84e305dd93)
2023-09-01 08:51:29 -07:00
David Tolnay 0679b95ee6 Revert "Suggest using Arc on !Send/!Sync types"
This reverts commit 9de1a472b6.

(cherry picked from commit 823bacb6e3)
2023-08-30 14:34:04 -07:00
Tomasz Miąsko 4469dbe13a Contents of reachable statics is reachable
(cherry picked from commit 0383131f7f)
2023-08-30 14:33:15 -07:00
Jack Huey dc84bdedc6 Add projection obligations when comparing impl too
(cherry picked from commit 31032ecb15)
2023-08-24 18:42:29 -07:00
bors ff55fa3026 Auto merge of #113124 - nbdd0121:eh_frame, r=cjgillot
Add MIR validation for unwind out from nounwind functions + fixes to make validation pass

`@Nilstrieb`  This is the MIR validation you asked in https://github.com/rust-lang/rust/pull/112403#discussion_r1222739722.

Two passes need to be fixed to get the validation to pass:
* `RemoveNoopLandingPads` currently unconditionally introduce a resume block (even there is none to begin with!), changed to not do that
* Generator state transform introduces a `assert` which may unwind, and its drop elaboration also introduces many new `UnwindAction`s, so in this case run the AbortUnwindingCalls after the transformation.

I believe this PR should also fix Rust-for-Linux/linux#1016, cc `@ojeda`

r? `@Nilstrieb`
2023-08-20 09:58:52 +00:00
bors b6ab01a713 Auto merge of #115018 - matthiaskrgr:rollup-pxj0qdb, r=matthiaskrgr
Rollup of 5 pull requests

Successful merges:

 - #114834 (Avoid side-effects from `try_coerce` when suggesting borrowing LHS of cast)
 - #114968 (Fix UB in `std::sys::os::getenv()`)
 - #114976 (Ignore unexpected incr-comp session dirs)
 - #114999 (Migrate GUI colors test to original CSS color format)
 - #115000 (custom_mir: change Call() terminator syntax to something more readable)

r? `@ghost`
`@rustbot` modify labels: rollup
2023-08-20 08:11:08 +00:00
Matthias Krüger 2bca4b5913 Rollup merge of #115000 - RalfJung:custom-mir-call, r=compiler-errors,JakobDegen
custom_mir: change Call() terminator syntax to something more readable

I find our current syntax very hard to read -- I cannot even remember the order of arguments, and having the "next block" *before* the actual function call is very counter-intuitive IMO. So I suggest we use `Call(ret_val = function(v), next_block)` instead.

r? `@JakobDegen`
2023-08-20 08:34:05 +02:00
Matthias Krüger 4542711a69 Rollup merge of #114999 - GuillaumeGomez:migrate-gui-test-color-34, r=notriddle
Migrate GUI colors test to original CSS color format

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

This test needed more cleanup: first I removed duplication by using a function, then I merge similar rules which had the same values.

r? `@notriddle`
2023-08-20 08:34:04 +02:00
Matthias Krüger 33771dfaf0 Rollup merge of #114834 - compiler-errors:try_coerce-side-effects, r=lcnr
Avoid side-effects from `try_coerce` when suggesting borrowing LHS of cast

The name `try_coerce` is a bit misleading -- it has side-effects, so when it's used in diagnostics code, it sometimes causes spurious obligations to be registered which cause other errors to occur that really make no sense in context.

Addendum: let's just rename `try_coerce` to `coerce` -- the `try_` part doesn't really add much, imo.
2023-08-20 08:34:03 +02:00
bors 39e0749329 Auto merge of #114914 - compiler-errors:deduce-tait-in-future-output, r=lcnr
Normalize return type of `deduce_future_output_from_obligations`

Fixes #114909
Also confirmed to fix #114727 manually

Now that we have weak/lazy type aliases, we need to normalize those in future signatures to ensure that `replace_opaque_types_with_inference_vars` actually sees TAITs behind them. This isn't needed in the new solver, but added a test to make sure it doesn't regress there either.

r? types cc `@oli-obk` (who's gone, worst case can delay this PR until he's back)
2023-08-20 06:24:44 +00:00
bors 484cb4e78d Auto merge of #114332 - nbdd0121:riscv, r=compiler-errors
Fix ABI flags in RISC-V/LoongArch ELF file generated by rustc

Fix #114153

It turns out the current way to set these flags are completely wrong. In LLVM the target ABI is used instead of target features to determine these flags.

Not sure how to write a test though. Or maybe a test isn't necessary because this affects only those touching target json?

r? `@Nilstrieb`
2023-08-20 04:38:08 +00:00
bors 82c5732b9a Auto merge of #113966 - lu-zero:relocation-model-in-cfg, r=bjorn3
Add the relocation_model to the cfg

This way is possible to write inline assembly code aware of it.
2023-08-20 02:48:33 +00:00
bors 9c699a40cc Auto merge of #113167 - ChAoSUnItY:redundant_explicit_link, r=GuillaumeGomez
rustdoc: Add lint `redundant_explicit_links`

Closes #87799.
- Lint warns by default
- Reworks link parser to cache original link's display text

r? `@jyn514`
2023-08-20 01:04:22 +00:00
Matthias Krüger 03455c8895 Rollup merge of #114934 - lcnr:generalize-substs-relate, r=compiler-errors
instantiate response: no unnecessary new universe

this previously was a off-by-one error.

fixes https://github.com/rust-lang/trait-system-refactor-initiative/issues/55

r? ````@compiler-errors````
2023-08-20 00:28:31 +02:00
Michael Goulet 822caa8b80 Avoid side-effects from try_coerce when suggesting borrowing LHS of cast 2023-08-19 22:12:51 +00:00
Ralf Jung 7a6346660e custom_mir: change Call() terminator syntax to something more readable 2023-08-19 22:41:33 +02:00
Guillaume Gomez 03a3d24a11 Migrate GUI colors test to original CSS color format 2023-08-19 17:52:20 +02:00
Guillaume Gomez 87a0efbf02 Merge values with same colors 2023-08-19 17:52:15 +02:00
Guillaume Gomez ba33bb4569 Use function to remove code duplication for search-form-elements.goml test 2023-08-19 17:52:12 +02:00
Matthias Krüger d8bde4878a Rollup merge of #114972 - nbdd0121:const_check, r=compiler-errors
Add a test to check that inline const is in required_consts

This was a commit in #104087. This commit, as a test, can go in while the overall inline const stabilisation is blocked.

Suggested in https://github.com/rust-lang/rust/issues/76001#issuecomment-1315975027
2023-08-19 03:27:00 +02:00
Matthias Krüger 2b13128be8 Rollup merge of #114958 - ferrocene:optimization-remarks-dir-pgo, r=lqd
`ignore-cross-compile` on `optimization-remarks-dir-pgo` test

We noticed this on our upstream pull on ferrocene a week ago as it was failing our CI. The test attempts to run the produced binary which won't work when cross compiling.
2023-08-19 03:26:59 +02:00
lcnr ee04744e64 change to known bug 2023-08-18 23:59:49 +02:00
lcnr 11716830ac instantiate response: no unnecessary new universe
this previously was a off-by-one error.
2023-08-18 23:55:28 +02:00
Luca Barbato c0394c8ac0 Add the relocation_model to the cfg
This way is possible to write inline assembly code aware of it.
2023-08-18 19:57:28 +02:00
bors ee5cb9e3a6 Auto merge of #114915 - nnethercote:Nonterminal-cleanups, r=petrochenkov
`Nonterminal`-related cleanups

In #114647 I am trying to remove `Nonterminal`. It has a number of preliminary cleanups that are worth merging even if #114647 doesn't merge, so let's do them in this PR.

r? `@petrochenkov`
2023-08-18 16:07:40 +00:00
Gary Guo 26fe88fedb Add a test to check that inline const is in required_consts
Suggested in
https://github.com/rust-lang/rust/issues/76001#issuecomment-1315975027
2023-08-18 17:07:07 +01:00
Gary Guo aaf1b1bc93 Bless test changes 2023-08-18 15:08:07 +01:00
Gary Guo cec8e09edf Run AbortUnwindingCalls after generator transform 2023-08-18 13:51:42 +01:00
bors b9177c0adb Auto merge of #111908 - c410-f3r:yetegdfqwer, r=petrochenkov
[RFC-3086] Restrict the parsing of `count`

Fix #111904

The original RFC didn't mention the possibility of using `${count(t,)}` and such thing isn't very semantically accurate which can lead to confusion.
2023-08-18 11:32:56 +00:00
bors 0f7f6b7061 Auto merge of #114948 - compiler-errors:normalize-before-freeze, r=lcnr
Normalize before checking if local is freeze in `deduced_param_attrs`

Not normalizing the local type eagerly results in possibly exponential amounts of normalization happening downstream in `is_freeze_raw`.

Fixes #113372
2023-08-18 08:15:57 +00:00
Lukas Wirth fb148f682e ignore-cross-compile on optimization-remarks-dir-pgo test 2023-08-18 09:41:08 +02:00
Kyle Lin 25919b09a9 Add regression test for inline doc 2023-08-18 15:31:36 +08:00
Kyle Lin 62113f6657 fix unescaped_backticks error 2023-08-18 15:31:32 +08:00
Kyle Lin ecb26376e5 narrow down the lint trigger constraint 2023-08-18 15:19:22 +08:00
Kyle Lin fe17ae3af6 add missing deny lint 2023-08-18 15:19:18 +08:00
Kyle Lin 0e2f2cccd7 Add check-pass tests and fix test behavior 2023-08-18 15:19:18 +08:00
Kyle Lin 5ce6cc7df3 Still resolving rustdoc resolution panicking 2023-08-18 15:19:17 +08:00
Kyle Lin 46df95817d Support Reference & ReferenceUnknown link lint 2023-08-18 15:19:16 +08:00