Commit Graph

2627 Commits

Author SHA1 Message Date
Boxy df7bb96831 review 2026-05-11 21:32:42 +02:00
Boxy ae6b75e395 new stuff 2026-05-11 20:48:08 +02:00
Boxy ab698c3bf3 destructure in root universe 2026-05-11 20:48:08 +02:00
Boxy cadc26f0ce produce new region constraints 2026-05-11 20:48:08 +02:00
Boxy ba31e7a425 compute and track assumptions on entered binders 2026-05-11 20:48:08 +02:00
Boxy 335e25eed0 new region constraint representation 2026-05-11 20:48:07 +02:00
Boxy 113bd681ad add higher ranked assumptions v2 flag 2026-05-11 20:48:07 +02:00
Jana Dönszelmann 0d65aa285f move drop bomb from OpaqueTypeStorage into InferCtxt's Drop 2026-05-08 14:39:03 +02:00
Jana Dönszelmann 0aefbd13c3 use the right typing mode in lints 2026-05-08 14:07:46 +02:00
Jana Dönszelmann 7ff71be015 Try to canonicalize with erased opaques, retry when opaques are used. 2026-05-06 10:18:21 +02:00
Jana Dönszelmann 630f0d2bbb type safety for typing mode outside trait solver which can't be erased-not-coherence 2026-05-06 10:18:21 +02:00
Jana Dönszelmann a93f8c0579 Introduce ErasedNotCoherence typing mode 2026-05-06 10:13:29 +02:00
Shoyu Vanilla 4432f6bf82 Implement a new flag -Zdisable-fast-paths in trait solving 2026-05-05 19:46:30 +09:00
Jonathan Brouwer 9149135815 Rollup merge of #156021 - nnethercote:clean-up-some-traits, r=jackh726
Clean up some traits

I was looking at various traits and found some unnecessary trait bounds, and some unnecessary traits. Details in individual commits.

r? @Nadrieril
2026-05-02 10:18:28 +02:00
Shoyu Vanilla e43a1b5b44 -Znext-solver Ignore region constraints from the nested goals in leakcheck 2026-05-02 00:11:43 +09:00
Nicholas Nethercote 82cfcaf7ec Remove useless bounds on Self for impls of concrete types.
When you have `impl Foo for Bar` and `Bar` has no generics it's useless
(and odd) to have `where Self: Baz` bounds on methods when the trait
itself doesn't have those bounds. This commit removes a few.
2026-05-01 13:32:54 +10:00
bors 1bfcb284f7 Auto merge of #155392 - WaffleLapkin:alias-termmm, r=BoxyUwU
`AliasTerm` refactor

follow up to https://github.com/rust-lang/rust/pull/154758
tracking issue: https://github.com/rust-lang/rust/issues/154941
2026-04-22 02:57:46 +00:00
Waffle Lapkin 54abf6d683 remove unused parameter from opt_alias_variances 2026-04-21 12:28:26 +02:00
Waffle Lapkin e8b6c9737e fix ty::UnevaluatedConst<I>>->AliasTerm<I> conversion 2026-04-21 12:28:25 +02:00
Waffle Lapkin d7986943e4 AliasTermTy refactor: fixup compiler 2026-04-21 12:28:22 +02:00
Nicholas Nethercote e192eec395 Remove duplicated Flags methods.
The `Flags` trait has two methods: `flags` and `outer_exclusive_binder`.
Multiple types impl this trait and then also have duplicate inherent
methods with the same names; these are all marked with "Think about
removing this" comments. This is left over from things being moved into
`rustc_type_ir`.

This commit removes those inherent methods. This requires adding `use
Flags` to a number of files.
2026-04-20 10:13:53 +10:00
Adwin White 6279106e72 fix all errors 2026-04-20 00:18:28 +08:00
Shoyu Vanilla ace3aa319c Make region equality emits Eq constraints 2026-04-18 22:02:01 +09:00
Folkert de Vries a7590138a7 thread through a HirId to emit lints in the right place
Previously the lint would be reported at the right span, but could not be `allow`ed or `expect`ed in that location, because the lint was actually emitted using `CRATE_HIR_ID`
2026-04-14 23:21:54 +02:00
beetrees 7aad5c0784 Add FCW for unsuffixed float literal f32 fallback 2026-04-14 18:38:01 +02:00
beetrees c021d2ddd4 Fallback {float} to f32 when f32: From<{float}> 2026-04-14 18:38:00 +02:00
Jana Dönszelmann 63c212e62b make typing_mode getter 2026-04-10 11:42:02 +02:00
Jana Dönszelmann 0e0d12ccb3 introduce TypingModeEqWrapper and make TypingMode !Eq 2026-04-10 11:40:01 +02:00
Waffle Lapkin 0f767084b8 ty::Alias refactor: fixup all the compiler code 2026-04-07 10:08:12 +02:00
Jana Dönszelmann 28b06a67b3 Rename probe_ty_var to try_resolve_ty_var
Co-authored-by: khyperia <953151+khyperia@users.noreply.github.com>
2026-04-02 11:21:02 +02:00
bors 009a6c1e8b Auto merge of #154308 - ShoyuVanilla:undo-fudge-iv, r=jieyouxu
Revert #151380 and #153869

cc https://rust-lang.zulipchat.com/#narrow/channel/474880-t-compiler.2Fbackports/topic/.23153869.3A.20beta-nominated/with/581306395

r? ghost
2026-04-02 00:09:59 +00:00
khyperia 75eeece98c Properly generalize unevaluated consts 2026-03-30 15:47:49 +02:00
Shoyu Vanilla 1a67312215 Revert "Auto merge of #153869 - ShoyuVanilla:issue-153816, r=lcnr"
This reverts commit 1f7f8ea072, reversing
changes made to 8b86f48958.
2026-03-24 22:31:48 +09:00
Shoyu Vanilla d5bbeb978e Revert "Auto merge of #151380 - ShoyuVanilla:shallow-resolve-to-root-var, r=lcnr"
This reverts commit 75b9d89c68, reversing
changes made to 7bee525095.
2026-03-24 22:31:37 +09:00
Jana Dönszelmann 632ed10838 Revert "eagerly normalize during generalization"
This reverts commit 5d0863b147.
2026-03-23 12:09:34 +01:00
Jana Dönszelmann 4af62bdbac Revert "implement eager normalization in a fresh context during typeck"
This reverts commit 04f2c0191e.
2026-03-23 12:09:34 +01:00
Jana Dönszelmann e190973e4f Revert "merge generalizer state and structurally relate aliases"
This reverts commit 917713b4db.
2026-03-23 12:09:34 +01:00
Jana Dönszelmann df0f627bfc Revert "explicitly provide type in transmute"
This reverts commit 7a123e87b2.
2026-03-23 12:09:34 +01:00
Jana Dönszelmann c838deca23 Revert "normalize at the start of generalize if we can"
This reverts commit f50591fc10.
2026-03-23 12:09:34 +01:00
Jana Dönszelmann 38cb40091c Revert "try generalizing if normalization isn't a tyvar"
This reverts commit e8e3544a71.
2026-03-23 12:09:34 +01:00
Jana Dönszelmann bd781549f2 Revert "inline into"
This reverts commit 9aa065bc49.
2026-03-23 12:09:34 +01:00
Jana Dönszelmann 1fa1611e9f Revert "address review"
This reverts commit d665c0b371.
2026-03-23 12:09:34 +01:00
bors ac7f9ec7da Auto merge of #151746 - jdonszelmann:eagerly-normalize-in-generalize, r=lcnr
Eagerly normalize in generalize

*[View all comments](https://triagebot.infra.rust-lang.org/gh-comments/rust-lang/rust/pull/151746)*

r? @lcnr 

cc: https://github.com/rust-lang/trait-system-refactor-initiative/issues/262
2026-03-20 18:22:43 +00:00
Jana Dönszelmann d665c0b371 address review 2026-03-20 14:02:24 +01:00
Shoyu Vanilla b77739ad81 Do not shallow resolve to root var while fudging 2026-03-19 00:26:19 +09:00
Zalathar 985b41d387 Remove the rustc_data_structures::assert_matches! re-exports 2026-03-08 22:02:23 +11:00
Josh Stone 32bae1353e Update cfg(bootstrap) 2026-03-07 10:42:02 -08:00
Jana Dönszelmann 9aa065bc49 inline into 2026-02-26 14:53:57 +01:00
Jana Dönszelmann e8e3544a71 try generalizing if normalization isn't a tyvar 2026-02-26 14:53:57 +01:00
Jana Dönszelmann f50591fc10 normalize at the start of generalize if we can 2026-02-26 14:53:57 +01:00