Skip to content

Conversation

xdoardo
Copy link
Collaborator

@xdoardo xdoardo commented Aug 22, 2025

  • libstd: init(): dup() subsequent /dev/nulls instead of opening them again
  • #[allow(dead_code)]
  • Rollup of 9 pull requests rust-lang/rust#139717 (comment) 🥴
  • implement continue_ok and break_ok for ControlFlow
  • moved simple test to coretests, introduced more fleshed out doctests for break_ok/continue_ok
  • Fix parameter order for _by() variants of min / max/ minmax in std::cmp
  • impl PartialEq<{str,String}> for {Path,PathBuf}
  • Extend implicit_clone to handle to_string calls
  • Fix adjacent code
  • Account for changes from issue 14396
  • Replace string_to_string with char_lit_as_u8 in driver.sh
  • scrape-examples.js: give each function a signature
  • rustdoc js: add ScrapedLoc type
  • rustdoc js: add rustdoc.ScrapedLoc type
  • fix typo
  • scrape-examples.js: add another nonnull() invokation
  • Add stubs for environment variables; document some of the important ones
  • scrape-examples.js: fix typos
  • Stabilize ip_from
  • fix: iter_on_single_items FP on function pointers
  • fix: iter_on_single_item FP on let stmt with type annotation
  • Mark slice::swap_with_slice unstably const
  • rustdoc search: prefer stable items in search results
  • Rename hir const arg walking functions
  • Don't double visit HirIds of inferred const/types
  • Link to dev-guide docs
  • Fix unsoundness in some tests
  • fix: let_unit_value suggests wrongly for format macros
  • add nvptx_target_feature
  • target-feature: enable rust target features implied by target-cpu
  • Make doc for transpose api better
  • Reviews
  • emit StorageLive and schedule StorageDead for let-else after matching
  • tests: add test for invalid interrupt signatures
  • compiler: fixup error message for x86-interrupt invalid returns
  • compiler: allow interrupts to return () or !
  • remember how to write never returns
  • Do not autofix comments containing bare CR
  • Improve settings tree title and descriptions
  • Remove LtoModuleCodegen
  • Move dcx creation into WriteBackendMethods::codegen
  • stabilize const_array_each_ref
  • Remove unused config param from WriteBackendMethods::autodiff
  • Merge run_fat_lto, optimize_fat and autodiff into run_and_optimize_fat_lto
  • Make __rust_alloc_error_handler_should_panic a function
  • Use object crate from crates.io to fix windows build error
  • Make tempfile a normal dependency
  • compiler: Parse p- specs in datalayout string, allow definition of custom default data address space
  • Remove unused allow attrs
  • Remove support for dynamic allocas
  • Add opaque TypeId handles for CTFE
  • Add Ref/RefMut try_map method
  • fix: search_is_some suggests wrongly inside macro
  • fix: match_single_binding wrongly handles scope
  • Add Default impls for Pinned Box, Rc, Arc
  • use codegen_instance_attrs where an instance is (easily) available
  • Stabilize as_array_of_cells
  • fix: match_single_binding suggests wrongly inside binary expr
  • fix collapsable_if when the inner if is in parens
  • Merge commit 'f682d09eefc6700b9e5851ef193847959acf4fac' into subtree-update_cg_gcc_2025-07-18
  • Remove forgotten git annotations
  • combine rust files into one compilation
  • update Cargo.lock
  • split rust code into crates
  • generate arrays of type-erased function pointers
  • Move float non determinism helpers to math.rs
  • fix collapsable_else_if when the inner if is in parens
  • Document guarantees of poisoning
  • available_parallelism: Add documentation for why we don't look at ulimit
  • Reject relaxed bounds inside associated type bounds
  • Split possible_missing_else from suspicious_else_formatting.
  • Merge modules and cached_modules for fat LTO
  • Move LTO symbol export calculation from backends to cg_ssa
  • Merge exported_symbols computation into exported_symbols_for_lto
  • Move exported_symbols_for_lto out of CodegenContext
  • Remove each_linked_rlib_for_lto from CodegenContext
  • Stabilize const TypeId::of
  • ci: Switch to nightly rustfmt
  • Add missing inline attribute
  • Fix clippy warnings
  • Fix spelling mistakes
  • Implement nondet behaviour and change/add tests.
  • Rename tests/assembly into tests/assembly-llvm
  • Fix failing UI tests
  • Fix compilation of overflow addition
  • Use a bitcast in Builder::ret to support non-native integers
  • Fix spelling mistake
  • Fix sysroot compilation in release mode
  • Remove failing UI test
  • Remove failing run-make test
  • Add failing UI tests
  • Add missing cast in gcc_checked_binop
  • Remove failing UI test
  • Add missing cast in gcc_checked_binop
  • work around not being able to project out of SIMD values any more
  • remove lazy_static dependency from intrinsic-test
  • document assumptions about Clone and Eq traits
  • remove trailing whitespace
  • add links to collections
  • [rustdoc] Display unsafe attrs with edition 2024 unsafe() wrappers.
  • properly use caller-side panic location for some GenericArgs methods
  • atomicrmw on pointers: move integer-pointer cast hacks into backend
  • remove unused deps
  • bump serde_with. Weird that it works without std feature, but
  • ci: Add native PowerPC64LE and s390x jobs
  • Prepare for merging from rust-lang/rust
  • Reformat code
  • Fix gcc_icmp with non-native integers
  • Upgrade semicolon_in_expressions_from_macros from warn to deny
  • ci: Update to the latest ubuntu:25.04 Docker images
  • symcheck: Switch the object dependency from git to crates.io
  • ci: Use a mirror for musl
  • ci: Upgrade ubuntu:25.04 for the PowerPC64LE test
  • Enable tests that were skipped on PowerPC
  • Add non-temporal note for maskmoveu_si128
  • asm: Stabilize loongarch32
  • get rid of some false negatives in rustdoc::broken_intra_doc_links
  • adjust more unit tests to reflect more aggressive intra-doc linting
  • rustdoc::broken_intra_doc_links: no backticks = use old behavior
  • rustdoc: update tests to match new lint behavior
  • rustdoc::broken_intra_doc_links: only be lenient with shortcut links
  • move bad-intra-doc test into intra-doc dir
  • expand the issue template for new lints
  • fix up issues with internal compiler docs revealed by stricter lint
  • Enable tests that were skipped on aarch64
  • Enable skipped f32 and f64 multiplication tests
  • fix markdown
  • Use x86_no_sse configuration in more places
  • fix ip_constant when call wrapped in extra parens
  • Detect prefixed attributes as duplicated
  • loongarch: Use unified data types for SIMD intrinsics
  • Fix gen panics doc template for debug_assert
  • moved 34 tests to organized locations
  • Link to Mutex poisoning docs from RwLock docs
  • Merge commit '1db89a1b1ca87f24bf22d0bad21d14b2d81b3e99' into clippy-subtree-update
  • fmt of non-decimals is always non-negative due to the two's-complement output
  • fmt benchmarks for binary, octal and hex
  • Add a list of failure conditions for poisoning
  • Add a note on foreign exceptions
  • Get myself back on assignment rotation
  • Implement support for explicit tail calls in the MIR block builders and the LLVM codegen backend.
  • Skip formatting for some compiler documentation code
  • Improve and regularize comment placement in doc code
  • Avoid placing // FIXME comments inside doc code blocks
  • Add parentheses around expression arguments to ..
  • Avoid making the start of a doc code block conditional
  • Deprecate string_to_string
  • tests: Add test for basic line-by-line stepping in a debugger
  • Remove support for -Zcombine-cgu
  • Add release notes for 1.89.0
  • Fix tooling
  • Implement ptr_cast_array
  • Use cast_array in core
  • libm: Update for new warn-by-default clippy lints
  • Avoid inlining floor into rem_pio2
  • feat: updated Argument type for functional compatibility with other architectures too
  • fix: empty_structs_with_brackets suggests wrongly on generics
  • fix: unnecessary_map_or don't add parens if the parent expr comes from a macro
  • chore: handling the case where --generate-only flag is passed
  • Fix typo non_std_lazy_statics.rs
  • refactor: conpare text of name_ref instead of syntax name_ref
  • Migrate inline_type_alias assist to use SyntaxEditor
  • remove ted from convert_tuple_struct_to_named_struct
  • migrate fn edit_struct_def in convert_tuple_struct_to_named_struct to SyntaxEditor
  • Migrate convert_tuple_struct_to_named_struct' assist to use SyntaxEditor'
  • Implement floor and ceil in assembly on i586
  • Remove no-asm gating when there is no alternative implementation
  • In rustc_pattern_analysis, put true witnesses before false witnesses
  • avoid the need to specify if toc should be generated
  • remove the markers
  • use minicore for fortanix assembly tests
  • update fortanix run-make test
  • Fix tests/codegen-llvm/simd/extract-insert-dyn.rs test failure on riscv64
  • Do not treat NixOS as a Pascal-cased identifier
  • fix: cast-lossless should not suggest when casting type is from macro input
  • Rename trait_of_item -> trait_of_assoc
  • Rename impl_of_method -> impl_of_assoc
  • Do not specialize for if_chain any longer
  • Fix typo in internal error message
  • Allow cargo fix to partially apply mismatched_lifetime_syntaxes
  • Enable features that are always available in a live system.
  • Fortify RemoveUnneededDrops test.
  • Add the CRC instructions.
  • fix: Do not require all rename definitions to be renameable
  • clearer wording for unsafe code
  • WIP: auth using GitHub app
  • Remove bot-pull-requests triagebot config
  • Use main branch of josh-sync for CI workflow
  • Use GitHub app for authenticating sync workflows
  • Use GH app for authenticating sync PRs
  • Use GH app for authenticating pull PRs
  • Switch to using a GH app for authenticating sync PRs
  • In generate_mut_trait_impl, don't add a tabstop if the client does not support snippets
  • Apply suggestions from code review
  • When displaying a projection into a type parameter that has bounds as impl Trait, collect only the bounds of this projection
  • add SyntaxFactory::record_expr to hide clone_for_update
  • replace make:: to SyntaxFactory:: in inline_type_alias
  • cleanup: Trim trailing whitespace
  • ci: Simplify tests for verbatim paths
  • Optimize some usages of double unary operators in suggestions
  • bootstrap: extract cc query into a new function
  • bootstrap: split runtime DLL part out of make_win_dist
  • Fix min_ident_chars: add trait/impl awareness
  • Remove outdated ci.py reference
  • const-eval: full support for pointer fragments
  • AlignmentEnum should just be repr(usize) now
  • Output lintcheck summary HTML markdown in order
  • chore: fix some minor issues in comments
  • ci: Switch to strongly typed directives
  • ci: Don't print output twice in ci-util
  • ci: Commonize the way PrInfo is loaded from env
  • ci: Add a way to run libm tests that would otherwise be skipped
  • Add documentation for unstable_feature_bound
  • Remove space
  • Fix tests for big-endian
  • Update codegen_{cranelift,gcc} and opt-dist to use build.compiletest-allow-stage0
  • Regenerate intrinsics mapping
  • Abtract away json protocol for proc-macro-srv
  • add SyntaxEditor::delete_all to migrate utils.rs add_trait_assoc_items_to_impl
  • ci: Set pipefail before running ci-util
  • Simplify the configuration for no-panic
  • Distinguish appending and replacing self ty in predicates
  • Distinguish appending and replacing self ty in predicates
  • Simplify boolean expression in manual_assert
  • Stabilize strict_overflow_ops
  • [test][AIX] ignore extern_weak linkage test
  • expand WF obligations when checking method calls
  • Address some rustc inconsistency issues
  • Prepare for merging from rust-lang/rust
  • Prepare for merging from rust-lang/rust
  • Remove TyCtxt::get_attrs_unchecked.
  • Extend is_case_difference to handle digit-letter confusables
  • rustup
  • rely on preinstalled rustup on windows-arm
  • Properly clean proc-macro-srv proc-macro temp dir
  • Reorganize proc-macro-srv
  • bless cargo miri doctest execution
  • Add version command to proc-macro-srv
  • cargo clippy --fix
  • Streamline const folding/visiting.
  • Make const bound handling more like types/regions.
  • Check consts in ValidateBoundVars.
  • Deduplicate IntTy/UintTy/FloatTy.
  • remove rustc_attr_data_structures
  • remove rustc_attr_data_structures
  • dont assemble shadowed impl candidates
  • add tests
  • Changelog for Clippy 1.89
  • resolve: Clarify extern prelude insertion for extern crate items
  • resolve: Do not add erroneous names to extern prelude
  • resolve: Avoid double table lookup in extern_prelude_get
  • resolve: Cleanup some uses of extern prelude in diagnostics
  • Do not give function allocations alignment in consteval or miri.
  • improve linking in the "Auxilirary builds" section of directive index
  • Add lint against dangling pointers form local variables
  • Allow dangling_pointers_from_locals lint in tests
  • detect infinite recursion with tail calls in ctfe
  • loop match: error on #[const_continue] outside #[loop_match]
  • [Doc] Add links to the various collections
  • aarch64: Make outline-atomics a known target feature
  • Add human readable name "Cygwin"
  • Correct some grammar in integer documentation
  • Prepare for merging from rust-lang/rust
  • fmt
  • Constify additional Result functions
  • update rustup PR message
  • bump version
  • Update to LLVM 21
  • Update host toolchain
  • more strongly dissuade use of skip_binder
  • {flat_,}map_identity: recognize (tuple) struct de- and restructuring
  • rarw
  • Properly pass path to staged rustc to compiletest self-tests
  • Rename extended rustc tool macros
  • Add metadata to Cargo and RustAnalyzer tools
  • Cleanup ensure_if_default to not require Option output
  • Add step metadata to RustAnalyzerProcMacroSrv
  • Rename Builder::rustdoc to Builder::rustdoc_for_compiler
  • Implement RustcPrivateCompilers to unify building of rustc_private tools
  • Add step metadata and a few tests for Doc steps
  • Refactor Rustdoc
  • Fix ToolRustc build with download-rustc
  • Add step metadata and a simple test for codegen backends
  • Port codegen backends to RustcPrivateCompilers
  • Rename link_compiler to target_compiler
  • Appease Clippy
  • Add basic Cargo snapshot test
  • Make Cargo a ToolTarget tool
  • Update CargoTest
  • Add snapshot tests for test cargo and update Cargo snapshot tests
  • Make build compiler explicit in dist::Cargo
  • Fix x test cargo
  • Make x test cargo stage N test rustc stage N
  • Clarify comments on Cargo (self-)test steps
  • rarw
  • compiletest: Improve diagnostics for line annotation mismatches 2
  • Fix LTO errors by not adding AlwaysInline to __rust_alloc_error_handler_should_panic_v2
  • move gcc config parsing to parse_inner
  • move dist to parse_inner
  • move target parsing to parse_inner
  • move install to parse_inner
  • move llvm parsing to parse_inner
  • move rust config to parse_inner
  • Force initializing ExecutionContext with verbosity and fail_fast mode
  • Extract TOML config loading and src directory computation into separate functions
  • Split TOML postprocessing into a separate function
  • Override some build TOML values by flags
  • Fix logging of config skip values
  • Fix verbosity setting
  • add install default implementation
  • add gcc and dist default implementation
  • add llvm default implementation
  • add rust default implementation
  • make llvm toml fields follow a specific naming convention
  • make gcc toml fields follow a specific naming convention
  • make dist toml fields follow a specific naming convention
  • make install toml fields follow a specific naming convention
  • make build toml fields follow a specific naming convention
  • move build config to the top of parse method
  • move install config to the top of parse method
  • move rust config to the top of parse method
  • Add failing LTO test
  • move llvm config to the top of parse method
  • move dist and gcc config to the top of parse method
  • Cleanup the definition of group_type
  • Fix issues in count_leading_zeroes
  • Update documentation for overrideCommand config options
  • Fix more docs
  • Update compiler/rustc_const_eval/src/interpret/memory.rs
  • LLVM error with unsupported expression in static initializer for const pointer in array on macOS
  • Multiple bounds checking elision failures
  • Add my previous commit name to .mailmap
  • Remove the omit_gdb_pretty_printer_section attribute
  • Fix safety comment for new_unchecked in niche_types
  • rustdoc font links only emit crossorigin when needed
  • feat: implement hash_map! macro
  • Optimize broken_links by 99.77%
  • refactor unreachable/expr_cast.rs test
  • don't warn on explicit casts of never to any
  • Interner arg to EarlyBinder does not affect auto traits
  • Stylize *-lynxos178-* target maintainer handle to make it easier to copy/paste
  • fix: let_with_type_underscore don't eat closing paren in let (i): _ = 0;
  • Pull out unexpected extension check into own function
  • Pull out stray/empty output snapshot checks into own functions
  • Pull out non-descriptive test name check to own function
  • Make issues_txt_header a const
  • Pull out recursive ui test check into its own function
  • Reject adding new UI tests directly under tests/ui/
  • Update E0562 to account for the new impl trait positions
  • fmt with table lookup for binary, octal and hex
  • Migrate convert_from_to_tryfrom assist to use SyntaxEditor
  • c-variadic: multiple ABIs in the same program for arm
  • use gcc 15 as the linker on loongarch
  • Flatten hash_owner_nodes with an early-return
  • Return a struct with named fields from hash_owner_nodes
  • update doc
  • Implement SIMD funnel shifts
  • update flags for consistency
  • update links
  • fix: option_if_let_else keep deref op if the inner expr is a raw pointer
  • Migrate generate_delegate_methods assist to use SyntaxEditor
  • Change visibility of Args new function
  • When renaming a parameter to self, change callers to use method call syntax
  • Do not record derived impl def-id for dead code.
  • Rehome tests/ui/issues/ tests [2/?]
  • fix: option_if_let_else don't suggest argless function for Result::map_or_else
  • Use DefKind in should_explore.
  • cargo update
  • Remove struct_constructors.
  • Simplify handling of unsolved items.
  • Use less HIR when seeding work list.
  • Keep scanned set across calls to mark_live_symbols.
  • Simplify lint emission.
  • Change ProcRes::print_info to format_info
  • Consolidate all ProcRes unwinds into one code path
  • Change TestCx::error to error_prefix, which returns a string
  • there is still no official policy
  • Migrate generate_trait_from_impl assist to use SyntaxEditor
  • For "stage 1" ui-fulldeps, use the stage 1 compiler to query target info
  • Mark Printer methods as unreachable where appropriate.
  • Inline and remove two FmtPrinter methods.
  • Remove type_name::AbsolutePathPrinter::comma_sep.
  • Rename Printer variables.
  • Simplify SymbolMangler::print_type.
  • Remove p!.
  • Remove unused arg from path_append_impl.
  • feat: Added another variant of the Constraint enum
  • Remove unused functions from edit_in_place
  • rename rust_panic_without_hook
  • don't allocate a Vec in an Iterator::chain
  • use parens for clearer formatting
  • use ? for brevity
  • Fix intcast to use the is_signed parameter
  • fix: Error on illegal [const]s inside blocks within legal positions
  • Only use bitcast in Builder::ret for non-native integers
  • removed gate
  • remove rust_ prefixes
  • forbid tail calling intrinsics
  • Use as_array in PartialEq for arrays
  • Remove SHOULD_EMIT_LINTS in favor of should_emit
  • Fix simd_funnel_shift
  • Task priority
  • fix broken doc section link in poison.rs
  • add poisoning documentation to LazyCell
  • add poisoning documentation to LazyLock
  • remove gate
  • Implement stability_implications without a visitor.
  • Avoid some code duplication.
  • clean-up semicolon_inside_block
  • Update to nightly-2025-08-03
  • Add new failing test
  • Fix stdarch patch
  • Remove strict_overflow_ops lint
  • Add a mir-opt test for debug MIR from derive(PartialOrd, Ord)
  • Add a debug-mode MIR pre-codegen test for ?-on-Option
  • coverage: Include an Instance in CovfunRecord for debug messages
  • coverage: Hoist counter_for_bcb out of its loop
  • coverage: Remove -Zcoverage-options=no-mir-spans
  • coverage: Push async special case down into extract_refined_covspans
  • coverage: Simplify access to debug/testing -Zcoverage-options flags
  • coverage: Represent CovmapVersion as an enum
  • Prepare for merging from rust-lang/rust
  • Prepare for merging from rust-lang/rust
  • Add a mir-opt test for an unneeded drop_in_place
  • Implement debugging output of the bootstrap Step graph into a DOT file
  • Do not render both cached and uncached edge between two steps
  • drive-by cleanup: fix outdated documentation
  • properly reject tail calls to &FnPtr or &FnDef
  • small refactor of InterpResult
  • Update RELEASES.md
  • Update RELEASES.md
  • add project_fields helper function
  • Fix splitting dylib paths
  • remove feature gate
  • Update installation.md
  • Remove tcp-stress.rs test
  • remove begin prefix
  • Print CGU reuse statistics when -Zprint-mono-items is enabled
  • Add new test::print_merged_doctests_times used by rustdoc to display more detailed time information and add new OutputFormatter::write_merged_doctests_times method to handle it
  • Fix not showing deprecated lints
  • Require approval from t-infra instead of t-release on tier bumps
  • std: sys: io: io_slice: Add UEFI types
  • Remove rogue comma from infallible_try_from lint message
  • Anonymize binders in tail call sig
  • Enforce tail call type is related to body return type in borrowck
  • Port #[coroutine] to the new attribute system
  • Fix wrong font being used for tooltips i icons
  • Add GUI regression test for tooltips i icons
  • Tweak auto trait errors
  • Don't actually pass BB to check_call_dest
  • windows-gnullvm: include libunwind.dll in dist
  • Include whitespace in "remove |" suggestion and make it hidden
  • Dont print arg span in MIR dump for tail call
  • compiletest: add hint for when a ui test produces no errors
  • Correct the use of must_use on btree::IterMut
  • updated doc comment
  • Rehome tests/ui/issues/ tests [3/?]
  • Drop rust-version from rustc_thread_pool
  • Simplify maybe_record_as_seed.
  • Update doc-comment.
  • Add doc-comment.
  • [win][arm64ec] Fix msvc-wholearchive for Arm64EC
  • Added checks for attribute in type case
  • Let RemoveUnneededDrops also remove drop_in_place
  • Add test for "missing function argument" on multiline call
  • feat: cleaned the IntrinsicType struct and associated functions.
  • chore: moved chunk_info to common and code cleanup
  • autolabel PRs that change etc tests as F-explicit_tail_calls
  • Preserve the .debug_gdb_scripts section
  • Clarify value_path_str_with_args.
  • Rename most of the printers.
  • Simplify multiple things.
  • Do not lint for wildcard_imports in external macro
  • use IntoIterator for the add_flags methods
  • Generate lint count in template
  • Move cognitive_complexity lint from nursery to restriction
  • fix: unnecessary_sort_by lint method consistency in message and suggestion
  • Mark all deprecation lints in name resolution as deny-by-default and report-in-deps
  • Ignore sleep_until test on SGX
  • Gate const trait syntax
  • we only merge candidates for trait and normalizes-to goals
  • Add regression tests for seemingly fixed issues
  • fix(unicode-table-generator): fix duplicated unique indices
  • Use runtimes build for host compiler-rt build
  • moved 35 tests to organized locations
  • comments
  • Stabilize core::iter::chain
  • compiler-builtins: plumb LSE support for aarch64 on linux
  • Dynamically enable LSE for aarch64 rust provided intrinsics
  • Fix description of unsigned checked_exact_div
  • Add u8-as-ASCII methods to core::ascii::Char
  • Add std::ascii::Char MIN and MAX constants
  • Add aarch64_be-unknown-none-softfloat target
  • rustdoc: fix caching of intra-doc links on reexports
  • Renamed isolate_most_least_significant_one functions
  • add code example showing that file_prefix treats dotfiles as the name of a file, not an extension
  • configure: Use CARGO_CFG_*_{F16,F128} rather than invoking rustc
  • File::set_times: Remove write(true) from the example so it works on directories
  • File::set_times: Add documentation about setting directory timestamps
  • Fortify generic param default checks
  • Fix some doc links for intrinsics
  • Add comments to Printer.
  • Move should_truncate from trait Printer to sub-trait PrettyPrinter.
  • run-make: Allow blessing snapshot files that don't exist yet
  • Rename some Printer methods.
  • Rename some PrettyPrinter methods.
  • Add annotations to the graphviz region graph on region origins
  • Fix CSS indent
  • Remove CSS bootstrap dependency
  • remove redundant _toml suffix and other misc changes
  • Embed GDB pretty printers in rlibs and dylibs
  • replace version placeholder
  • bump stage0
  • simplifycfg: Mark as changed when start is modified in collapse goto chain
  • coverage: Remove all unstable support for MC/DC instrumentation
  • add note on how to build wasi
  • mir: Do not modify NonUse in super_projection_elem
  • Add a few missed entries
  • handle bootstrap cfgs
  • Introduce ModernIdent type to unify macro 2.0 hygiene handling
  • Remove unneeded stage parameter when setting up stdlib Cargo
  • Include allocator module in LLVM_passes timer
  • Remove unused field from ModuleConfig
  • Optimize incompatible_msrv lint
  • Proposed format
  • Clarify EOF handling for BufRead::skip_until
  • Track names of existentials
  • Fix build/doc/test of error index generator
  • Fix rustdoc scrape-examples feature crash
  • Change stdlib float tests to account for miri nondet floats.
  • Add regression test for rustdoc scrape-examples feature crash (#144752)
  • tidy
  • Change adjust_for_rust_scalar into arg_attrs_for_rust_scalar
  • Avoid using unadjusted ABI for the thread-local shim
  • [codegen] assume the tag, not the relative discriminant
  • Allow function argument mismatch suggestion to be multiline
  • Optimize needless_bool lint
  • Revert "Embed GDB pretty printers in rlibs and dylibs"
  • Revert "Preserve the .debug_gdb_scripts section"
  • Link from "Overview of the compiler § Queries" to the Queries chapter
  • Fix ICE
  • Move some TypeVisitable/TypeFoldable impls to rustc_type_ir
  • Reword documentation for set_times to clarify directory handling
  • don't schedule unnecessary drops when lowering or-patterns
  • make rustc_public types derive Hash
  • Explicitly disable vector feature on s390x baseline of bad-reg test
  • base drop order on the first sub-branch
  • lower bindings in the order they're written
  • Port #[should_panic] to the new attribute parsing infrastructure
  • Changes to the tests for the #[should_panic] port
  • Make link relative an link to md not html
  • Add support for shortening Instance and use it
  • Update books
  • Optimize char::is_alphanumeric
  • Add normalization for thread IDs in panic messages
  • Print thread ID in panic message if thread name is unknown
  • explicit tail call tests with indirect operands in LLVM, small test for indexing into a function table as described by RFC 3407
  • Reimplement print_region in type_name.rs.
  • Prepare for merging from rust-lang/rust
  • Fix "comparision" typo in new lint template
  • doc(library): Fix Markdown in Iterator::by_ref.
  • move type_check out of compute_regions
  • Fix doc comment of File::try_lock and File::try_lock_shared
  • move member-constraints tests
  • add opaque type member constraint tests
  • add multiple known-bugs for NLL problem case 3
  • add filtering lending iterator known-bug
  • add multiple known-bugs for the linked-list cursor-like pattern of 46859/48001
  • Prevent name collisions with internal implementation details
  • Port #[allow_internal_unsafe] to the new attribute system
  • Introduce, implement and use CmResolver.
  • Move metadata symbol export from exported_non_generic_symbols to exported_symbols
  • Bump nightly version -> 2025-08-07
  • Bump Clippy version -> 0.1.91
  • Update Cargo.lock
  • Add a missing UpcastFrom impl in rustc_type_ir
  • Clean up some resolved test regressions of const trait removals in std
  • derive hash for placeholder automatically
  • Pass -Werror when building the LLVM wrapper
  • Add regression test for saturating_sub bounds check issue
  • Readd myself to review queue
  • Enable f16 and f128 on targets that were fixed in LLVM21
  • Use tcx.short_string() in more diagnostics
  • Account for bare tuples in field searching logic
  • Do not suggest pinning missing .get_ref()
  • Do not provide field typo suggestions for tuples and tuple structs
  • review comment
  • Add minimal armv7a-vex-v5 support
  • Add diagnostic explaining STATUS_STACK_BUFFER_OVERRUN not only being used for stack buffer overruns if link.exe exits with that exit code
  • Add note mentioning the event log to LinkExeStatusStackBufferOverrun
  • add more tests for if let guard drop order
  • update enzyme submodule to handle llvm 21
  • Add test.
  • Do not flatten derefs with ProjectionElem::Index.
  • add a scope for if let guard temporaries and bindings
  • only introduce a guard scope for arms with guards
  • Consolidate abs tests
  • Consolidate signum tests
  • Consolidate is_positive tests
  • Consolidate is_sign_negative tests
  • Consolidate test_next_up
  • Consolidate test_next_down
  • Consolidate sqrt_domain tests
  • Consolidate clamp tests
  • Consolidate total_cmp tests
  • Hoist zero and one out into TestableFloat
  • Augment the test.
  • Fix some bad formatting in -Zmacro-stats output.
  • Escape diff strings in graphviz
  • Add snapshot test for cross-compilation cargo build
  • Build host library when cross-compiling ToolTarget tools
  • Split CodegenBackend step into two and handle stamp sysroot copy explicitly
  • Refactor dist::CraneliftCodegenBackend
  • Clarify the behavior of rust.codegen-backends
  • Review remarks
  • Bless snapshot tests
  • Revert "Port #[allow_internal_unsafe] to the new attribute system"
  • coverage: Extract HIR-related helper code out of the main module
  • coverage: Remove obsolete comment about hashing HIR
  • Remove bitcode_llvm_cmdline
  • Add target_env = "macabi" and target_env = "sim"
  • fix typos
  • apply_member_constraints: fix placeholder check
  • remove unnecessary TypeFoldable impls
  • Improve error output when a command fails in bootstrap
  • switch polonius compare-mode to polonius=next
  • update test expectations for boring locals + dropckoutlives interactions
  • Fix wasm target build with atomics feature
  • simplify polonius=next
  • new impl fixes crash test
  • turn expensive assert into debug assertion
  • add some test cases for overlapping yielded items
  • add NLL-like imprecision example
  • add cursor-like example that works
  • mark polonius=next's NLL imprecisions as known-bugs
  • rustc_metadata: remove unused private trait impls
  • remove some unused private trait impls
  • editorconfig: don't trim trailing whitespace in tests
  • [win][arm64ec] Partial fix for raw-dylib-link-ordinal on Arm64EC
  • rustdoc: IndexItem::{stability -> is_unstable}
  • rustdoc search: add performance note about searchIndexUnstable check
  • add download_ci_rustc_commit function and invoke from parse_inner
  • borrowck: move error tainting earlier
  • Revert "Rollup merge of #143906 - LorrensP-2158466:miri-float-nondet-foreign-items, r=RalfJung"
  • borrowck: defer opaque type errors
  • mbe: In error messages, don't assume attributes are always proc macros
  • fix missing parenthesis in pretty discriminant
  • add parse_download_ci_llvm function and invoke from parse_inner
  • mbe: Parse macro attribute rules
  • mbe: Fix error message for using a macro with no attr rules as an attribute
  • mbe: Emit an error if a macro call has no function-like rules
  • mbe: Handle applying attribute rules with paths
  • mbe: Handle local macro_rules attr resolution
  • mbe: Add test for macro_rules attributes
  • mbe: Add test for attribute expansion with compile_error!
  • mbe: Add a test for calling a macro with no function-like rules
  • mbe: Add parser test for macro attribute recovery
  • mbe: Add a test confirming that a macro attribute can apply itself recursively
  • mbe: Add a test checking for infinite recursion in macro attributes
  • Recover for PAT = EXPR {}
  • Check coroutine upvars and in dtorck constraint
  • Add test for upvar breakage
  • bootstrap: x.py dist rustc-src should keep LLVM's siphash
  • [win][arm64ec] Add '/machine:arm64ec' when linking LLVM as Arm64EC
  • Refactor map_unit_fn lint
  • Reduce indirect assoc parent queries
  • Rank doc aliases lower than equivalently matched items
  • Add regression test for doc alias matching vs equivalently matched items
  • Use new public libtest ERROR_EXIT_CODE constant in rustdoc
  • add is_system_llvm function and invoke from parse_inner
  • add git_info function and invoke from parse_inner
  • add ci_llvm_root function and invoke from parse_inner
  • add read_file_by_commit function and invoke from parse_inner
  • invoke functions from methods
  • extend download context and change functions to directly use that
  • Prepare for merging from rust-lang/rust
  • Stop using uadd.with.overflow
  • rustc_target: Add the 32s target feature for LoongArch
  • rename TraitRef::from_method to from_assoc
  • Replace unsafe function with safe alternative
  • remove P
  • Stabilize feature
  • Override custom Cargo build-dir in bootstrap
  • comments
  • Change days-threshold to 28 in [behind-upstream]
  • add review comments
  • some derive_more refactors
  • Apply suggestions from code review
  • Remove cfg(bootstrap) for strict_overflow_ops
  • Fix a clippy::needless_borrow
  • improve "Documentation problem" issue template.
  • {BTree,Hash}Map: add "Entry API" section heading
  • HashMap: also add "Usage with custom key types" heading
  • Avoid abbreviating "numerator" as "numer", to allow catching typo "numer" elsewhere
  • Fix an unstable feature comment that wasn't a doc comment
  • cargo update
  • Add gettid support for Android
  • suggest_borrow_generic_arg: use the correct generic args
  • Ignore coroutine witness type region args in auto trait confirmation
  • Use eq_ignore_ascii_case to avoid heap alloc in detect_confuse_type
  • Let forward_ref_ macros accept multiple attributes, and require attributes explicitly*
  • Constify remaining operators
  • mbe: Fix typo in attribute tracing
  • Start reporting future breakage for ILL_FORMED_ATTRIBUTE_INPUT in dependencies
  • Forbid documenting anything on stage 0
  • Fix staging for doc compiler
  • Update Reference doc step
  • Update RustcBook doc step
  • Update Standalone and Releases doc steps
  • Fix documentation of tools
  • Update Std doc step
  • Update doc CI steps stage 2
  • Update tests
  • Add change tracker entry
  • Review remarks
  • Bless tests
  • fix: re-enable self-assignment
  • strip prefix of temporary file names when it exceeds filesystem name length limit
  • Explicitly pass path to built stdlib JSON docs and use the correct compiler for it
  • test: Add rustdoc test for enum negative overflow
  • rustdoc: Use discrs Display impl to render the value with the correct signedness
  • Rehome tests/ui/issues/ tests [4/?]
  • Ship the correct Cranelift backend in its dist step
  • Extract Cranelift component
  • Add a post-dist test for compiling a basic program with Cranelift
  • Enable RUST_BACKTRACE=1 on CI
  • Fix Cargo cross-compilation (take two)
  • Detect struct construction with private field in field with default
  • review comments
  • Fix typo with paren rustc_llvm/build.rs
  • Point at the Fn() or FnMut() bound that coerced a closure, which caused a move error
  • Add support for method calls
  • review comments
  • Fix macro infinite recursion test to not trigger warning about semicolon in expr
  • Account for macros when trying to point at inference cause
  • Add test showing innecessary inference span
  • Do not point at macro invocation when providing inference context
  • Remove unnecessary parentheses in assert!s
  • mention Hash and Ord; refine description of derive
  • cfg_select: Support unbraced expressions
  • Remove unnecessary UnsatisfiedConst reporting logic
  • Remove unnecessary trait predicate eq function
  • Remove unnecessary comment
  • remove from_forall
  • Set dead_on_return attribute for indirect arguments
  • Update sysinfo version to 0.37.0
  • Add tracing to resolve-related functions
  • Turn _span into _trace as trace span name
  • Port #[allow_internal_unsafe] to the new attribute system (attempt 2)
  • Support using #[unstable_feature_bound] on trait
  • Update rustc dev guide
  • Update error message
  • std: sys: pal: uefi: Overhaul Time
  • std: sys: pal: uefi: tests: Add systemtime tests
  • significantly improve provisional cache rebasing
  • dec2flt: Provide more valid inputs examples
  • Make a James Bond reference
  • Document compiler and stdlib in stage1 in pr-check-2 CI job
  • Add tracing to data race functions
  • don't emit rustdoc::broken_intra_doc_links for stuff like [!NOTE]
  • Allow attr entries to declare list of alternatives for List and NamedValueStr
  • Add link to docs on malformed attributes
  • Add link to invalid repr error
  • fix tests
  • Make explicit guarantees about Vec’s allocator
  • Store bootstrap tracing outputs to a unified directory
  • Store latest symlink to the latest tracing output directory
  • Store Chrome step trace into the tracing directory
  • Use shorter command span label
  • Print step timings also when the stap starts to execute
  • Replace tracing_forest with custom span formatting
  • Create a span for each executed step
  • Remove ad-hoc print of executed/cached steps in verbose mode
  • Remove manual #[instrument] annotations on steps
  • Move tracing setup to the tracing module
  • Correctly show executed command name in Chrome trace
  • Always profile commands and generate Chrome profile when tracing is enabled
  • Do not create a span for cached commands
  • Create tracing directory symlink even during dry run
  • Use pretty_step_name in step_graph
  • Update debugging/profiling bootstrap page
  • Print created location of executed commands
  • Update books
  • Add more docs to templates for attrs with incorrect arguments
  • Rework NameValueStr
  • Respond to review comments
  • Simplify add_apple_sdk
  • fix clippy test
  • Deprecate RUST_TEST_ env variables*
  • Pass Apple SDK root to compiler driver via SDKROOT env var
  • Only warn when invoking xcrun
  • Always attempt to invoke xcrun to get the Apple SDK
  • Account for new assert! desugaring in !condition suggestion
  • Factor out InherentImplCannotUnsafe
  • Move trait impl modifier errors to parsing
  • Tweak trait modifier errors
  • llvm: Accept new LLVM lifetime format
  • Extract ast TraitImplHeader
  • Propagate TraitImplHeader to hir
  • Make I-miscompile imply I-prioritize
  • E0793: Clarify that it applies to unions as well
  • Handle the capacity == 0 case
  • [AVR] Changed data_layout
  • bootstrap: Only warn about rust.debug-assertions if downloading rustc
  • fix typo
  • Consolidate stageN directories in the build directory
  • simplify stack handling, be completely lazy
  • Unify all groups in bootstrap to use Builder::msg
  • Change format of messages in Builder::fmt
  • fix(debuginfo): handle false positives in overflow check
  • Update to LLVM 21.1.0 rc3
  • make no_mangle explicit on foreign items
  • Link to payload_as_str() from payload().
  • Revert "Partially outline code inside the panic! macro".
  • Address dangling doc
  • chore(ci): upgrade checkout to v5
  • Resolve review remarks
  • Remove one dependency from tracing bootstrap build
  • Switch to a bitflags MacroKinds to support macros with more than one kind
  • Expand documentation of GlobDelegation
  • Only suggest changing #[derive(mymacro)] to #[mymacro] for attribute macros
  • Detect and report macro kind mismatches early, and more precisely
  • mbe: Rename macro parsing state names to use Bang instead of Not
  • clippy: Update for switch to MacroKinds
  • rustdoc: Minimal fixes to compile with MacroKinds
  • Change the desugaring of assert! for better error output
  • Replace stage0-tools-bin with stage1-tools-bin
  • Add change tracker entry
  • Constify SystemTime methods
  • Allow cross-compiling the Cranelift dist component
  • Remove unused must_use
  • Add cast_init and cast_uninit methods for pointers
  • fix tail calls to #[track_caller] functions
  • Fix parallel rustc not being reproducible due to unstable sorting of items.
  • Fix pgo tests
  • Make std use the edition 2024 prelude
  • Prepare for merging from rust-lang/rust
  • Prepare standard library for checking rustc in prepare_compiler_for_check
  • Implement clippy::CodegenGcc as a separate step
  • Forbid running Clippy on stage 0
  • Add snapshot test for x clippy ci
  • Fix Clippy staging for compiler
  • Add snapshot test for x clippy std
  • Fix staging for x clippy std
  • Fix staging of linting tools
  • Add more tests
  • Lint code in CI using in-tree Clippy
  • Add change tracker entry
  • Only check rustc when linting rustc_codegen_gcc
  • Manually optimize steps performed by x clippy ci
  • Bless tests
  • check args in new_coroutine_witness
  • Install libgccjit into the compiler's sysroot when the GCC codegen backend is enabled
  • Make sure that we won't accidentally ship libgccjit.so in the dist component
  • Remove the libgccjit.so.0 alias and only create the versioned library when installing libgccjit.so
  • avoid duplicate error string
  • also consider HR bounds
  • rework add_placeholder_from_predicate_note
  • fn new_coroutine_witness_for_coroutine woops
  • add test
  • bootstrap: Fix jemalloc 64K page support for aarch64 tools
  • suggest using pub(crate) for E0364
  • Use ci-mirrors for binutils in freebsd-toolchain.sh
  • Print crate count for check::Rustc in snapshot tests
  • Correctly handle when there are no unstable items in the documented crate
  • doc test: fix mpsc.rs try_send doc test
  • Add another example for escaped # character in doctest in rustdoc book
  • Add a method to dump MIR in the middle of MIR building
  • Add test for issue 122734
  • Cleanup assoc parent utils
  • Also dump coverage info
  • resolve: Split extern prelude into two scopes
  • resolve: Improve diagnostics for ambiguities in extern prelude
  • Add test suggest-add-wrapper-issue-145294
  • Suppress wrapper suggestion when expected and actual ty are the same adt and the variant is unresolved
  • Add missing entry in STAGE0_MISSING_TARGETS
  • Set NumRegisterParameters LLVM module flag to N when -Zregparm=N is set
  • Hide docs for core::unicode
  • Update clippy tests
  • fix(compiler/rustc_codegen_llvm): apply target-cpu attribute
  • Improve --remap-path-prefix documentation
  • Port the #[linkage] attribute to the new attribute system
  • Stabilize sse4a and tbm target features - remove some stabilized target features from gate.rs
  • Add regression test for a former ICE involving helper attributes containing interpolated tokens
  • rustdoc: Allow multiple references to a single footnote
  • bootstrap: Support passing --timings to cargo
  • Sometimes skip over tokens in parse_token_tree.
  • bootstrap: Update completions for new --timings argument
  • resolve: Do not call resolve_macro_path from late resolution
  • resolve: Do not show deprecated helper attributes in typo recommendations
  • resolve: Improve code reuse in typo candidate collection
  • PatKind: store constants as valtrees
  • pattern testing: store constants as valtrees
  • use ty::Value instead of manual pairs of types and valtrees
  • change StrLit type to ty::Value as well
  • shrink TestBranch::Constant and PatRangeBoundary::Finite
  • avoid unnecessary type sanity checks
  • Apply suggestions from code review
  • rewrite test with #![no_core]
  • ci: clean windows disk space in background
  • Revert "Correctly handle when there are no unstable items in the documented crate"
  • Revert "rustdoc search: add performance note about searchIndexUnstable check"
  • Revert "rustdoc: IndexItem::{stability -> is_unstable}"
  • Revert "rustdoc search: prefer stable items in search results"
  • Print regions in type_name.
  • coverage: Remove intermediate data structures from mapping creation
  • ignore head usages of ignored candidates
  • resolve prelude import at build_reduced_graph phase
  • Add test suggest-self-in-bare-function
  • Add FnContext in parser for diagnostic
  • add regression test
  • update comment
  • Remove ONLY_HOSTS value overrides that just set the default value and had no comment
  • Rename and document ONLY_HOSTS in bootstrap
  • rustc-dev-guide :3
  • fix alignment test
  • add comment
  • it's not a borrow checker limitation :<
  • Use default_field_values in Resolver
  • resolve: Introduce RibKind::Block
  • resolve: Inline with_mod_rib
  • resolve: Restructure resolve_ident_in_lexical_scope for better clarity
  • resolve: Add one more test case for "binding is available in a different scope" help
  • Do not ICE on private type in field of unresolved struct
  • Improved Target type
  • Pass the target type down to parse_attribute_list
  • Allow attribute parsers to specify a list of allowed targets
  • Specify the list of allowed targets per attribute
  • Remove the old target checking logic
  • Update uitests
  • cleanup: Remove useless [T].iter().last()
  • Basic implementation of autodiff intrinsic
  • Complete functionality and general cleanup
  • Remove inlining for autodiff handling
  • Remove lto inline logic
  • Adjust error message grammar to be less awkward
  • fixed diagnostic
  • Update autodiff tests for the new intrinsics impl
  • std: thread: Return error if setting thread stack size fails
  • drive-by: fix typo
  • Deduplicate -L paths passed to rustc
  • Do not pass duplicated -L arguments to merged doctests
  • mbe: Parse macro derive rules
  • mbe: Handle applying macro_rules derives
  • rustc_expand: ensure stack in InvocationCollector::visit_expr
  • Windows: Replace GetThreadId+GetCurrentThread with GetCurrentThreadId
  • std_detect: RISC-V platform guide documentation
  • bootstrap: Switch from fd-lock to native locking in std
  • bootstrap: Remove dependency on xattr
  • Use LLVMSetTailCallKind
  • Prepare for merging from rust-lang/rust
  • Split codegen backend check step into two and don't run it with x check compiler
  • Rename compiler to build_compiler in the compile::Std step
  • Remove usage of compiler_for from the compile::Std step
  • Remove usage of compiler_for from the compile::Rustc step
  • Clarify that build.full-bootstrap is only used to affect uplifting, not stage selection
  • fix: Reject async assoc fns of const traits/impls in ast_passes
  • Fix typos in bootstrap.example.toml
  • Port #[custom_mir(..)] to the new attribute system
  • All weak lang items have an explicit link name and vice versa
  • Combining no_mangle and rustc_std_internal_symbol is not allowed
  • Use LLVMGetTypeKind
  • Fix wrong spans with external macros in the dropping_copy_types lint
  • Merge link_name and export_name
  • Remove unused feature gate
  • Add derive_from unstable feature
  • Create unstable From builtin macro and register it
  • Add feature gate test
  • Implement #[derive(From)]
  • Declare module rustc_codegen_llvm::back in the normal way
  • Avoid an explicit cast from *const c_uchar to *const c_char
  • Avoid an unnecessary intermediate &mut reference
  • Simplify the args_cstr_buff assertion
  • Enhance UI test output handling for runtime errors
  • Sort mono items by symbol name
  • Use aarch64-apple-darwin as the fallback doc source for -apple-
  • fix(tests/rmake/wasm-unexpected-features): change features from WASM1 to MVP
  • Autolabel src/tools/{rustfmt,rust-analyzer} changes with T-{rustfmt,rust-analyzer}
  • add static glibc to the nix dev shell
  • Do not strip binaries in bootstrap everytime if they are unchanged
  • Remove duplicated tracing span in bootstrap
  • Fix tracing debug representation of steps without arguments in bootstrap
  • Do not copy files in copy_src_dirs in dry run
  • Detect missing derive on unresolved attribute even when not imported
  • Demote x86_64-apple-darwin to Tier 2 with host tools
  • Extend QueryStability to handle IntoIterator implementations
  • stabilize const exposed provenance
  • stabilize const pathbuf osstring new
  • Enable new [range-diff] feature in triagebot
  • rustdoc-search: search backend with partitioned suffix tree
  • Fix typo in doc for library/std/src/fs.rs#set_permissions
  • Properly recover from parenthesized use-bounds (precise capturing)
  • Remove LlvmArchiveBuilder and supporting code/bindings
  • Do not call fs::remove_file in cp_link_filtered_recurse
  • Optimize copy_src_dirs
  • Don't show foreign types as an allowed target if the feature is not enabled
  • Fix deprecation attribute on foreign statics & types
  • Avoid copying rustc rmeta artifacts into the build compiler sysroot
  • take attr style into account in attr diagnostics
  • Only check std in cross-compilation instead of building it
  • Fix unicode_data.rs mention message
  • library: Migrate from cfg_if to cfg_select
  • remove should_render in PrintAttribute derive
  • Clean up parsers related to generic bounds
  • overhaul &mut suggestions in borrowck errors
  • run spellcheck as a tidy extra check in ci
  • Simplify decode_span.
  • Simplify span_data_to_lines_and_cols.
  • fmt::DisplayInt abstraction obsolete with better macro
  • refactor return type of suggest_ampmut into an enum
  • Visit and print async_fut local for async drop.
  • tidy now installs typos-cli as-needed via cargo
  • tidy: run typos check in src root, not current dir
  • tidy: add better error reporting for if typos can't be run
  • typos: allow moreso
  • std: fix more typos
  • Indent some code inside cfg_select!
  • Rust build fails on OpenBSD after using file_lock feature
  • stdlib: Replace typedef -> type alias in doc comment
  • Add runtime detection for APX-F and AVX10
  • Add //@ ignore-stage1 to query_stability.rs test
  • resolve: debug for block module
  • Add -Zindirect-branch-cs-prefix (from draft PR)
  • Add -Zindirect-branch-cs-prefix option
  • Reorder lto options from most to least optimizing
  • Rehome tests/ui/issues/ tests [5/?]
  • Update cargo
  • Do not consider a T: !Sized candidate to satisfy a T: !MetaSized obligation.
  • bufreader::Buffer::backshift: don't move the uninit bytes
  • Don't warn no-mentions on subtree updates
  • Fix up library crate order in linker test
  • Update rust maintainers in openharmony.md
  • Prepare for merging from rust-lang/rust
  • fmt
  • Trace some basic I/O operations in bootstrap
  • remove myself from some adhoc-groups and pings
  • nll-relate: improve hr opaque types support
  • Allow stability attributes on extern crates
  • Implement the #[sanitize(..)] attribute
  • Remove the no_sanitize attribute in favor of sanitize
  • Do not overwrite the value of RUSTC_ADDITIONAL_SYSROOT_PATHS
  • ci: add timeout to windows disk cleanup wait
  • Remove unused PartialOrd/Ord from bootstrap
  • Implement feature int_lowest_highest_one for integer and NonZero types
  • Print what bootstrap invocation failed when an error happens in CI
  • Provide more useful command creation spans
  • Remove the From derive macro from prelude
  • ignore frontmatters in TokenStream::new
  • triagebot: Show range-diff links on force pushes
  • Add change tracker entry for --timings
  • comment style changes
  • Add VEXos "linked files" support to armv7a-vex-v5
  • rustdoc: add rustdoc top bar web component
  • Specify linker scripts after user link args
  • implement std::fs::set_permissions_nofollow on unix
  • interpret: avoid forcing all integer newtypes into memory during clear_provenance
  • interpret: fix in-place return place semantics when the return place expression is a local variable
  • cleanup: make run-make test use run_in_tmpdir
  • tests: fix RISC-V failures and adjust transmute-scalar.rs target
  • Add tracing to various miscellaneous functions
  • Fix uplifting in Assemble step
  • Assume UTF-8 in sysroot paths
  • std_detect: RISC-V: implement implication to "C"
  • UnsafePinned::raw_get: sync signature with get
  • miri: detect passing the same local twice as an in-place argument
  • Make tool-only suggestion to remove attributes on invalid targets
  • Port must_use to the new target checking
  • Update uitests
  • Avoid using () in derive(From) output.
  • Remove
    hs_abs_cmp examples
  • Prevent impossible combinations in ast::ModKind.
  • link to TB doc in unsafe-code-guidelines
  • God bless the tests
  • Fix bug where rustdoc-js tester would not pick the right search.js file if there is more than one
  • Strenghten rustdoc js tester file macthing regex
  • Gate static coroutines behind a parser feature
  • Support weak definitions
  • std_detect: Use rustc-std-workspace-* to pull in compiler-builtins
  • Update lockfile for changes to std_detect
  • Remove the std workspace patch for compiler-builtins
  • add a fallback implementation for the prefetch_* intrinsics
  • Pretty print the name of an future from calling async closure
  • mention lint group in default level lint note
  • bless tests with new lint messages
  • Defer tail call ret ty equality to check_tail_calls
  • Enable triagebot [review-changes-since] feature
  • Add snapshot tests for stage 3 compiler builds
  • Fix some doc typos
  • make prefetch intrinsics safe
  • Prepare for merging from rust-lang/rust
  • Disable rustc uplifting during cross-compilation
  • add back cfg(bootstrap), it is still needed
  • bless new tests
  • allow cfg(bootstrap)
  • fully_perform_op_raw out of TypeChecker
  • region_infer::opaque_types to folder
  • handle opaque types before region inference
  • diagnostics :3
  • tidy: Add a check that there are no duplicate runtime dependencies
  • tidy: Add check against proc macros as standard library dependencies
  • Add new --test-codegen-backend bootstrap option
  • Split compiletest --codegen-backend into two options --default-codegen-backend and --override-codegen-backend
  • Do not use effective_visibilities query for Adt types of a local trait while proving a where-clause
  • Download CI GCC into the correct directory
  • Fix JS search scripts path
  • update some s390x codegen tests
  • Enforce correct number of arguments for "x86-interrupt" functions
  • Unconditionally-const supertraits are considered not dyn compatible
  • Pass alloc-variant-zeroed to LLVM
  • Instantiate higher-ranked binder with erased when checking IntoIterator predicate query instability
  • Add flock support for cygwin
  • Tell LLVM about read-only captures
  • Adjust test to still show miscompile
  • Enable triagebot [review-changes-since] feature
  • fix: typo
  • Move IntoDiagArg earlier in the dependency chains
  • Split rustc_hir_id out of rustc_hir
  • Update test output for change to number of crates
  • rustc_lint_defs: Use DefPathHash from rustc_span rather than rustc_hir
  • rustc_lint_defs: Eliminate the dependency on rustc_hir for Namespace
  • Eliminate unnecessary dependency from rustc_mir_dataflow to rustc_hir
  • Eliminate unnecessary dependency from rustc_traits to rustc_hir
  • rustc_hir_id: Add a comment explaining why the crate exists
  • Migrate panic_unwind to use cfg_select!
  • Handle ReEarlyParam in type_name.
  • Remove MIPS targets from CI LLVM platforms
  • ci: don't cleanup windows disk
  • remove an as cast in prefetch codegen
  • Consolidate panicking functions in slice/index.rs
  • impl IntoDiagArg for AttrPath
  • refactor target checking, move out of context.rs and rename MaybeWarn to Policy
  • Introduce a prelude for very common imports across dozens of files
  • split up context.rs
  • update early and late bound docs link

huaihuaidelulu and others added 30 commits August 18, 2025 11:09
This updates the rust-version file to 425a9c0.
Pull recent changes from https://github.com/rust-lang/rust via Josh.

Upstream ref: 425a9c0
Filtered ref: 7e955d5a6c676a099595bdfaec0705d3703e7a3c

This merge was created using https://github.com/rust-lang/josh-sync.
Fix outdated doc comment

This updates the documentation comment for `Type::is_doc_subtype_of` to more accurately describe its purpose as a subtyping check, rather than equality

fixes rust-lang/rust#138572

r? ````````````@tgross35````````````
Port `#[custom_mir(..)]` to the new attribute system

r? ``````````@jdonszelmann``````````
Implement declarative (`macro_rules!`) derive macros (RFC 3698)

This is a draft for review, and should not be merged yet.

This is layered atop rust-lang/rust#145153 , and has
only two additional commits atop that. The first handles parsing and provides a
test for various parse errors. The second implements expansion and handles
application.

This implements RFC 3698, "Declarative (`macro_rules!`) derive macros".
Tracking issue: rust-lang/rust#143549

This has one remaining issue, which I could use some help debugging: in
`tests/ui/macros/macro-rules-derive-error.rs`, the diagnostics for
`derive(fn_only)` (for a `fn_only` with no `derive` rules) and
`derive(ForwardReferencedDerive)` both get emitted twice, as a duplicate
diagnostic.

From what I can tell via adding some debugging code,
`unresolved_macro_suggestions` is getting called twice from
`finalize_macro_resolutions` for each of them, because
`self.single_segment_macro_resolutions` has two entries for the macro, with two
different `parent_scope` values. I'm not clear on why that happened; it doesn't
happen with the equivalent code using attrs.

I'd welcome any suggestions for fixing this.
Fix `-Zregparm` for LLVM builtins

This fixes the issue where `-Zregparm=N` was not working correctly when calling LLVM intrinsics

By default on `x86-32`, arguments are passed on the stack. The `-Zregparm=N` flag allows the first `N` arguments to be passed in registers instead.

When calling intrinsics like `memset`, LLVM still passes parameters on the stack, which prevents optimizations like tail calls.

As proposed by ````@tgross35,```` I fixed this by setting the `NumRegisterParameters` LLVM module flag to `N` when the `-Zregparm=N` is set.

```rust
// compiler/rust_codegen_llvm/src/context.rs#375-382
if let Some(regparm_count) = sess.opts.unstable_opts.regparm {
    llvm::add_module_flag_u32(
        llmod,
        llvm::ModuleFlagMergeBehavior::Error,
        "NumRegisterParameters",
        regparm_count,
    );
}
```
[Here](https://rust.godbolt.org/z/YMezreo48) is a before/after compiler explorer.

Here is the final result for the code snippet in the original issue:
```asm
entrypoint:
        push    esi
        mov     esi, eax
        mov     eax, ecx
        mov     ecx, esi
        pop     esi
        jmp     memset   ; Tail call parameters in registers
```

Fixes: rust-lang/rust#145271
cg_llvm: Use LLVM-C bindings for `LLVMSetTailCallKind`, `LLVMGetTypeKind`

This PR replaces two existing `LLVMRust` bindings with equivalent calls to the LLVM-C API.

For `LLVMGetTypeKind`, we avoid the UB hazard by declaring the foreign function to return `RawEnum<TypeKind>` (which is a wrapper around `u32`), and then perform checked conversion from `u32` to `TypeKind`.
Add static glibc to the nix dev shell

This fixes `tests/ui/process/nofile-limit.rs` which fails to link on nixos for me without this change.
…ieyouxu

Speedup `copy_src_dirs` in bootstrap

I was kinda offended by how slow it was. Just the `copy_src_dirs` part took ~3s locally in the `x dist rustc-src` step. In release mode it was just 1s, but that's kind of cheating (I wonder if we should build bootstrap in release mode on CI though...).

Did some basic optimizations to bring it down to ~1s also in debug mode.

Maybe it's overkill, due to rust-lang/rust#145455. Up to you whether we should merge it or close it :)

r? `````````@jieyouxu`````````
Fix typo in doc for library/std/src/fs.rs#set_permissions

"privalage" -> "privilege".

Was reading the docs and have noticed this.
…jdonszelmann

Fix deprecation attributes on foreign statics

r? ````````@jdonszelmann````````

Fixes rust-lang/rust#145437
This change implements the #[sanitize(..)] attribute, which opts to
replace the currently unstable #[no_sanitize]. Essentially the new
attribute works similar as #[no_sanitize], just with more flexible
options regarding where it is applied. E.g. it is possible to turn
a certain sanitizer either on or off:
`#[sanitize(address = "on|off")]`

This attribute now also applies to more places, e.g. it is possible
to turn off a sanitizer for an entire module or impl block:
```rust
\#[sanitize(address = "off")]
mod foo {
    fn unsanitized(..) {}

    #[sanitize(address = "on")]
    fn sanitized(..) {}
}

\#[sanitize(thread = "off")]
impl MyTrait for () {
    ...
}
```

This attribute is enabled behind the unstable `sanitize` feature.
This removes the #[no_sanitize] attribute, which was behind an unstable
feature named no_sanitize. Instead, we introduce the sanitize attribute
which is more powerful and allows to be extended in the future (instead
of just focusing on turning sanitizers off).

This also makes sanitize(kernel_address = ..) attribute work with
-Zsanitize=address

To do it the same as how clang disables address sanitizer, we now
disable ASAN on sanitize(kernel_address = "off") and KASAN on
sanitize(address = "off").

The same was added to clang in https://reviews.llvm.org/D44981.
Implement the accepted ACP for methods that find the index of the least
significant (lowest) and most significant (highest) set bit in an
integer for signed, unsigned, and NonZero types.

Also add unit tests for all these types.
Rollup of 10 pull requests

Successful merges:

 - rust-lang/rust#144838 (Fix outdated doc comment)
 - rust-lang/rust#145206 (Port `#[custom_mir(..)]` to the new attribute system)
 - rust-lang/rust#145208 (Implement declarative (`macro_rules!`) derive macros (RFC 3698))
 - rust-lang/rust#145309 (Fix `-Zregparm` for LLVM builtins)
 - rust-lang/rust#145355 (Add codegen test for issue 122734)
 - rust-lang/rust#145420 (cg_llvm: Use LLVM-C bindings for `LLVMSetTailCallKind`, `LLVMGetTypeKind`)
 - rust-lang/rust#145451 (Add static glibc to the nix dev shell)
 - rust-lang/rust#145460 (Speedup `copy_src_dirs` in bootstrap)
 - rust-lang/rust#145476 (Fix typo in doc for library/std/src/fs.rs#set_permissions)
 - rust-lang/rust#145485 (Fix deprecation attributes on foreign statics)

r? `@ghost`
`@rustbot` modify labels: rollup
To avoid backwards compatibility problems.
marcoieni and others added 28 commits August 21, 2025 10:56
Consolidate all the panicking functions in `slice/index.rs` to use a single
`slice_index_fail` function, similar to how it is done in `str/traits.rs`.
miri subtree update

Subtree update of `miri` to rust-lang/miri@980da67.

Created using https://github.com/rust-lang/josh-sync.

r? `@ghost`
libstd: init(): dup() subsequent /dev/nulls instead of opening them again

This will be faster, and also it deduplicates the code so win/win

The dup() is actually infallible here. But whatever.

Before:
```
poll([{fd=0, events=0}, {fd=1, events=0}, {fd=2, events=0}], 3, 0) = 1 ([{fd=2, revents=POLLNVAL}])
openat(AT_FDCWD, "/dev/null", O_RDWR)   = 2
rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=[PIPE], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f5749313050}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0

poll([{fd=0, events=0}, {fd=1, events=0}, {fd=2, events=0}], 3, 0) = 2 ([{fd=0, revents=POLLNVAL}, {fd=2, revents=POLLNVAL}])
openat(AT_FDCWD, "/dev/null", O_RDWR)   = 0
openat(AT_FDCWD, "/dev/null", O_RDWR)   = 2
rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=[PIPE], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7efe12006050}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0

poll([{fd=0, events=0}, {fd=1, events=0}, {fd=2, events=0}], 3, 0) = 3 ([{fd=0, revents=POLLNVAL}, {fd=1, revents=POLLNVAL}, {fd=2, revents=POLLNVAL}])
openat(AT_FDCWD, "/dev/null", O_RDWR)   = 0
openat(AT_FDCWD, "/dev/null", O_RDWR)   = 1
openat(AT_FDCWD, "/dev/null", O_RDWR)   = 2
rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=[PIPE], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7fc2dc7ca050}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
```

After:
```
poll([{fd=0, events=0}, {fd=1, events=0}, {fd=2, events=0}], 3, 0) = 1 ([{fd=1, revents=POLLNVAL}])
openat(AT_FDCWD, "/dev/null", O_RDWR)   = 1
rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=[PIPE], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f488a3fb050}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0

poll([{fd=0, events=0}, {fd=1, events=0}, {fd=2, events=0}], 3, 0) = 2 ([{fd=1, revents=POLLNVAL}, {fd=2, revents=POLLNVAL}])
openat(AT_FDCWD, "/dev/null", O_RDWR)   = 1
dup(1)                                  = 2
rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=[PIPE], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f1a8943c050}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0

poll([{fd=0, events=0}, {fd=1, events=0}, {fd=2, events=0}], 3, 0) = 3 ([{fd=0, revents=POLLNVAL}, {fd=1, revents=POLLNVAL}, {fd=2, revents=POLLNVAL}])
openat(AT_FDCWD, "/dev/null", O_RDWR)   = 0
dup(0)                                  = 1
dup(0)                                  = 2
rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=[PIPE], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f4e3a4c7050}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
```
…-abis-arm, r=RalfJung,davidtwco

c-variadic: multiple ABIs in the same program for arm

similar to rust-lang/rust#144379, but for arm, requested in rust-lang/rust#144066.

Quoting rust-lang/reference#1946 (comment)

> `"aapcs"` specifically refers to the soft-float ABI where floating-point values are passed in integer registers.

However for c-variadic functions, `aapcs` behaves the same as `C`:

https://github.com/ARM-software/abi-aa/blob/main/aapcs32/aapcs32.rst#65parameter-passing

> A variadic function is always marshaled as for the base standard.

https://github.com/ARM-software/abi-aa/blob/main/aapcs32/aapcs32.rst#7the-standard-variants

> This section applies only to non-variadic functions. For a variadic function the base standard is always used both for argument passing and result return.

---

I also noticed that rustc currently emit more instructions than clang for c-variadic functions on arm, see https://godbolt.org/z/hMce9rnTh. I'll fix that separately. (edit: rust-lang/rust#144549)

try-job: armhf-gnu
r? `@RalfJung`
…esleywiser

aarch64-nintendo-switch-freestanding - Enable CPU features that are always available in a live system (crypto instructions, plus explicit NEON).

~~While some NEON and crypto features may not be supported on the Nintendo Switch at boot (e.g. on the a53 cores) and this has not been tested, the features will _always_ be available if running as a sysmodule or homebrew application under Horizon/Atmosphere.~~ EDIT:  the a53 cores are fused out, these features are always available.

This has been tested with local tools personally, as well as building [emuiibo](https://github.com/XorTroll/emuiibo) as it uses both `sha` and `aes` primitives. This was tested using inline assembly in previous versions, and in current versions by using the `aes`, `ctr`, `hmac`, and `sha2` crates.

r? `@jam1garner`

This ended up being much delayed from our discussions about updating this. I tested a number of individual features such as the `aes` and `sha2` target-features directly to avoid a warning message with the `crypto` feature, but that appears to be caused by rust-lang/rust#96472 and is not actually an issue.

There is also a decision to make here about explicitly enabling the `neon` feature. I am in favor of it to be explicit, but it is not necessary as it is already enabled by the `v8a` and `crypto` features. I will defer to your decision as it does not change the actual instructions available for codegen.
Add a method to dump MIR in the middle of MIR building

This makes it easier to debug issues with MIR building by inserting dump_for_debugging calls around the suspected code responsible for the bad MIR.
…r=jhpratt

Consolidate panicking functions in `slice/index.rs`

Consolidate all the panicking functions in `slice/index.rs` to use a single `slice_index_fail` function, similar to how it is done in `str/traits.rs`.

Split off from rust-lang/rust#145024
…twco

Refactor attribute parsing to improve ergonomics and some diagnostics
Gate static closures behind a parser feature

I'd like to gate `static ||` closures behind a feature gate, since we shouldn't allow people to take advantage of this syntax if it's currently unstable. Right now, since it's only rejected after ast lowering, it's accessible to macros.

Let's crater this to see if we can claw it back without breaking anyone's code.
Add two tidy dependency checks

Deny duplicate dependencies for the standard library as it would almost certainly bloat executables. And deny proc-macro dependencies for the standard library as they would break cross-compilation.
…anqk

update some s390x codegen tests

By using `minicore`, `&raw` and removing use of `link_llvm_intrinsics`
Instantiate higher-ranked binder with erased when checking `IntoIterator` predicate for query instability

Fixes rust-lang/rust#145652 which was introduced by rust-lang/rust#139345 because we were skipping a binder before calling `Instance::try_resolve`.

r? lcnr
Migrate `panic_unwind` to use `cfg_select!`

This follows rust-lang/rust#145489 with an additional place we can drop the `cfg-if` dependency.
Handle `ReEarlyParam` in `type_name`.

Fixes rust-lang/rust#145696.

r? `@lcnr`
Remove MIPS targets from CI LLVM platforms

All of these were demoted to tier 3 a while ago and we aren't building LLVM for them anymore.
remove an `as` cast in prefetch codegen

r? `@RalfJung`
Update outdated link in bound region comments

While reading the implementation code for bound regions, I found that a link in the comments was outdated. I've updated it with a link to the corresponding documentation in the rustc dev guide that covers the same content.

prev link: https://rustc-dev-guide.rust-lang.org/early-late-bound-params/early-late-bound-summary.html (404 error)
updated: https://rustc-dev-guide.rust-lang.org/early_late_parameters.html
Rollup of 16 pull requests

Successful merges:

 - rust-lang/rust#137494 (libstd: init(): dup() subsequent /dev/nulls instead of opening them again)
 - rust-lang/rust#144541 (c-variadic: multiple ABIs in the same program for arm)
 - rust-lang/rust#144613 (aarch64-nintendo-switch-freestanding - Enable CPU features that are always available in a live system (crypto instructions, plus explicit NEON).)
 - rust-lang/rust#144780 (Add a method to dump MIR in the middle of MIR building)
 - rust-lang/rust#145137 (Consolidate panicking functions in `slice/index.rs`)
 - rust-lang/rust#145507 (Refactor attribute parsing to improve ergonomics and some diagnostics)
 - rust-lang/rust#145604 (Gate static closures behind a parser feature)
 - rust-lang/rust#145648 (Add two tidy dependency checks)
 - rust-lang/rust#145661 (update some s390x codegen tests)
 - rust-lang/rust#145672 (Instantiate higher-ranked binder with erased when checking `IntoIterator` predicate for query instability)
 - rust-lang/rust#145689 (Migrate `panic_unwind` to use `cfg_select!`)
 - rust-lang/rust#145700 (Handle `ReEarlyParam` in `type_name`.)
 - rust-lang/rust#145703 (Remove MIPS targets from CI LLVM platforms)
 - rust-lang/rust#145704 (ci: don't cleanup windows disk)
 - rust-lang/rust#145705 (remove an `as` cast in prefetch codegen)
 - rust-lang/rust#145712 (Update outdated link in bound region comments)

r? `@ghost`
`@rustbot` modify labels: rollup
rustc_expand: ensure stack in `InvocationCollector::visit_expr`

In Fedora, when we built rustc with PGO on ppc64le, we started failing
the test `issue-74564-if-expr-stack-overflow.rs`. This could also be
reproduced on other arches by setting a smaller `RUST_MIN_STACK`, so
it's probably just unlucky that ppc64le PGO created a large stack frame
somewhere in this recursion path. Adding an `ensure_sufficient_stack`
solves the stack overflow.

Historically, that test and its fix were added in rust-lang/rust#74708,
which was also an `ensure_sufficient_stack` in this area of code at the
time. However, the refactor in rust-lang/rust#92573 basically left that
to the general `MutVisitor`, and then rust-lang/rust#142240 removed even
that ensure call. It may be luck that our tier-1 tested targets did not
regress the original issue across those refactors.
Sort mono items by symbol name

Trying to claw back cycles/branch/cache miss losses from rust-lang/rust#144722.
@xdoardo xdoardo self-assigned this Aug 22, 2025
@xdoardo xdoardo closed this Aug 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.