about summary refs log tree commit diff
path: root/src/tools
AgeCommit message (Collapse)AuthorLines
2023-03-16TB: encoding of the underlying state machineNeven Villani-0/+214
+ properties about the transitions
2023-03-16Split unicode case LUTs in single and multi variantsMartin Gammelsæter-13/+45
The majority of char case replacements are single char replacements, so storing them as [char; 3] wastes a lot of space. This commit splits the replacement tables for both `to_lower` and `to_upper` into two separate tables, one with single-character mappings and one with multi-character mappings. This reduces the binary size for programs using all of these tables with roughly 24K bytes.
2023-03-16Fix clippy.Mara Bos-4/+17
2023-03-15Implementing "<test_binary> --list --format json" #107307 #49359Partha P. Das-0/+10
2023-03-15Skip serializing ascii chars in case LUTsMartin Gammelsæter-14/+11
Since ascii chars are already handled by a special case in the `to_lower` and `to_upper` functions, there's no need to waste space on them in the LUTs.
2023-03-15Auto merge of #2806 - saethlin:better-install, r=RalfJungbors-17/+15
Install binaries to the miri toolchain's sysroot The default install produces this behavior: ``` $ cargo +miri miri --version miri 0.1.0 (0ba1f4a0 2023-03-05) $ cargo +nightly miri --version miri 0.1.0 (0ba1f4a0 2023-03-05) ``` Which is not good. We've effectively erased the toolchain selection, and users may reasonably conclude that their rustup install is broken. After this change, we now get this: ``` $ cargo +miri miri --version miri 0.1.0 (0ba1f4a0 2023-03-05) $ cargo +nightly miri --version miri 0.1.0 (f63ccaf 2023-03-06) ``` Thanks `@jyn514` who all but wrote this for me.
2023-03-15use date-based cache keyRalf Jung-4/+4
2023-03-14Merge from rustcBen Kimock-4256/+15677
2023-03-14Preparing for merge from rustcBen Kimock-1/+1
2023-03-14Don't use CI caches from before this branchBen Kimock-4/+4
2023-03-14Update docs to matchBen Kimock-10/+7
Co-authored-by: Ralf Jung <post@ralfj.de>
2023-03-14Update cargoWeihang Lo-0/+0
14 commits in 7d3033d2e59383fd76193daf9423c3d141972a7d..4a3c588b1f0a8e2dc8dd8789dbf3b6a71b02ed49 2023-03-08 17:05:08 +0000 to 2023-03-14 14:05:36 +0000 - ci: make clean-test-output a script for reuse (rust-lang/cargo#11848) - Accurately show status when downgrading dependencies (rust-lang/cargo#11839) - docs(contrib): Move Design Principles earlier in the book (rust-lang/cargo#11842) - docs(contrib): Point compilation docs to doc comments (rust-lang/cargo#11841) - `cargo install --git` multiple packages with binaries found hint (rust-lang/cargo#11835) - Disable flaky auth tests when `gitoxide` runs them (rust-lang/cargo#11830) - Add some documentation on writing cross-compilation tests (rust-lang/cargo#11825) - chore: Use sparse protocol on stable CI (rust-lang/cargo#11829) - Notice for potential unexpected shell expansions in help text of `cargo-add` (rust-lang/cargo#11826) - Add tracking issue to gitoxide unstable docs (rust-lang/cargo#11822) - Bump crates-io to 0.36.0 (rust-lang/cargo#11820) - Bump to 0.71.0; update changelog (rust-lang/cargo#11815) - docs(contrib): Move overview to lib (rust-lang/cargo#11809) - Fix semver check for 1.68 (rust-lang/cargo#11817)
2023-03-14Remove box expressions from HIRclubby789-27/+7
2023-03-14add dist.compression-profile option to control compression speedPietro Albini-47/+111
2023-03-14Auto merge of #104833 - Swatinem:async-identity-future, r=compiler-errorsbors-23/+3
Remove `identity_future` indirection This was previously needed because the indirection used to hide some unexplained lifetime errors, which it turned out were related to the `min_choice` algorithm. Removing the indirection also solves a couple of cycle errors, large moves and makes async blocks support the `#[track_caller]`annotation. Fixes https://github.com/rust-lang/rust/issues/104826.
2023-03-13Auto merge of #109069 - lnicola:rust-analyzer-2023-03-13, r=lnicolabors-3055/+12635
:arrow_up: `rust-analyzer` r? `@ghost`
2023-03-13Auto merge of #108471 - clubby789:unbox-the-syntax, r=Nilstrieb,est31bors-171/+72
Remove `box_syntax` r? `@Nilstrieb` This removes the feature `box_syntax`, which allows the use of `box <expr>` to create a Box, and finalises removing use of the feature from the compiler. `box_patterns` (allowing the use of `box <pat>` in a pattern) is unaffected. It also removes `ast::ExprKind::Box` - the only way to create a 'box' expression now is with the rustc-internal `#[rustc_box]` attribute. As a temporary measure to help users move away, `box <expr>` now parses the inner expression, and emits a `MachineApplicable` lint to replace it with `Box::new` Closes #49733
2023-03-13:arrow_up: rust-analyzerLaurențiu Nicola-3055/+12635
2023-03-12Auto merge of #108872 - cjgillot:simp-const-prop, r=oli-obkbors-21/+24
Strengthen state tracking in const-prop Some/many of the changes are replicated between both the const-prop lint and the const-prop optimization. Behaviour changes: - const-prop opt does not give a span to propagated values. This was useless as that span's primary purpose is to diagnose evaluation failure in codegen. - we remove the `OnlyPropagateInto` mode. It was only used for function arguments, which are better modeled by a write before entry. - the tracking of assignments and discriminants make clearer that we do nothing in `NoPropagation` mode or on indirect places.
2023-03-12Auto merge of #2811 - saethlin:readme-nextest, r=RalfJungbors-0/+20
Add a section on using nextest Inspired by this question: https://github.com/rust-lang/miri/issues/2805
2023-03-12tweak readmeRalf Jung-3/+3
2023-03-12Add a section on using nextestBen Kimock-0/+20
2023-03-12Add eslint check for rustdoc-gui testerGuillaume Gomez-8/+104
2023-03-12Remove `box_syntax` from AST and use in toolsclubby789-13/+2
2023-03-12Remove uses of `box_syntax` in rustc and toolsclubby789-158/+70
2023-03-12Rollup merge of #109028 - GuillaumeGomez:rustdoc-js-tester-eslint, r=notriddleMatthias Krüger-44/+142
Add eslint checks for rustdoc-js tester r? ``@notriddle``
2023-03-11Improve rustdoc-js tester code clarity a bitGuillaume Gomez-7/+9
2023-03-11Add eslint checks for rustdoc-js testerGuillaume Gomez-38/+134
2023-03-11Implement intrinsics for round_ties_evenBen Kimock-0/+35
2023-03-11Use trimmed instead of line for performanceest31-4/+4
2023-03-11Extend the tidy lint to ftl filesest31-1/+6
2023-03-11tidy: enforce comment blocks to have even number of backticksest31-9/+47
Some comments may be formed like: // This function takes a tuple `(Vec<String>, // Box<[u8]>)` and transforms it into `Vec<u8>`. where the "back-ticked" section wraps around. Therefore, we can't make a single-line based lint. We also cannot make the lint paragraph based, as it would otherwise complain about inline code blocks: /// ``` /// use super::Foo; /// /// fn main() { Foo::new(); } /// ``` For the future, one could introduce some checks to treat code blocks specially, but such code would make the check even more complicated.
2023-03-11tidy: allow direct format args capture in macroest31-4/+4
2023-03-11Rollup merge of #108950 - cjgillot:inherit-less, r=compiler-errorsMatthias Krüger-33/+32
Directly construct Inherited in typeck. Using `InheritedBuilder` + a closure does not seem necessary any more. + a few opportunistic simplifications to typeck entry point.
2023-03-11Rollup merge of #108927 - Ayush1325:pal-cleanup, r=workingjubileeMatthias Krüger-2/+0
Move __thread_local_inner to sys Move `__thread_local_inner` macro in `crate::thread::local` to `crate::sys`. Initially, I was thinking about removing this macro completely, but I could not find a way to create the generic statics without macros, so in the end, I just moved to code around. This probably will need a rebase once https://github.com/rust-lang/rust/pull/108917 is merged r? ``@workingjubilee``
2023-03-10Merge from rustcBen Kimock-223/+4643
2023-03-10Preparing for merge from rustcBen Kimock-1/+1
2023-03-11Auto merge of #104527 - ferrocene:pa-more-licenses, r=pnkfelixbors-111/+101
Add more license annotations This PR updates the `.reuse/dep5` file to include more accurate licensing data for everything in the repository (*excluding* submodules and dependencies). Some decisions were made in this PR: * The standard copyright attribution for files maintained by us is "The Rust Project Developers (see https://thanks.rust-lang.org)", to avoid having to maintain an in-tree `AUTHORS` file. * For files that have specific licensing terms, we added the terms to the `.reuse/dep5` rather than adding SPDX comments in the files themselves. * REUSE picks up any comment/text line with `Copyright` on it, so I had to sprinkle around `REUSE-IgnoreStart` and `REUSE-IgnoreEnd` comments. The rendered `COPYRIGHT` file is available at https://gist.github.com/pietroalbini/efb81103f69596d39758114f3f6a8688. r? `@pnkfelix`
2023-03-10Auto merge of #108974 - flip1995:clippyup, r=Manishearthbors-775/+2508
Update Clippy r? `@Manishearth` cc `@m-ou-se` This sync also includes https://github.com/rust-lang/rust-clippy/pull/10275
2023-03-10Directly construct Inherited.Camille GILLOT-33/+32
2023-03-10Moved thread_local implementation to sys::commonAyush Singh-2/+0
This allows removing all the platform-dependent code from `library/std/src/thread/local.rs` and `library/std/src/thread/mod.rs` Signed-off-by: Ayush Singh <ayushsingh1325@gmail.com>
2023-03-10Auto merge of #102256 - cjgillot:let-under, r=lcnrbors-0/+1
Introduce a no-op `PlaceMention` statement for `let _ =`. Fixes https://github.com/rust-lang/rust/issues/54003 Fixes https://github.com/rust-lang/rust/issues/80059 Split from https://github.com/rust-lang/rust/pull/101500 This PR introduces a new `PlaceMention` statement dedicated to matches that neither introduce bindings nor ascribe types. Without this, all traces of the match would vanish from MIR, making it impossible to diagnose unsafety or use in #101500. This allows to mark `let _ = <unsafe union access or dereference>` as requiring an unsafe block. Nominating for lang team, as this introduces an extra error.
2023-03-10Merge commit '3c06e0b1ce003912f8fe0536d3a7fe22558e38cf' into clippyupPhilipp Krones-775/+2508
2023-03-09Introduce a no-op PlaceMention statement for `let _ =`.Camille GILLOT-0/+1
2023-03-09Install binaries to the miri toolchain's sysrootBen Kimock-4/+5
2023-03-09replace legacy copyright annotations in submodulesPietro Albini-81/+8
2023-03-09avoid reuse tripping over copyright noticesPietro Albini-0/+12
2023-03-09include directories in grouped licensing informationPietro Albini-30/+72
2023-03-09strip leading dots from copyright statementsPietro Albini-0/+9
2023-03-09Rollup merge of #108917 - Ayush1325:tidy-improve, r=workingjubileeMatthias Krüger-0/+3
Consider target_family as pal Currently, tidy does not consider code in target_family as platform-specific. This is erroneous and should be fixed. r? `@workingjubilee`