Nicholas Nethercote
e49a1470ba
Factor out insert_or_error.
...
It appears identically as a closure in two functions.
Also change its return type from `bool` to `Option<()>` so it can be
used with `?`.
2023-10-06 14:57:09 +11:00
Nicholas Nethercote
108e541cc2
Remove unused FileName::CfgSpec.
2023-10-06 14:57:09 +11:00
Nicholas Nethercote
442a66d385
Remove unneeded dependency.
2023-10-06 14:57:09 +11:00
Nicholas Nethercote
29ed8e492a
Remove the MaybeTransmutableQuery<&'l Dfa<...>, C> impl.
...
Because there is also a `MaybeTransmutableQuery<Dfa<...>, C>` impl, and
we don't need both.
2023-10-06 11:25:32 +11:00
Nicholas Nethercote
73420fc13b
Fix a comment.
...
It was duplicated from the method above.
2023-10-06 11:22:06 +11:00
Nicholas Nethercote
449b84cb99
Remove map_layouts.
...
As per the `FIXME` comment, it's an abstraction that makes the code
harder to read.
2023-10-06 11:21:08 +11:00
bors
2c9b0de8ea
Auto merge of #116269 - Veykril:rustc-abi, r=WaffleLapkin
...
Bring back generic parameters for indices in rustc_abi and make it compile on stable
This effectively reverses https://github.com/rust-lang/rust/pull/107163 , allowing rust-analyzer to depend on this crate again,
It also moves some glob imports / expands them in the first commit because they made it more difficult for me to reason about things.
2023-10-06 00:03:56 +00:00
Nicholas Nethercote
ad8271dd56
Use collect to decode Vec.
...
It's hyper-optimized, we don't need our own unsafe code here.
This requires getting rid of all the `Allocator` stuff, which isn't
needed anyway.
2023-10-06 10:30:03 +11:00
Nicholas Nethercote
1d71971973
Streamline some Encodable impls.
...
Making them consistent with similar impls.
2023-10-06 10:30:03 +11:00
Nicholas Nethercote
2db1d59830
Use collect for decoding more collection types.
2023-10-06 10:30:03 +11:00
Nicholas Nethercote
5f69ca62f2
rustc_serialize: merge collection_impls.rs into serialize.rs.
...
`serialize.rs` has the `Encodable`/`Decodable` impls for lots of basic
types, including `Vec`. `collection_impls` has it for lots of collection
types. The distinction isn't really meaningful, and it's simpler to have
them all in a single file.
2023-10-06 10:30:01 +11:00
Nicholas Nethercote
409193654d
Make the comment order match variant declaration order.
2023-10-06 10:17:29 +11:00
Nicholas Nethercote
80bf6883be
Remove an unnecessary pub(crate).
2023-10-06 10:16:54 +11:00
Jason Newcomb
d464b72970
Add more diagnostic items for clippy
2023-10-05 18:21:47 -04:00
Nicholas Nethercote
f703475b4e
Remove unused serialization support for LinkedList.
2023-10-06 09:13:54 +11:00
Nicholas Nethercote
3ee67475b2
rustc_serialize: Remove unneeded feature decls.
...
I.e. `maybe_uninit_slice` and `new_uninit`.
Also sort the remaining features and remove an ugly, low-value comment.
2023-10-06 09:13:54 +11:00
Tomasz Miąsko
eaafb256f8
Replace LocationExtended with DefLocation in SsaLocals
2023-10-05 23:45:59 +02:00
Tomasz Miąsko
4357482bfd
Move DefLocation from rustc_codegen_ssa to rustc_middle
2023-10-05 23:45:59 +02:00
Tomasz Miąsko
6c348b77fe
Remove small dominators optimization from SsaLocals
...
The optimization is now part of the general implementation.
2023-10-05 23:45:59 +02:00
Tomasz Miąsko
0528d378b6
Optimize dominators for small path graphs
...
Generalizes the small dominators approach from #107449 .
2023-10-05 23:45:59 +02:00
Tomasz Miąsko
ba694e301c
Remove redundant Dominators::start_node field
2023-10-05 23:45:58 +02:00
Tomasz Miąsko
a8ec7ddf0e
Test immediate dominators using public API
2023-10-05 23:45:58 +02:00
Ralf Jung
cbe892fd65
fix fast-path for try_eval_scalar_int
2023-10-05 22:00:24 +02:00
bors
cae0791da4
Auto merge of #116417 - ouz-a:trait_type_detective, r=compiler-errors
...
Remove is global hack
In attempt to fix https://github.com/rust-lang/rust/issues/114057 we found several issues with how compiler computes layouts, this change removes `is_global` from `and` to stop impl from being shadowed.
In depth conversation can be read here https://rust-lang.zulipchat.com/#narrow/stream/146212-t-compiler.2Fconst-eval/topic/Getting.20different.20types.20from.20almost.20same.20inputs
This is a fix candidate opened for performance run.
r? `@lcnr`
2023-10-05 19:42:05 +00:00
Oğuz Ağcayazı
e30d27be00
remove is global hack
2023-10-05 21:38:12 +03:00
Martin Nordholts
8a1be9942d
Allow file names to end with '>'
...
The `rustc_span::FileName` enum already differentiates between real
files and "fake" files such as `<anon>`. We do not need to artificially
forbid real file names from ending in `>`.
2023-10-05 20:17:48 +02:00
Matthias Krüger
76d0b794cb
Rollup merge of #116452 - cjgillot:noassert-erased, r=oli-obk
...
Do not assert that hidden types don't have erased regions.
cc https://github.com/rust-lang/rust/issues/116306
`args` can have erased regions.
In the linked issue, this is reached by computing whether a large type is `Freeze` to compute its ABI.
I do not have a minimized test to include.
2023-10-05 19:24:35 +02:00
Matthias Krüger
c1c5ab717e
Rollup merge of #116428 - Alexendoo:note-duplicate-diagnostics, r=compiler-errors,estebank
...
Add a note to duplicate diagnostics
Helps explain why there may be a difference between manual testing and the test suite output and highlights them as something to potentially look into
For existing duplicate diagnostics I just blessed them other than a few files that had other `NOTE` annotations in
2023-10-05 19:24:35 +02:00
Matthias Krüger
08cc7428d9
Rollup merge of #116415 - ouz-a:move_subtyper, r=oli-obk
...
Move subtyper below reveal_all and change reveal_all
In previous attempt https://github.com/rust-lang/rust/pull/116378 we tried to handle `Opaque` in few different places, but this isn't necessary, after moving subtyper below reveal_all and calling `super_place` on reveal_all, issues cease to exist.
r? ``@oli-obk``
Fixes https://github.com/rust-lang/rust/issues/116332
Fixes https://github.com/rust-lang/rust/issues/116265
Fixes https://github.com/rust-lang/rust/issues/116383
Fixes https://github.com/rust-lang/rust/issues/116333
2023-10-05 19:24:34 +02:00
Matthias Krüger
b301bd4220
Rollup merge of #116288 - ouz-a:smir_spans, r=spastorino
...
Add Span to various smir types
Had to make few extra changes to few structs to attach spans to them.
r? ``@oli-obk``
2023-10-05 19:24:34 +02:00
Matthias Krüger
864e5d8d94
Rollup merge of #116220 - llogiq:stabilize-option-as-slice, r=BurntSushi
...
stabilize `Option::as_`(`mut_`)`slice`
This is the stabilization to #108545 . Thanks to everyone who helped getting this into Rust proper.
2023-10-05 19:24:33 +02:00
ouz-a
3088c4b046
move subtyper change reveal_all
2023-10-05 18:56:30 +03:00
Rémy Rakic
3dcff0051a
compute NLL loan scopes with liveness in -Zpolonius=next
2023-10-05 15:56:20 +00:00
Camille GILLOT
14c846cb05
Do not assert that hidden types don't have erased regions.
2023-10-05 15:50:36 +00:00
Rémy Rakic
a7f1f24823
allow access to liveness' PointIndexes
2023-10-05 15:25:46 +00:00
Rémy Rakic
af8a318aa1
add note why a function is pub
2023-10-05 15:25:46 +00:00
francorbacho
cbc6b65d9a
Keep fluent slugs in alphabetical order
2023-10-05 16:17:32 +02:00
francorbacho
c8ee7db6ea
Only give autofix suggestion when no named args are present
2023-10-05 16:11:31 +02:00
francorbacho
905bace904
Highlight redundant arguments instead of the whole format string
2023-10-05 16:11:31 +02:00
francorbacho
fcdd5c0b2d
Plurals in format redundant arguments suggestion
2023-10-05 16:11:31 +02:00
francorbacho
4a7a98cf30
Fix diagnostics being cancelled even with unused arguments
2023-10-05 16:09:57 +02:00
francorbacho
dc75c99226
Remove unused variable
2023-10-05 16:09:57 +02:00
francorbacho
e1c18f4d9d
Document report_redundant_format_arguments()
2023-10-05 16:09:57 +02:00
francorbacho
9c921f843c
Rename report_redundant_placeholders() to report_redundant_format_arguments()
2023-10-05 16:09:57 +02:00
francorbacho
04fc051a34
Use diagnostic impls and add suggestions in redundant format!() args
2023-10-05 16:09:57 +02:00
francorbacho
4cc2d0bd65
Separate report_redundant_placeholders() into its own function
2023-10-05 16:05:42 +02:00
francorbacho
93df9e6d7d
Suggest removing redundant arguments in format!()
2023-10-05 16:05:42 +02:00
bors
5c3a0e932b
Auto merge of #116427 - cjgillot:no-internal, r=oli-obk
...
Remove mir::LocalDecl::internal.
It does not serve any purpose, as we don't have typeck-based generator witnesses any more.
2023-10-05 09:59:14 +00:00
Nicholas Nethercote
81d1f7ea9d
Use a closure when setting State::Active.
2023-10-05 19:56:19 +11:00
Oğuz Ağcayazı
a49138e46e
impl stable for kinds
2023-10-05 11:15:34 +03:00