Camille GILLOT
37209dcddd
Retire is_foreign_item query.
2023-05-17 15:32:17 +00:00
bors
ad23942ad4
Auto merge of #111680 - Dylan-DPC:rollup-1p45gxt, r=Dylan-DPC
...
Rollup of 6 pull requests
Successful merges:
- #110930 (Don't expect normalization to succeed in elaborate_drops)
- #111557 (Revert "Validate resolution for SelfCtor too.")
- #111565 (rustdoc-json: Add tests for visibility of impls)
- #111588 (Emits E0599 when meeting `MyTrait::missing_method`)
- #111625 (Move rustc_middle/src/ty/query.rs to rustc_middle/src/query/plumbing.rs)
- #111674 (Add missing backslash in HTML string)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
2023-05-17 15:17:13 +00:00
Michael Woerister
927e1efaaf
Don't sort output of debugger_visualizer query because it already is in deterministic order.
2023-05-17 16:02:22 +02:00
Dylan DPC
b0d92c2b70
Rollup merge of #111674 - GuillaumeGomez:add-missing-backslash, r=notriddle
...
Add missing backslash in HTML string
Found this missing one when looking at code.
r? `@notriddle`
2023-05-17 19:11:56 +05:30
Dylan DPC
3df55382d4
Rollup merge of #111625 - Zoxc:rustc_middle-query-move, r=cjgillot
...
Move rustc_middle/src/ty/query.rs to rustc_middle/src/query/plumbing.rs
This just keeps the query modules together.
r? `@cjgillot`
2023-05-17 19:11:55 +05:30
Dylan DPC
291ced5e9a
Rollup merge of #111588 - MU001999:diag/improve-e0782, r=fee1-dead
...
Emits E0599 when meeting `MyTrait::missing_method`
Fixes #111312
2023-05-17 19:11:55 +05:30
Dylan DPC
703323e490
Rollup merge of #111565 - aDotInTheVoid:rdj-impl-viz, r=GuillaumeGomez
...
rustdoc-json: Add tests for visibility of impls
[Apparrently rustdoc use to give these `crate` instead of `default`](https://github.com/obi1kenobi/trustfall-rustdoc-adapter/compare/rustdoc-v24...rustdoc-v25#diff-58e57a0fc73d1353fa3a057f0fe81c6ecfd4548b429cef1aee36b1c84d8d15a4L366 ). CC `@obi1kenobi`
The output is arguably still buggy as to weather some of these impls should be stripped, but that's a seperate issue and shouldn't block adding these tests (#111564 )
r? `@GuillaumeGomez`
2023-05-17 19:11:54 +05:30
Dylan DPC
ff364b0082
Rollup merge of #111557 - cjgillot:revert-111020, r=petrochenkov
...
Revert "Validate resolution for SelfCtor too."
This reverts commit 83453408a0
.
That PR introduced a breaking change.
Fixes https://github.com/rust-lang/rust/issues/111541
Reopens https://github.com/rust-lang/rust/issues/89868
r? `@petrochenkov`
2023-05-17 19:11:54 +05:30
Dylan DPC
828caa80a9
Rollup merge of #110930 - b-naber:normalize-elaborate-drops, r=cjgillot
...
Don't expect normalization to succeed in elaborate_drops
Fixes https://github.com/rust-lang/rust/issues/110682
This was exposed through the changes in https://github.com/rust-lang/rust/pull/109247 , which causes more things to be inlined. Inlining can happen before monomorphization, so we can't expect normalization to succeed. In the elaborate_drops analysis we currently have [this call](033aa092ab/compiler/rustc_mir_dataflow/src/elaborate_drops.rs (L278)
) to `normalize_erasing_regions`, which ICEs when normalization fails. The types are used to infer [whether the type needs a drop](033aa092ab/compiler/rustc_mir_dataflow/src/elaborate_drops.rs (L374)
), where `needs_drop` itself [uses `try_normalize_erasing_regions`](033aa092ab/compiler/rustc_middle/src/ty/util.rs (L1121)
).
~[`instance_mir`](https://doc.rust-lang.org/stable/nightly-rustc/rustc_middle/ty/context/struct.TyCtxt.html#method.instance_mir ) isn't explicit about whether it expects the instances corresponding to the `InstanceDef`s to be monomorphized (though I think in all other contexts the function is used post-monomorphization), so the use of `instance_mir` in inlining doesn't necessarily seem wrong to me.~
2023-05-17 19:11:53 +05:30
Camille GILLOT
8c2c695c9e
Simplify back-edge logic.
2023-05-17 12:18:55 +00:00
Camille GILLOT
ada7f1c2c4
Do not clone dominator tree for SSA analysis.
2023-05-17 12:17:33 +00:00
Maybe Waffle
f542778533
Drive-by cleanup: debug::term_type
=> TerminatorKind::name
2023-05-17 11:27:37 +00:00
Maybe Waffle
03d5f9b783
rustc_mir_build
: drive-by-cleaup: replace nested ifs with a match
2023-05-17 11:27:37 +00:00
Maybe Waffle
5ae51d69a3
rustc_mir_build
: drive-by-cleanup: remove some local mutable state
2023-05-17 11:27:37 +00:00
Amanieu d'Antras
67c0cfe8b5
Remove libs message about ACPs from triagebot
...
The libs team is currently reworking the ACP process and we don't want
to encourage people to submit new ACPs in the meantime.
2023-05-17 13:23:14 +02:00
Camille GILLOT
fa8598cb50
Merge DominatorTree and Dominators.
2023-05-17 10:37:29 +00:00
Camille GILLOT
4bbdb64016
Typo.
2023-05-17 10:29:12 +00:00
Camille GILLOT
7bd4fde684
Compute dominators on demand for borrowck.
2023-05-17 10:28:33 +00:00
Camille GILLOT
ae318e3444
Remove outdated comment.
2023-05-17 10:26:04 +00:00
Urgau
3281060607
Add simple regression test for --print=native-static-libs
2023-05-17 12:07:12 +02:00
yukang
c3394b3eaa
Fix #107910 , Shorten backtraces in ICEs
2023-05-17 17:56:26 +08:00
Guillaume Gomez
54f882e478
Add missing backslash in HTML string
2023-05-17 11:43:13 +02:00
Michael Woerister
cfca5b0b87
Add/improve tests for debugger_visualizer change detection.
2023-05-17 11:39:11 +02:00
Camille GILLOT
6f271dc49c
Cache dominators.
2023-05-17 09:36:12 +00:00
Tomasz Miąsko
aa1267f630
Preprocess dominator tree to answer queries in O(1)
2023-05-17 09:36:12 +00:00
Urgau
701bf2d420
Fix issue #111643 by adding the local used libraries
2023-05-17 11:25:10 +02:00
mu001999
db64512422
Emits E0599 when meeting MyTrait::missing_method
2023-05-17 16:59:39 +08:00
Nikita Popov
c544fc3584
Update to LLVM 16.0.4
2023-05-17 10:35:12 +02:00
bors
c2ccc855e7
Auto merge of #111671 - Dylan-DPC:rollup-1jy5r16, r=Dylan-DPC
...
Rollup of 6 pull requests
Successful merges:
- #110145 (Share slice of bytes)
- #111043 (Stabilize feature `cstr_is_empty`)
- #111648 (Remove `LangItems::require`)
- #111649 (Add derive for `core::marker::ConstParamTy`)
- #111654 (Add a conversion from `&mut T` to `&mut UnsafeCell<T>`)
- #111661 (Erase regions of type in `offset_of!`)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
2023-05-17 06:42:07 +00:00
Dylan DPC
0720743836
Rollup merge of #111661 - clubby789:offset-of-erase-regions, r=compiler-errors
...
Erase regions of type in `offset_of!`
Fixes #111657
2023-05-17 11:13:58 +05:30
Dylan DPC
71fdb95272
Rollup merge of #111654 - JoJoJet:unsafe-cell-from-mut-lib, r=joshtriplett
...
Add a conversion from `&mut T` to `&mut UnsafeCell<T>`
Provides a safe way of downgrading an exclusive reference into an alias-able `&UnsafeCell<T>` reference.
ACP: https://github.com/rust-lang/libs-team/issues/198 .
2023-05-17 11:13:57 +05:30
Dylan DPC
bc3b94a486
Rollup merge of #111649 - Nilstrieb:derive-const-param-ty, r=BoxyUwU
...
Add derive for `core::marker::ConstParamTy`
This makes it easier to implement it for a type, just like `Copy`.
`@BoxyUwU` half asked me to add it
2023-05-17 11:13:57 +05:30
Dylan DPC
506b50ee39
Rollup merge of #111648 - Nilstrieb:language-items, r=WaffleLapkin
...
Remove `LangItems::require`
It's just a short wrapper used by `tcx.require_lang_item`. Deleting it gives us a negative diff.
2023-05-17 11:13:56 +05:30
Dylan DPC
e7176dbfd8
Rollup merge of #111648 - Nilstrieb:language-items, r=WaffleLapkin
...
Remove `LangItems::require`
It's just a short wrapper used by `tcx.require_lang_item`. Deleting it gives us a negative diff.
2023-05-17 11:13:56 +05:30
Dylan DPC
5b58471c4c
Rollup merge of #111043 - jmillikin:cstr-is-empty, r=dtolnay
...
Stabilize feature `cstr_is_empty`
Fixes #102444
ACP: https://github.com/rust-lang/libs-team/issues/106
2023-05-17 11:13:56 +05:30
Dylan DPC
2a5c4baf68
Rollup merge of #110145 - WaffleLapkin:share_slice_of_bytes, r=Nilstrieb
...
Share slice of bytes
r? `@Nilstrieb`
cc `@noamtashma`
2023-05-17 11:13:55 +05:30
bors
6c64870fa6
Auto merge of #111630 - BoxyUwU:ty_const_debug_formatting, r=compiler-errors
...
debug format `Const`'s less verbosely
Not user visible change only visible to people debugging const generics.
Currently debug output for `ty::Const` is super verbose (even for `-Zverbose` lol), things like printing infer vars as `Infer(Var(?0c))` instead of just `?0c`, bound vars and placeholders not using `^0_1` or `!0_1` syntax respectively. With these changes its imo better but not perfect:
`Const { ty: usize, kind: ^0_1 }`
is still a lot for not much information. not entirely sure what to do about that so not dealing with it yet.
Need to do formatting for `ConstKind::Expr` at some point too since rn it sucks (doesn't even print anything with `Display`) not gonna do that in this PR either.
r? `@compiler-errors`
2023-05-17 03:37:54 +00:00
bors
c0784db3de
Auto merge of #111664 - weihanglo:update-cargo, r=weihanglo
...
Update cargo
8 commits in 13413c64ff88dd6c2824e9eb9374fc5f10895d28..09276c703a473ab33daaeb94917232e80eefd628
2023-05-10 13:46:18 +0000 to 2023-05-16 21:43:35 +0000
- docs: Clarify that crates.io doesn't link to docs.rs right away. (rust-lang/cargo#12146 )
- docs(ref): Clarify MSRV is generally minor (rust-lang/cargo#12122 )
- Fix `check_for_file_and_add`'s check for conflict file (rust-lang/cargo#12135 )
- Fixes: Incorrect document link (rust-lang/cargo#12143 )
- doc: intra-doc links and doc comments for build script (rust-lang/cargo#12133 )
- Add Cargo team charter. (rust-lang/cargo#12010 )
- Remove useless drop of copy type (rust-lang/cargo#12136 )
- Fix dep/feat syntax with hidden implicit optional dependencies (rust-lang/cargo#12130 )
r? ghost
2023-05-17 00:59:44 +00:00
Weihang Lo
41a0286afc
Update cargo
2023-05-17 01:32:31 +01:00
John Kåre Alsaker
54b582a0e8
Finish move of query.rs
2023-05-17 01:57:21 +02:00
John Kåre Alsaker
d169581ea7
Move rustc_middle/src/ty/query.rs to rustc_middle/src/query/plumbing.rs
2023-05-17 01:57:00 +02:00
Catherine
ae40b7f8cc
fix example heading in string_slice
2023-05-16 18:11:20 -05:00
bors
5c3a3362f8
Auto merge of #111556 - cjgillot:copy-prop-nrvo, r=oli-obk
...
Merge return place with other locals in CopyProp.
This reintroduces a limited form of NRVO.
r? wg-mir-opt
2023-05-16 22:27:08 +00:00
clubby789
35cf5726e3
Erase regions of type in offset_of!
2023-05-16 21:36:42 +00:00
Finn Bear
f0c9c1eb19
Use an unbounded lifetime in String::leak.
2023-05-16 13:39:17 -07:00
clubby789
eaf47a30cb
Better diagnostic for use Self::..
2023-05-16 20:30:48 +00:00
JoJoJet
ffacb8861a
add UnsafeCell::from_mut
2023-05-16 15:36:05 -04:00
Michael Woerister
d623668551
Move DebuggerVisualizerFile types from rustc_span to rustc_middle
2023-05-16 21:03:28 +02:00
bors
e77366b57b
Auto merge of #111650 - matthiaskrgr:rollup-n7w17v4, r=matthiaskrgr
...
Rollup of 7 pull requests
Successful merges:
- #107680 (Hide repr attribute from doc of types without guaranteed repr)
- #111488 (Use error term in projection if missing associated item in new solver)
- #111533 (Handle error body in generator layout)
- #111573 (Erase `ReError` properly)
- #111592 (Change Vec examples to not assert exact capacity except where it is guaranteed)
- #111610 (fix(diagnostic): wrap parens for ref impl trait param)
- #111642 ([rustdoc] Only keep impl blocks from bodies)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
2023-05-16 18:43:04 +00:00
Matthias Krüger
54a49769fa
Rollup merge of #111642 - GuillaumeGomez:only-impl-from-bodies, r=notriddle
...
[rustdoc] Only keep impl blocks from bodies
Fixes https://github.com/rust-lang/rust/issues/111415 .
The problem was that we kept everything inside bodies whereas only impl blocks are actually accessible from outside bodies.
r? `@notriddle`
2023-05-16 20:12:18 +02:00