rust/tests/ui/rfcs
bors 243c5a35e1 Auto merge of #140453 - Zoxc:next-disambiguator, r=oli-obk
Remove global `next_disambiguator` state and handle it with a `DisambiguatorState` type

This removes `Definitions.next_disambiguator` as it doesn't guarantee deterministic def paths when `create_def` is called in parallel. Instead a new `DisambiguatorState` type is passed as a mutable reference to `create_def` to help create unique def paths. `create_def` calls with distinct  `DisambiguatorState` instances must ensure that that the def paths are unique without its help.

Anon associated types did rely on this global state for uniqueness and are changed to use (method they're defined in + their position in the method return type) as the `DefPathData` to ensure uniqueness. This also means that the method they're defined in appears in error messages, which is nicer.

`DefPathData::NestedStatic` is added to use for nested data inside statics instead of reusing `DefPathData::AnonConst` to avoid conflicts with those.

cc `@oli-obk`
2025-05-05 11:50:43 +00:00
..
impl-trait
rfc-0000-never_patterns Remove let_chains feature gate from even more tests 2025-04-18 15:57:29 +02:00
rfc-0107-bind-by-move-pattern-guards
rfc-1014-stdout-existential-crisis
rfc-1445-restrict-constants-in-patterns Remove attribute #[rustc_error] 2025-03-30 01:32:21 +03:00
rfc-1623-static properly fill a promoted's required_consts 2024-04-23 23:02:54 +02:00
rfc-1717-dllimport compiletest: Require //~ annotations even if error-pattern is specified 2025-04-03 11:08:55 +03:00
rfc-1789-as-cell
rfc-1857-stabilize-drop-order
rfc-1937-termination-trait Remove global next_disambiguator state and handle it with a DisambiguatorState type 2025-04-29 13:22:38 +02:00
rfc-2005-default-binding-mode
rfc-2008-non-exhaustive compiletest: Make diagnostic kind mandatory on line annotations 2025-04-30 10:44:24 +03:00
rfc-2091-track-caller stabilize naked_functions 2025-04-20 11:18:38 +02:00
rfc-2093-infer-outlives UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
rfc-2126-crate-paths
rfc-2126-extern-absolute-paths Trim suggestion parts to the subset that is purely additive 2025-02-14 00:44:10 -08:00
rfc-2151-raw-identifiers
rfc-2175-or-if-while-let
rfc-2294-if-let-guard Remove let_chains feature gate from even more tests 2025-04-18 15:57:29 +02:00
rfc-2302-self-struct-ctor
rfc-2306-convert-id
rfc-2361-dbg-macro Remove detail from label/note that is already available in other note 2024-10-29 16:26:57 +00:00
rfc-2396-target_feature-11 Stabilize target_feature_11 2025-01-27 23:44:47 +01:00
rfc-2421-unreserve-pure-offsetof-sizeof-alignof
rfc-2457-non-ascii-idents UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
rfc-2497-if-let-chains resolved conflict 2025-04-25 17:02:59 +05:00
rfc-2528-type-changing-struct-update UI tests: add missing diagnostic kinds where possible 2025-04-08 23:06:31 +03:00
rfc-2565-param-attrs Use cfg(false) in UI tests 2025-04-03 21:41:58 +00:00
rfc-3348-c-string-literals Update tests to use new proc-macro header 2024-11-27 07:18:25 -08:00
rfc-3467-unsafe-pinned Initial UnsafePinned/UnsafeUnpin impl [Part 1: Libs] 2025-04-13 01:11:04 -04:00
type-alias-impl-trait Implement #[define_opaque] attribute for functions. 2025-03-11 12:05:02 +00:00
rfc-3391-result-ffi-guarantees.rs lang: Strengthen RFC 3391 guarantees to match T-lang consensus 2024-10-21 00:43:36 -07:00