about summary refs log tree commit diff
path: root/compiler/rustc_middle/Cargo.toml
AgeCommit message (Collapse)AuthorLines
2025-09-02Revert introduction of `[workspace.dependencies]`.Nicholas Nethercote-6/+6
This was done in #145740 and #145947. It is causing problems for people using r-a on anything that uses the rustc-dev rustup package, e.g. Miri, clippy. This repository has lots of submodules and subtrees and various different projects are carved out of pieces of it. It seems like `[workspace.dependencies]` will just be more trouble than it's worth.
2025-08-28Add `polonius-engine` to `[workspace.dependencies]`.Nicholas Nethercote-1/+1
2025-08-28Add `rustc_apfloat` to `[workspace.dependencies]`.Nicholas Nethercote-1/+1
2025-08-28Add `either` to `[workspace.dependencies]`.Nicholas Nethercote-1/+1
2025-08-27Add `tracing` to `[workspace.dependencies]`.Nicholas Nethercote-1/+1
2025-08-27Add `bitflags` to `[workspace.dependencies]`.Nicholas Nethercote-1/+1
2025-08-27Add `thin-vec` to newly added `[workspace.dependencies]`.Nicholas Nethercote-1/+1
2025-07-31remove rustc_attr_data_structuresJana Dönszelmann-1/+0
2025-06-11Use `rustc_thread_pool` instead of `rustc-rayon-core`Celina G. Val-1/+1
2025-03-10Revert "Use workspace lints for crates in `compiler/` #138084"许杰友 Jieyou Xu (Joe)-3/+0
Revert <https://github.com/rust-lang/rust/pull/138084> to buy time to consider options that avoids breaking downstream usages of cargo on distributed `rustc-src` artifacts, where such cargo invocations fail due to inability to inherit `lints` from workspace root manifest's `workspace.lints` (this is only valid for the source rust-lang/rust workspace, but not really the distributed `rustc-src` artifacts). This breakage was reported in <https://github.com/rust-lang/rust/issues/138304>. This reverts commit 48caf81484b50dca5a5cebb614899a3df81ca898, reversing changes made to c6662879b27f5161e95f39395e3c9513a7b97028.
2025-03-09Rollup merge of #138160 - jdonszelmann:move-find-attr2, r=oli-obkMatthias Krüger-1/+2
depend more on attr_data_structures and move find_attr! there r? ``@oli-obk`` This should be an easy one. It just moves some imports around. This is necessary for other changes that I'm working on not to have import cycles. However, it's an easy one to just merge on its own.
2025-03-08Specify rust lints for `compiler/` crates via Cargo.Nicholas Nethercote-0/+3
By naming them in `[workspace.lints.rust]` in the top-level `Cargo.toml`, and then making all `compiler/` crates inherit them with `[lints] workspace = true`. (I omitted `rustc_codegen_{cranelift,gcc}`, because they're a bit different.) The advantages of this over the current approach: - It uses a standard Cargo feature, rather than special handling in bootstrap. So, easier to understand, and less likely to get accidentally broken in the future. - It works for proc macro crates. It's a shame it doesn't work for rustc-specific lints, as the comments explain.
2025-03-07depend more on attr_data_structures and move find_attr! thereJana Dönszelmann-1/+2
2025-02-22Upgrade the compiler to edition 2024Michael Goulet-1/+1
2025-02-19Make fewer crates depend on rustc_ast_irMichael Goulet-1/+0
2025-02-16Move hashes from rustc_data_structure to rustc_hashes so they can be shared ↵Ben Kimock-0/+1
with rust-analyzer
2025-02-05Removed dependency on the field-offset crate.David Venhoek-1/+0
2025-01-06`best_blame_constraint`: prioritize blaming interesting-seeming constraintsdianne-1/+0
2024-12-16rename rustc_attr to rustc_attr_parsing and create rustc_attr_data_structuresJonathan Dönszelmann-1/+1
2024-11-12Delete the `cfg(not(parallel))` serial compilerNoratrieb-2/+1
Since it's inception a long time ago, the parallel compiler and its cfgs have been a maintenance burden. This was a necessary evil the allow iteration while not degrading performance because of synchronization overhead. But this time is over. Thanks to the amazing work by the parallel working group (and the dyn sync crimes), the parallel compiler has now been fast enough to be shipped by default in nightly for quite a while now. Stable and beta have still been on the serial compiler, because they can't use `-Zthreads` anyways. But this is quite suboptimal: - the maintenance burden still sucks - we're not testing the serial compiler in nightly Because of these reasons, it's time to end it. The serial compiler has served us well in the years since it was split from the parallel one, but it's over now. Let the knight slay one head of the two-headed dragon!
2024-10-19Do not run lints that cannot emitblyxyas-0/+1
Before this change, adding a lint was a difficult matter because it always had some overhead involved. This was because all lints would run, no matter their default level, or if the user had #![allow]ed them. This PR changes that
2024-10-08compiler: Factor rustc_target::abi::* out of middle::ty::layoutJubilee Young-0/+1
2024-08-31disable size asserts in the compiler when randomizing layoutsThe 8472-0/+1
2024-07-25Auto merge of #127042 - GrigorenkoPV:derivative, r=compiler-errorsbors-1/+1
Switch from `derivative` to `derive-where` This is a part of the effort to get rid of `syn 1.*` in compiler's dependencies: #109302 Derivative has not been maintained in nearly 3 years[^1]. It also depends on `syn 1.*`. This PR replaces `derivative` with `derive-where`[^2], a not dead alternative, which uses `syn 2.*`. A couple of `Debug` formats have changed around the skipped fields[^3], but I doubt this is an issue. [^1]: https://github.com/mcarton/rust-derivative/issues/117 [^2]: https://lib.rs/crates/derive-where [^3]: See the changes in `tests/ui`
2024-07-15Use dep: for crate dependenciesMichael Goulet-1/+1
2024-07-12rustc_middle: derivative -> derive-wherePavel Grigorenko-1/+1
2024-06-10Remove some unused crate dependencies.Nicholas Nethercote-2/+1
I found these by setting the `unused_crate_dependencies` lint temporarily to `Warn`.
2024-06-06Make middle not rely on next_trait_solverMichael Goulet-1/+0
2024-05-18Uplift GenericArgKind, CanonicalVarValues, QueryInputMichael Goulet-0/+1
and make NestedGoals generic
2024-04-15Fix pretty hir for anon consts in diagnosticsMichael Goulet-0/+1
2024-04-11move QueryKeyStringCache from rustc_middle to rustc_query_impl, where it ↵klensy-1/+0
actually used also allows to drop measureme dep on rustc_middle
2024-03-21Stop `ConstraintCategory` `Ord` impl from relying on `Ty`'s `Ord` impl.Oli Scherer-0/+1
2024-03-08remove unused derive_more depklensy-1/+0
2024-02-27Split rustc_type_ir to avoid rustc_ast from depending on itOli Scherer-0/+1
2024-01-13Update measureme crate to version 11Michael Woerister-1/+1
2023-12-30Update to bitflags 2 in the compilerNilstrieb-1/+1
This involves lots of breaking changes. There are two big changes that force changes. The first is that the bitflag types now don't automatically implement normal derive traits, so we need to derive them manually. Additionally, bitflags now have a hidden inner type by default, which breaks our custom derives. The bitflags docs recommend using the impl form in these cases, which I did.
2023-10-30Clean up `rustc_*/Cargo.toml`.Nicholas Nethercote-7/+8
- Sort dependencies and features sections. - Add `tidy` markers to the sorted sections so they stay sorted. - Remove empty `[lib`] sections. - Remove "See more keys..." comments. Excluded files: - rustc_codegen_{cranelift,gcc}, because they're external. - rustc_lexer, because it has external use. - stable_mir, because it has external use.
2023-07-26Replace in-tree `rustc_apfloat` with the new version of the crateWesley Wiser-1/+1
2023-07-03Remove chalk from the compilerMichael Goulet-1/+0
2023-07-01Update chalkNilstrieb-1/+1
2023-04-30Use dynamic dispatch for queriesJohn Kåre Alsaker-0/+1
2023-04-26Remove QueryEngine traitJohn Kåre Alsaker-0/+1
2023-04-18Add `rustc_fluent_macro` to decouple fluent from `rustc_macros`Nilstrieb-0/+1
Fluent, with all the icu4x it brings in, takes quite some time to compile. `fluent_messages!` is only needed in further downstream rustc crates, but is blocking more upstream crates like `rustc_index`. By splitting it out, we allow `rustc_macros` to be compiled earlier, which speeds up `x check compiler` by about 5 seconds (and even more after the needless dependency on `serde_json` is removed from `rustc_data_structures`).
2023-03-25Update indexmap and rayon cratesJohn Kåre Alsaker-2/+2
2023-02-21Upgrade `thin-vec` from 0.2.9 to 0.2.12.Nicholas Nethercote-1/+1
Because 0.2.10 added supports for `ThinVec::splice`, and 0.2.12 is the latest release.
2022-12-22Give a more helpful error for "trimmed_def_paths construted"Joshua Nelson-0/+2
2022-11-28Make `tcx.mk_const` more permissive wrt `kind` argumentMaybe Waffle-0/+1
- Accept `impl Into` - Implement `From<>` for `ConstKind` Note: this adds a dependency on `derive_more` (MIT license). It allows to derive a lot of traits (like `From` here) that would be otherwise tedious to implement.
2022-11-20Fix doctest errors related to rustc_middlereez12g-1/+0
2022-11-13Bump chalk to v0.87Michael Goulet-1/+1
2022-11-02rustdoc: use ThinVec for cleaned genericsMichael Howell-1/+1