os-rust/compiler
bors f4966590d8 Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser
Retire the `unnamed_fields` feature for now

`#![feature(unnamed_fields)]` was implemented in part in #115131 and #115367, however work on that feature has (afaict) stalled and in the mean time there have been some concerns raised (e.g.[^1][^2]) about whether `unnamed_fields` is worthwhile to have in the language, especially in its current desugaring. Because it represents a compiler implementation burden including a new kind of anonymous ADT and additional complication to field selection, and is quite prone to bugs today, I'm choosing to remove the feature.

However, since I'm not one to really write a bunch of words, I'm specifically *not* going to de-RFC this feature. This PR essentially *rolls back* the state of this feature to "RFC accepted but not yet implemented"; however if anyone wants to formally unapprove the RFC from the t-lang side, then please be my guest. I'm just not totally willing to summarize the various language-facing reasons for why this feature is or is not worthwhile, since I'm coming from the compiler side mostly.

Fixes #117942
Fixes #121161
Fixes #121263
Fixes #121299
Fixes #121722
Fixes #121799
Fixes #126969
Fixes #131041

Tracking:
* https://github.com/rust-lang/rust/issues/49804

[^1]: https://rust-lang.zulipchat.com/#narrow/stream/213817-t-lang/topic/Unnamed.20struct.2Funion.20fields
[^2]: https://github.com/rust-lang/rust/issues/49804#issuecomment-1972619108
2024-10-11 13:11:13 +00:00
..
rustc disable size asserts in the compiler when randomizing layouts 2024-08-31 23:56:45 +02:00
rustc_abi Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
rustc_arena Remove unnecessary lifetimes from Arena. 2024-09-13 15:33:19 +10:00
rustc_ast Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser 2024-10-11 13:11:13 +00:00
rustc_ast_ir Add warn(unreachable_pub) to several crates. 2024-08-16 08:46:13 +10:00
rustc_ast_lowering Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser 2024-10-11 13:11:13 +00:00
rustc_ast_passes Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser 2024-10-11 13:11:13 +00:00
rustc_ast_pretty Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser 2024-10-11 13:11:13 +00:00
rustc_attr Rename NestedMetaItem to MetaItemInner 2024-10-06 23:28:30 +09:00
rustc_baked_icu_data Don't add warn(unreachable_pub) to rustc_baked_icu. 2024-08-16 08:46:52 +10:00
rustc_borrowck Auto merge of #131444 - onur-ozkan:hotfix-ci, r=Kobzol 2024-10-10 23:51:17 +00:00
rustc_builtin_macros Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser 2024-10-11 13:11:13 +00:00
rustc_codegen_cranelift cg_clif: Factor out rustc_target::abi 2024-10-08 18:24:56 -07:00
rustc_codegen_gcc Rollup merge of #130308 - davidtwco:tied-target-consolidation, r=wesleywiser 2024-10-10 22:00:45 +02:00
rustc_codegen_llvm Rollup merge of #130741 - mrkajetanp:detect-b16b16, r=Amanieu 2024-10-10 22:00:48 +02:00
rustc_codegen_ssa Rollup merge of #130308 - davidtwco:tied-target-consolidation, r=wesleywiser 2024-10-10 22:00:45 +02:00
rustc_const_eval Rollup merge of #131397 - RalfJung:const-escaping-ref-teach, r=chenyukang 2024-10-10 12:49:19 +02:00
rustc_data_structures format 2024-10-01 17:21:56 -04:00
rustc_driver Use tidy to sort crate attributes for all compiler crates. 2024-06-12 15:49:10 +10:00
rustc_driver_impl Rollup merge of #130899 - bjorn3:wasi_bootstrap_fixes, r=davidtwco 2024-10-07 11:10:53 -07:00
rustc_error_codes Fix typo in E0793 2024-10-09 10:28:16 -07:00
rustc_error_messages Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
rustc_errors Rollup merge of #131344 - nnethercote:ref-Lrc, r=compiler-errors 2024-10-07 12:23:54 +02:00
rustc_expand Auto merge of #131235 - codemountains:rename-nestedmetaitem-to-metaitemlnner, r=nnethercote 2024-10-07 08:59:55 +00:00
rustc_feature Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser 2024-10-11 13:11:13 +00:00
rustc_fluent_macro Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
rustc_fs_util Couple of changes to make it easier to compile rustc for wasm 2024-09-26 19:51:14 +00:00
rustc_graphviz Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
rustc_hir Rollup merge of #130625 - heiseish:issue-124028-fix, r=jieyouxu 2024-10-10 12:49:18 +02:00
rustc_hir_analysis Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser 2024-10-11 13:11:13 +00:00
rustc_hir_pretty rm ItemKind::OpaqueTy 2024-10-04 23:28:22 +00:00
rustc_hir_typeck Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser 2024-10-11 13:11:13 +00:00
rustc_incremental Rename NestedMetaItem to MetaItemInner 2024-10-06 23:28:30 +09:00
rustc_index Rollup merge of #130625 - heiseish:issue-124028-fix, r=jieyouxu 2024-10-10 12:49:18 +02:00
rustc_index_macros Remove usage of specialization from newtype_index! 2024-06-30 16:42:53 +00:00
rustc_infer Make super combine into fns 2024-10-10 06:07:52 -04:00
rustc_interface Handle rustc_interface cases of rustc::potential_query_instability lint 2024-10-05 10:01:27 +03:00
rustc_lexer Reserve guarded string literals (RFC 3593) 2024-10-08 18:21:16 -06:00
rustc_lint Rollup merge of #131498 - Urgau:transparent-const-anons, r=lcnr 2024-10-11 12:21:07 +02:00
rustc_lint_defs Reserve guarded string literals (RFC 3593) 2024-10-08 18:21:16 -06:00
rustc_llvm coverage. Disable supporting mcdc on llvm-18 2024-10-08 10:50:18 +08:00
rustc_log Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
rustc_macros Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
rustc_metadata Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser 2024-10-11 13:11:13 +00:00
rustc_middle Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser 2024-10-11 13:11:13 +00:00
rustc_mir_build Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser 2024-10-11 13:11:13 +00:00
rustc_mir_dataflow Auto merge of #131235 - codemountains:rename-nestedmetaitem-to-metaitemlnner, r=nnethercote 2024-10-07 08:59:55 +00:00
rustc_mir_transform coverage. Warn about too many test vectors 2024-10-08 11:15:26 +08:00
rustc_monomorphize Use wide pointers consistenly across the compiler 2024-10-04 14:06:48 +02:00
rustc_next_trait_solver Auto merge of #131263 - compiler-errors:solver-relating, r=lcnr 2024-10-10 14:59:40 +00:00
rustc_parse Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser 2024-10-11 13:11:13 +00:00
rustc_parse_format Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
rustc_passes Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser 2024-10-11 13:11:13 +00:00
rustc_pattern_analysis cleanup: don't clone types that are Copy 2024-09-29 13:31:30 +02:00
rustc_privacy Visit opaques for visibilities. 2024-10-04 23:31:55 +00:00
rustc_query_impl Handle rustc_query_impl cases of rustc::potential_query_instability lint 2024-10-03 12:47:08 +03:00
rustc_query_system add unstable support for outputting file checksums for use in cargo 2024-10-01 21:23:20 -06:00
rustc_resolve Auto merge of #131045 - compiler-errors:remove-unnamed_fields, r=wesleywiser 2024-10-11 13:11:13 +00:00
rustc_sanitizers Fix some pub(crate) that were undetected bc of instrument 2024-10-04 14:02:09 -04:00
rustc_serialize Fix needless_lifetimes in rustc_serialize 2024-10-08 15:17:45 +02:00
rustc_session Avoid redundant additions to PATH when linking 2024-10-10 11:46:11 +02:00
rustc_smir various fixes for naked_asm! implementation 2024-10-06 19:00:09 +02:00
rustc_span Rollup merge of #131475 - fmease:compiler-mv-obj-safe-dyn-compat-2, r=jieyouxu 2024-10-10 22:00:50 +02:00
rustc_symbol_mangling Rollup merge of #130344 - Jaic1:fix-116306, r=BoxyUwU 2024-09-23 06:45:33 +02:00
rustc_target rustc_target: Add sme-b16b16 as an explicit aarch64 target feature 2024-10-10 10:24:57 +00:00
rustc_trait_selection Rollup merge of #131475 - fmease:compiler-mv-obj-safe-dyn-compat-2, r=jieyouxu 2024-10-10 22:00:50 +02:00
rustc_traits Compiler: Rename "object safe" to "dyn compatible" 2024-09-25 13:26:48 +02:00
rustc_transmute Fix some pub(crate) that were undetected bc of instrument 2024-10-04 14:02:09 -04:00
rustc_ty_utils compiler: Factor rustc_target::abi::* out of ty_utils 2024-10-08 18:24:38 -07:00
rustc_type_ir Add variances to RPITITs 2024-10-10 11:46:48 -07:00
rustc_type_ir_macros Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
stable_mir clarify semantics of ConstantIndex MIR projection 2024-10-05 12:19:14 +02:00