clubby789
7a9661d768
Disable non-required MIR opts with optimize(none)
...
Co-authored-by: Waffle Lapkin <waffle.lapkin@gmail.com>
2025-01-23 17:40:41 +00:00
Ralf Jung
e023590de4
make no-variant types a dedicated Variants variant
2024-12-18 11:01:54 +01:00
Ralf Jung
21de42bf8d
Variants::Single: do not use invalid VariantIdx for uninhabited enums
2024-12-18 11:00:21 +01:00
lcnr
9cba14b95b
use TypingEnv when no infcx is available
...
the behavior of the type system not only depends on the current
assumptions, but also the currentnphase of the compiler. This is
mostly necessary as we need to decide whether and how to reveal
opaque types. We track this via the `TypingMode`.
2024-11-18 10:38:56 +01:00
Jubilee Young
88a9edc091
compiler: Add is_uninhabited and use LayoutS accessors
...
This reduces the need of the compiler to peek on the fields of LayoutS.
2024-10-28 09:58:30 -07:00
Nicholas Nethercote
8235af07d2
Improve comment formatting.
...
By reflowing comment lines that are too long, and a few that are very
short. Plus some other very minor formatting tweaks.
2024-09-10 08:42:30 +10:00
Nicholas Nethercote
6af470e360
Reduce visibilities, and add warn(unreachable_pub).
...
Lots of unnecessary `pub`s in this crate. Most are downgraded to
`pub(super)`, though some don't need any visibility.
2024-09-09 08:48:09 +10:00
Nicholas Nethercote
2aae619edb
Move MirPass to rustc_mir_transform.
...
Because that's now the only crate that uses it.
Moving stuff out of `rustc_middle` is always welcome.
I chose to use `impl crate::MirPass`/`impl crate::MirLint` (with
explicit `crate::`) everywhere because that's the only mention of
`MirPass`/`MirLint` used in all of these files. (Prior to this change,
`MirPass` was mostly imported via `use rustc_middle::mir::*` items.)
2024-09-03 16:03:46 +10:00
Nicholas Nethercote
ed5161c5ac
Remove #[macro_use] extern crate tracing from rustc_mir_transform.
2024-08-30 10:01:34 +10:00
Nicholas Nethercote
84ac80f192
Reformat use declarations.
...
The previous commit updated `rustfmt.toml` appropriately. This commit is
the outcome of running `x fmt --all` with the new formatting options.
2024-07-29 08:26:52 +10:00
Nicholas Nethercote
d49d4ae192
Remove extern crate rustc_middle from rustc_mir_transform.
2024-05-13 08:20:18 +10:00
DianQK
102bda49b1
Remove restrictions on small enum statements such as Order, Option or Result
...
`early-tailduplication` is only a problem when there are a significant number of branches.
2024-03-13 22:35:11 +08:00
DianQK
a10d157f98
Addition of parentheses to clarify precedence
2024-03-13 22:35:11 +08:00
DianQK
df33e02f40
Add comments for UnreachableEnumBranching
2024-03-13 22:35:08 +08:00
DianQK
8ddd966223
Rename UninhabitedEnumBranching to UnreachableEnumBranching
2024-03-09 14:32:27 +08:00