rust/compiler
bors eac6c33bc6 Auto merge of #100869 - nnethercote:replace-ThinVec, r=spastorino
Replace `rustc_data_structures::thin_vec::ThinVec` with `thin_vec::ThinVec`

`rustc_data_structures::thin_vec::ThinVec` looks like this:
```
pub struct ThinVec<T>(Option<Box<Vec<T>>>);
```
It's just a zero word if the vector is empty, but requires two
allocations if it is non-empty. So it's only usable in cases where the
vector is empty most of the time.

This commit removes it in favour of `thin_vec::ThinVec`, which is also
word-sized, but stores the length and capacity in the same allocation as
the elements. It's good in a wider variety of situation, e.g. in enum
variants where the vector is usually/always non-empty.

The commit also:
- Sorts some `Cargo.toml` dependency lists, to make additions easier.
- Sorts some `use` item lists, to make additions easier.
- Changes `clean_trait_ref_with_bindings` to take a
  `ThinVec<TypeBinding>` rather than a `&[TypeBinding]`, because this
  avoid some unnecessary allocations.

r? `@spastorino`
2022-09-01 08:01:06 +00:00
..
rustc Don't rerun the build script for the compiler each time on linux 2022-07-10 23:57:25 -05:00
rustc_apfloat Add diagnostic translation lints to crates that don't emit them 2022-08-18 19:29:02 +01:00
rustc_arena Make use of [wrapping_]byte_{add,sub} 2022-08-23 19:32:37 +04:00
rustc_ast Auto merge of #100869 - nnethercote:replace-ThinVec, r=spastorino 2022-09-01 08:01:06 +00:00
rustc_ast_lowering Auto merge of #100869 - nnethercote:replace-ThinVec, r=spastorino 2022-09-01 08:01:06 +00:00
rustc_ast_passes Fix a bunch of typo 2022-08-31 18:24:55 +08:00
rustc_ast_pretty Add diagnostic translation lints to crates that don't emit them 2022-08-18 19:29:02 +01:00
rustc_attr Revert let_chains stabilization 2022-08-29 19:34:11 +02:00
rustc_borrowck Auto merge of #100812 - Nilstrieb:revert-let-chains-nightly, r=Mark-Simulacrum 2022-08-30 05:48:22 +00:00
rustc_builtin_macros Auto merge of #100869 - nnethercote:replace-ThinVec, r=spastorino 2022-09-01 08:01:06 +00:00
rustc_codegen_cranelift Auto merge of #100707 - dzvon:fix-typo, r=davidtwco 2022-09-01 05:39:58 +00:00
rustc_codegen_gcc Rollup merge of #100653 - cuviper:fptoint_sat, r=michaelwoerister,antoyo 2022-08-30 16:56:09 +05:30
rustc_codegen_llvm Auto merge of #101195 - Dylan-DPC:rollup-rhjaz6r, r=Dylan-DPC 2022-08-30 14:52:02 +00:00
rustc_codegen_ssa Auto merge of #100707 - dzvon:fix-typo, r=davidtwco 2022-09-01 05:39:58 +00:00
rustc_const_eval Auto merge of #100707 - dzvon:fix-typo, r=davidtwco 2022-09-01 05:39:58 +00:00
rustc_data_structures Auto merge of #100869 - nnethercote:replace-ThinVec, r=spastorino 2022-09-01 08:01:06 +00:00
rustc_driver add UI test for unpretty 2022-08-30 09:31:52 +08:00
rustc_error_codes Stabilize #![feature(label_break_value)] 2022-08-23 21:14:12 -05:00
rustc_error_messages Rollup merge of #100844 - evopen:migrate-diag, r=davidtwco 2022-08-31 21:30:09 +02:00
rustc_errors Rollup merge of #101165 - ldm0:drain_to_iter, r=cjgillot 2022-08-31 21:30:13 +02:00
rustc_expand Auto merge of #100707 - dzvon:fix-typo, r=davidtwco 2022-09-01 05:39:58 +00:00
rustc_feature Auto merge of #101183 - Dylan-DPC:rollup-6kewixv, r=Dylan-DPC 2022-08-30 08:29:42 +00:00
rustc_fs_util Add diagnostic translation lints to crates that don't emit them 2022-08-18 19:29:02 +01:00
rustc_graphviz Add diagnostic translation lints to crates that don't emit them 2022-08-18 19:29:02 +01:00
rustc_hir Rollup merge of #100730 - CleanCut:diagnostics-rustc_monomorphize, r=davidtwco 2022-08-31 14:29:51 +02:00
rustc_hir_pretty Add diagnostic translation lints to crates that don't emit them 2022-08-18 19:29:02 +01:00
rustc_incremental Remove trait_of_item query. 2022-08-01 21:39:26 +02:00
rustc_index Add diagnostic translation lints to crates that don't emit them 2022-08-18 19:29:02 +01:00
rustc_infer Fix a bunch of typo 2022-08-31 18:24:55 +08:00
rustc_interface Fix a bunch of typo 2022-08-31 18:24:55 +08:00
rustc_lexer Add diagnostic translation lints to crates that don't emit them 2022-08-18 19:29:02 +01:00
rustc_lint Auto merge of #100707 - dzvon:fix-typo, r=davidtwco 2022-09-01 05:39:58 +00:00
rustc_lint_defs Auto merge of #100707 - dzvon:fix-typo, r=davidtwco 2022-09-01 05:39:58 +00:00
rustc_llvm Rollup merge of #101025 - semarie:openbsd-archs, r=petrochenkov 2022-08-31 07:57:58 +02:00
rustc_log Add diagnostic translation lints to crates that don't emit them 2022-08-18 19:29:02 +01:00
rustc_macros Rollup merge of #101165 - ldm0:drain_to_iter, r=cjgillot 2022-08-31 21:30:13 +02:00
rustc_metadata Auto merge of #100812 - Nilstrieb:revert-let-chains-nightly, r=Mark-Simulacrum 2022-08-30 05:48:22 +00:00
rustc_middle Auto merge of #100869 - nnethercote:replace-ThinVec, r=spastorino 2022-09-01 08:01:06 +00:00
rustc_mir_build Fix a bunch of typo 2022-08-31 18:24:55 +08:00
rustc_mir_dataflow Rollup merge of #99027 - tmiasko:basic-blocks, r=oli-obk 2022-08-29 06:34:43 +02:00
rustc_mir_transform Auto merge of #99102 - JakobDegen:reorder-generators, r=oli-obk 2022-08-30 23:43:33 +00:00
rustc_monomorphize Auto merge of #100707 - dzvon:fix-typo, r=davidtwco 2022-09-01 05:39:58 +00:00
rustc_parse Auto merge of #100869 - nnethercote:replace-ThinVec, r=spastorino 2022-09-01 08:01:06 +00:00
rustc_parse_format Separate CountIsStar from CountIsParam in rustc_parse_format. 2022-08-25 14:49:09 +02:00
rustc_passes Fix a bunch of typo 2022-08-31 18:24:55 +08:00
rustc_plugin_impl Migrate rustc_plugin_impl to SessionDiagnostic 2022-08-22 16:35:05 +01:00
rustc_privacy rustc_middle: Remove Visibility::Invisible 2022-08-27 22:34:18 +03:00
rustc_query_impl Replace rustc_data_structures::thin_vec::ThinVec with thin_vec::ThinVec. 2022-08-29 15:42:13 +10:00
rustc_query_system Auto merge of #100869 - nnethercote:replace-ThinVec, r=spastorino 2022-09-01 08:01:06 +00:00
rustc_resolve Auto merge of #100707 - dzvon:fix-typo, r=davidtwco 2022-09-01 05:39:58 +00:00
rustc_save_analysis save_analysis: Migrate diagnostics 2022-08-24 06:50:16 +09:00
rustc_serialize Replace rustc_data_structures::thin_vec::ThinVec with thin_vec::ThinVec. 2022-08-29 15:42:13 +10:00
rustc_session Rollup merge of #100753 - LuisCardosoOliveira:translation-migrate-session, r=davidtwco 2022-08-31 14:29:52 +02:00
rustc_smir Add diagnostic translation lints to crates that don't emit them 2022-08-18 19:29:02 +01:00
rustc_span Rollup merge of #100898 - compiler-errors:too-many-expr-fields, r=spastorino 2022-08-29 21:12:54 +02:00
rustc_symbol_mangling UPDATE - to support diag introduced in PR #100765 2022-08-30 14:27:43 -04:00
rustc_target Auto merge of #100707 - dzvon:fix-typo, r=davidtwco 2022-09-01 05:39:58 +00:00
rustc_trait_selection Rollup merge of #100473 - compiler-errors:normalize-the-fn-def-sig-plz, r=lcnr 2022-08-30 16:56:08 +05:30
rustc_traits Fix a bunch of typo 2022-08-31 18:24:55 +08:00
rustc_transmute Fix a bunch of typo 2022-08-31 18:24:55 +08:00
rustc_ty_utils Rollup merge of #99027 - tmiasko:basic-blocks, r=oli-obk 2022-08-29 06:34:43 +02:00
rustc_type_ir ADD - diagnostic lints to type_ir 2022-08-18 13:33:03 -04:00
rustc_typeck Auto merge of #100707 - dzvon:fix-typo, r=davidtwco 2022-09-01 05:39:58 +00:00