Skip to content

something something #4

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 410 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
410 commits
Select commit Hold shift + click to select a range
90aec13
commit rustfmt stump in `x t tidy` even on `check`
WaffleLapkin Apr 15, 2025
89b4eba
normalize canonical and non-canonical paths in compiletest
WaffleLapkin Apr 15, 2025
f35c85f
Add unstable foo::bar extern command line arguments
eholk Apr 8, 2025
f3f53d2
Update books
rustbot Apr 15, 2025
fe882bf
Rename `LifetimeName` as `LifetimeKind`.
nnethercote Mar 27, 2025
c4d3563
Also remove the no_sanitize feature for std
1c3t3a Apr 15, 2025
ea1b230
Update Cargo.lock for rustbook
ehuss Apr 15, 2025
766cd3a
Remove support for `#[rustc_mir(borrowck_graphviz_format="gen_kill")]`.
nnethercote Apr 15, 2025
62882f3
Improve `borrowck_graphviz_*` documentation.
nnethercote Apr 15, 2025
6999305
Make CodeStat's type sizes a public field
blyxyas Apr 15, 2025
b084603
rustc_target: RISC-V: feature addition batch 2
a4lg Apr 6, 2025
52392ec
rustc_target: Use "B" shorthand on the RISC-V Android target
a4lg Apr 6, 2025
8c50f95
rustdoc: Output target feature information
willglynn Apr 4, 2025
9dbd2bb
Include optional dso_local marker for functions in `enum-match.rs`
pvdrz Apr 16, 2025
bd9bd38
Allow disabling `--llvm-shared` in opt-dist
Kobzol Apr 16, 2025
6f386e7
Only delete the lld directory if it exists
Kobzol Apr 16, 2025
48e119e
stepping into impls for norm is unproductive
lcnr Apr 16, 2025
20ab952
Explicitly annotate edition for `unpretty=expanded` and `unpretty=hir…
Veykril Apr 16, 2025
a6dcd51
fix multiple `#[repr(align(N))]` on functions
folkertdev Apr 16, 2025
4d6ae78
Remove old diagnostic notes for type ascription syntax
Zalathar Apr 16, 2025
723ef24
Rollup merge of #139647 - eholk:package-namespace, r=fmease
matthiaskrgr Apr 16, 2025
f7b6f15
Rollup merge of #139823 - WaffleLapkin:bootpaper, r=jieyouxu
matthiaskrgr Apr 16, 2025
b65e6b7
Rollup merge of #139867 - WaffleLapkin:tidypaper, r=jieyouxu
matthiaskrgr Apr 16, 2025
a1de2a2
Rollup merge of #139871 - GuillaumeGomez:async-gen-move, r=compiler-e…
matthiaskrgr Apr 16, 2025
b3284ad
Rollup merge of #139876 - blyxyas:write_type_sizes, r=nnethercote
matthiaskrgr Apr 16, 2025
ec6bdda
Rollup merge of #139880 - compiler-errors:rpitit-nameless, r=nnethercote
matthiaskrgr Apr 16, 2025
1bde68e
Rollup merge of #139884 - rustbot:docs-update, r=ehuss
matthiaskrgr Apr 16, 2025
e96b999
Rollup merge of #139886 - nnethercote:graphviz_borrowck, r=compiler-e…
matthiaskrgr Apr 16, 2025
0039c7d
Rollup merge of #139893 - reddevilmidzy:add-test, r=SparrowLii
matthiaskrgr Apr 16, 2025
face471
replace some #[rustc_intrinsic] usage with use of the libcore declara…
RalfJung Apr 16, 2025
299877e
Update stdarch submodule
GuillaumeGomez Apr 16, 2025
2f0ba67
fix incorrect type in cstr `to_string_lossy()` docs
jnqnfe Apr 16, 2025
7ce21e4
Cleaned up base tests for `isize` and `usize` in `tests/ui/numbers-ar…
spencer3035 Apr 16, 2025
c6aad02
Auto merge of #139914 - GuillaumeGomez:update-stdarch, r=Amanieu
bors Apr 16, 2025
a870bba
Add a warning when combining LLD with external LLVM config
Kobzol Apr 16, 2025
96984c0
add retry support to recursive_remove
Shourya742 Apr 15, 2025
003d633
add remove_and_create_dir_all in build_helper
Shourya742 Apr 15, 2025
d4eab8a
remove old remove_and_create_dir_all and use build_helpers remove_and…
Shourya742 Apr 15, 2025
2024e26
Don't canonicalize crate paths
ChrisDenton Apr 15, 2025
52f35d0
Test for relative paths in crate path diagnostics
ChrisDenton Apr 15, 2025
8270478
resolve config include FIXME
onur-ozkan Apr 16, 2025
78f2104
Auto merge of #139912 - matthiaskrgr:rollup-va0rqvk, r=matthiaskrgr
bors Apr 16, 2025
b4b9cfb
Upgrade to `rustc-rayon-core` 0.5.1
cuviper Apr 16, 2025
01cfa9a
Add hard error for `extern` without explicit ABI
obeis Apr 8, 2025
d17c04e
Add test for `extern` without explicit ABI
obeis Apr 8, 2025
3863018
Fix replacing supertrait aliases in ReplaceProjectionWith
compiler-errors Apr 16, 2025
e1936d2
Remove FIXME that is no longer relevant
compiler-errors Apr 14, 2025
bb3c981
Don't require rigid alias's trait to hold
compiler-errors Apr 16, 2025
a68ae0c
working dupv and dupvonly for fwd mode
ZuseZ4 Apr 5, 2025
d7c0c32
passing test for dualv
ZuseZ4 Apr 9, 2025
cb6c499
lower implicit deref patterns to THIR
dianne Feb 24, 2025
e4b7b3d
pattern typing for immutable implicit deref patterns
dianne Mar 9, 2025
91d0b57
register `DerefMut` bounds for implicit mutable derefs
dianne Mar 9, 2025
d6df469
refactor path pattern checking to get info for peeling
dianne Apr 7, 2025
9196048
refactor struct pattern checking to get info for peeling
dianne Mar 4, 2025
1f40e9a
refactor tuple struct pattern checking to get info for peeling
dianne Mar 4, 2025
3920514
Auto merge of #138011 - tnewsome-lynx:lynxos_178-nostd, r=davidtwco
bors Apr 16, 2025
9842698
Rollup merge of #139084 - petrochenkov:transpaque, r=davidtwco
matthiaskrgr Apr 16, 2025
844b7c7
Rollup merge of #139236 - Zoxc:anon-counter, r=davidtwco
matthiaskrgr Apr 16, 2025
5c963a4
Rollup merge of #139650 - Alexendoo:group-alias, r=davidtwco
matthiaskrgr Apr 16, 2025
8e5df28
Rollup merge of #139770 - nnethercote:rename-LifetimeName, r=BoxyUwU
matthiaskrgr Apr 16, 2025
fb3338c
Rollup merge of #139846 - nnethercote:kw-Empty-rustdoc, r=GuillaumeGomez
matthiaskrgr Apr 16, 2025
1ced326
Rollup merge of #139891 - pvdrz:add-dso-local, r=scottmcm
matthiaskrgr Apr 16, 2025
082073f
Rollup merge of #139908 - Zalathar:no-ascription, r=jieyouxu
matthiaskrgr Apr 16, 2025
cbe469a
Rollup merge of #139917 - folkertdev:fn-align-multiple, r=jdonszelmann
matthiaskrgr Apr 16, 2025
bb3e156
Rollup merge of #135340 - obeis:explicit-extern-abis, r=traviscross,n…
matthiaskrgr Apr 16, 2025
ff55f2a
Rollup merge of #139440 - a4lg:riscv-feature-addition-batch-2, r=Amanieu
matthiaskrgr Apr 16, 2025
f14e632
Rollup merge of #139667 - 1c3t3a:remove-no-sanitize, r=m-ou-se
matthiaskrgr Apr 16, 2025
c594a88
Rollup merge of #139828 - compiler-errors:rigid-trait, r=lcnr
matthiaskrgr Apr 16, 2025
7ab385e
Rollup merge of #139854 - fmease:modern-diag-for-lt-in-ty, r=davidtwco
matthiaskrgr Apr 16, 2025
afb60d3
Rollup merge of #139889 - spencer3035:clean-ui-tests-3-of-n, r=jieyouxu
matthiaskrgr Apr 16, 2025
848ec58
Rollup merge of #139894 - Kobzol:opt-dist-fixes, r=lqd
matthiaskrgr Apr 16, 2025
9e0be6c
Rollup merge of #139900 - lcnr:normalizes-to-where-bounds-unproductiv…
matthiaskrgr Apr 16, 2025
f8f22ad
Rollup merge of #139915 - RalfJung:intrinsic-imports, r=compiler-errors
matthiaskrgr Apr 16, 2025
b7fbf20
transmutability: Refactor tests for simplicity
joshlf Apr 11, 2025
8b09cbb
Update cargo
weihanglo Apr 15, 2025
923d95c
don't peel ADTs the pattern could match
dianne Mar 9, 2025
977c9ab
respect the tcx's recursion limit when peeling
dianne Mar 10, 2025
ff0d4bc
upvar inference for implicit deref patterns
dianne Mar 14, 2025
4c4b61b
add a feature gate test
dianne Mar 14, 2025
93d13e9
add an unstable book chapter
dianne Mar 14, 2025
3b91b7a
Make cow_of_cow test a teeny bit more explicit
Nadrieril Apr 16, 2025
92ce44f
ignore aix for tests/ui/erros/pic-linker.rs
Apr 16, 2025
4be670f
Warnings-as-errors in `check-builtin-attr-ice.rs`.
nnethercote Apr 9, 2025
400e8e5
Fix attribute printing in an error.
nnethercote Apr 9, 2025
7e1f2f9
Augment some tests involving attributes.
nnethercote Apr 10, 2025
2fef0a3
Replace infallible `name_or_empty` methods with fallible `name` methods.
nnethercote Apr 10, 2025
846c10f
Avoid an `unwrap` in `RustcMirAttrs::set_field`.
nnethercote Apr 15, 2025
a114bcf
document RUSTC_BOOTSTRAP, RUSTC_OVERRIDE_VERSION_STRING, and -Z allow…
jyn514 Apr 15, 2025
9f548e2
Support inlined cross-crate re-exported trait aliases
fmease Apr 17, 2025
79a272c
Auto merge of #139938 - matthiaskrgr:rollup-19ddpus, r=matthiaskrgr
bors Apr 17, 2025
0117884
Move eager translation to a method on `Diag`
shepmaster Mar 21, 2025
675360a
Remove some unnecessary lifetimes.
nnethercote Oct 22, 2024
99a60eb
`intern_with_temp_alloc` is for `DummyMachine` only.
nnethercote Oct 22, 2024
5636312
git: ignore `60600a6fa403216bfd66e04f948b1822f6450af7` for blame purp…
jieyouxu Apr 17, 2025
5a38550
Deduplicate nix code
RossSmyth Apr 3, 2025
0de803c
Rollup merge of #138632 - clubby789:stabilize-cfg-boolean-lit, r=davi…
matthiaskrgr Apr 17, 2025
6426050
Rollup merge of #139416 - mejrs:metavar, r=tgross35
matthiaskrgr Apr 17, 2025
0757d24
Rollup merge of #139782 - xizheyin:issue-139627, r=wesleywiser
matthiaskrgr Apr 17, 2025
4e2fc09
Rollup merge of #139885 - jyn514:doc-rustc-bootstrap, r=Nadrieril
matthiaskrgr Apr 17, 2025
4a83f43
Rollup merge of #139904 - ferrocene:lw-wkumpwrytvtp, r=nnethercote,ji…
matthiaskrgr Apr 17, 2025
a7af610
Rollup merge of #139932 - joshlf:transmute-simplify-tests, r=jswrenn
matthiaskrgr Apr 17, 2025
059b7d0
Rollup merge of #139944 - shepmaster:eager-diagnostics, r=nnethercote
matthiaskrgr Apr 17, 2025
7650fe9
Rollup merge of #139948 - jieyouxu:ignore-breakup-commit, r=onur-ozkan
matthiaskrgr Apr 17, 2025
15c4cce
Auto merge of #139940 - matthiaskrgr:rollup-rd4d3fn, r=matthiaskrgr
bors Apr 17, 2025
6214674
rustdoc/clean: Change terminology of items pertaining to (formal) fn …
fmease Apr 15, 2025
82ff0a0
rustdoc: Properly clean fn params in all contexts
fmease Apr 16, 2025
94015d3
Auto merge of #139926 - weihanglo:update-cargo, r=weihanglo
bors Apr 17, 2025
bf26963
bootstrap: enable zlib for LLVM when we compile it for profiling
ognevny Apr 17, 2025
62a104d
opt-dist: add a flag for running tests
ognevny Apr 17, 2025
289a23e
do not emit `OpaqueCast` projections with `-Znext-solver`
lcnr Apr 16, 2025
c85b5fc
check OpaqueCast tests with next-solver
lcnr Apr 17, 2025
d20f848
compiletest: add specific `//@ ignore-auxiliary` for test support files
jieyouxu Apr 17, 2025
d1178fa
tests: refine disable reason for `tests/debuginfo/drop-locations.rs`
jieyouxu Apr 17, 2025
6bbee33
rustc-dev-guide: document `//@ ignore-auxiliary`
jieyouxu Apr 17, 2025
883f9f7
Auto merge of #139949 - matthiaskrgr:rollup-pxc5tsx, r=matthiaskrgr
bors Apr 17, 2025
35a4140
update libc
Apr 17, 2025
89cac55
tests: use `//@ ignore-auxiliary` with backlinked primary test file
jieyouxu Apr 17, 2025
6c5a481
tests: remove unused auxiliaries under `tests/ui/directory_ownership/`
jieyouxu Apr 17, 2025
90c6c9f
Merge branch 'master' into sync_from_rust_2025_04_17
antoyo Apr 17, 2025
c1d2100
Update to nightly-2025-04-17
antoyo Apr 17, 2025
cc81c70
Fix patches
antoyo Mar 27, 2025
be75a58
Fix compilation
antoyo Apr 13, 2025
5c832e5
Remove most of builtins hack since it's not necessary anymore
antoyo Mar 27, 2025
e1fa74b
Implement copysignf128
antoyo Mar 27, 2025
9a453d4
Update other patches
antoyo Mar 27, 2025
f982277
Fix libcore tests
antoyo Mar 27, 2025
5cf2bbc
Fix clippy warnings
antoyo Mar 27, 2025
ecf0a1e
Update GCC version
antoyo Apr 13, 2025
ec44cfd
Fix tests
antoyo Mar 27, 2025
bc0bc8d
Fix int_to_float_cast for f128
antoyo Mar 27, 2025
6504f4c
Format
antoyo Apr 13, 2025
bb1e6a3
Fix tests
antoyo Apr 13, 2025
0d77317
Add support for simd_insert_dyn and simd_extract_dyn
antoyo Apr 13, 2025
4b5940a
Fix overflow operations
antoyo Apr 15, 2025
06af88e
Add new failing test
antoyo Apr 15, 2025
8562110
Hide unstable print kinds within emit_unknown_print_request_help in s…
xizheyin Apr 15, 2025
7a5a884
Make C string merging test work on MIPS
LukasWoodtli Apr 17, 2025
d14df26
Make `parent` in `download_auto_job_metrics` optional
Kobzol Apr 16, 2025
111c15c
Extract function for normalizing path delimiters to `utils`
Kobzol Apr 16, 2025
c8a882b
Add command to `citool` for generating a test dashboard
Kobzol Apr 17, 2025
50cf102
Change function visibility to pub
Patrick-6 Apr 17, 2025
a326afd
Add buttons for expanding and collapsing all test suites
Kobzol Apr 17, 2025
4b31033
Add a note about how to find tests that haven't been executed anywhere.
Kobzol Apr 17, 2025
f9091e2
Ignore zero-sized types in wasm future-compat warning
alexcrichton Apr 7, 2025
1a6e0d5
Render test revisions separately
Kobzol Apr 17, 2025
d2c1763
Create a macro for rendering test results
Kobzol Apr 17, 2025
83af9f5
run-make: drop `os_pipe` workaround now that `anonymous_pipe` is stab…
jieyouxu Apr 17, 2025
aa9cb70
Print number of root tests and subdirectories
Kobzol Apr 17, 2025
08cb187
Turn `test_dashboard` into a file
Kobzol Apr 17, 2025
e5e5fb9
Fix drop handling in `hint::select_unpredictable`
Amanieu Apr 17, 2025
cecf167
Add a note about the test dashboard to the post-merge report
Kobzol Apr 17, 2025
da43826
Rollup merge of #139774 - compiler-errors:supertrait-alias, r=lcnr
matthiaskrgr Apr 17, 2025
d2db1c1
Rollup merge of #139850 - xizheyin:issue-138698, r=jieyouxu
matthiaskrgr Apr 17, 2025
cecc7a4
Rollup merge of #139870 - Shourya742:2025-04-15-add-retries-to-remove…
matthiaskrgr Apr 17, 2025
67e2358
Rollup merge of #139902 - lcnr:no-opaque-cast-projection, r=oli-obk
matthiaskrgr Apr 17, 2025
dce7506
Rollup merge of #139931 - ognevny:bootstrap-llvm-zlib, r=Kobzol
matthiaskrgr Apr 17, 2025
b79996d
Rollup merge of #139935 - cuviper:rustc-rayon-core-0.5.1, r=lqd
matthiaskrgr Apr 17, 2025
7a4525c
Rollup merge of #139943 - fmease:rustdoc-ixcre-trait-aliases, r=Guill…
matthiaskrgr Apr 17, 2025
8281a54
Rollup merge of #139961 - nnethercote:two-rustc_const_eval-cleanups, …
matthiaskrgr Apr 17, 2025
6922524
Rollup merge of #139962 - ognevny:opt-dist-tests, r=Kobzol
matthiaskrgr Apr 17, 2025
a15cce2
Auto merge of #139979 - matthiaskrgr:rollup-7wu5169, r=matthiaskrgr
bors Apr 17, 2025
7d6f41b
Update `compiler-builtins` to 0.1.155
tgross35 Apr 16, 2025
d3b1674
tests: adjust 101082 test for LLVM 21 fix
durin42 Apr 17, 2025
5523c87
Update libcore.natvis for Pin.
m-ou-se Apr 17, 2025
b8c043f
remove stray file
tshepang Apr 17, 2025
87a1635
Rollup merge of #139351 - EnzymeAD:autodiff-batching2, r=oli-obk
matthiaskrgr Apr 17, 2025
b6e48d3
Rollup merge of #139483 - RalfJung:nan, r=tgross35
matthiaskrgr Apr 17, 2025
8b7a289
Rollup merge of #139498 - alexcrichton:wasm-zst-safe, r=wesleywiser
matthiaskrgr Apr 17, 2025
026d56b
Rollup merge of #139967 - jieyouxu:auxiliary, r=wesleywiser
matthiaskrgr Apr 17, 2025
4c92186
Rollup merge of #139969 - psumbera:libc-rust-analyzer, r=lnicola
matthiaskrgr Apr 17, 2025
18f6c59
Rollup merge of #139971 - LukasWoodtli:gardena/lw/fix-cstring-merging…
matthiaskrgr Apr 17, 2025
e5ba69b
Rollup merge of #139974 - Patrick-6:change-visibility, r=RalfJung
matthiaskrgr Apr 17, 2025
dc2d273
Rollup merge of #139977 - Amanieu:select_unpredictable_drop, r=RalfJung
matthiaskrgr Apr 17, 2025
1f76d21
Auto merge of #139992 - matthiaskrgr:rollup-ak3uibu, r=matthiaskrgr
bors Apr 17, 2025
e882ff4
Don't assemble non-env/bound candidates if projection is rigid
compiler-errors Apr 17, 2025
c8a9095
Rollup merge of #138528 - dianne:implicit-deref-patterns, r=Nadrieril
matthiaskrgr Apr 18, 2025
e15cf92
Rollup merge of #139393 - willglynn:rustdoc_output_target_feature_inf…
matthiaskrgr Apr 18, 2025
5e8bc7f
Rollup merge of #139553 - petrosagg:channel-double-free, r=RalfJung,t…
matthiaskrgr Apr 18, 2025
540fb22
Rollup merge of #139615 - nnethercote:rm-name_or_empty, r=jdonszelmann
matthiaskrgr Apr 18, 2025
ac00a37
Rollup merge of #139853 - Kobzol:lld-llvm-config, r=onur-ozkan
matthiaskrgr Apr 18, 2025
cbf2662
Rollup merge of #139913 - fmease:rustdoc-fix-fn-param-handling, r=Gui…
matthiaskrgr Apr 18, 2025
8cb57ed
Rollup merge of #139942 - dalvescb:master, r=jieyouxu
matthiaskrgr Apr 18, 2025
484abe9
Rollup merge of #137881 - Jarcho:index_slice_ex, r=wesleywiser
matthiaskrgr Apr 18, 2025
68b439c
Rollup merge of #138599 - adwinwhite:recursive-overflow, r=wesleywiser
matthiaskrgr Apr 18, 2025
af61fdf
Rollup merge of #139934 - tgross35:update-builtins, r=tgross35
matthiaskrgr Apr 18, 2025
095486e
Rollup merge of #139976 - jieyouxu:plumbing, r=Kobzol
matthiaskrgr Apr 18, 2025
1b03b82
Rollup merge of #139989 - durin42:llvm-21-issue-101082, r=cuviper
matthiaskrgr Apr 18, 2025
1b52421
Rollup merge of #139991 - tshepang:stray, r=Kobzol
matthiaskrgr Apr 18, 2025
136171c
skip llvm-config in autodiff check builds, when its unavailable
ZuseZ4 Apr 18, 2025
65ce38a
Add a note that explains the counts
Kobzol Apr 18, 2025
6a0bd27
Auto merge of #139997 - matthiaskrgr:rollup-a1fe5zg, r=matthiaskrgr
bors Apr 18, 2025
b18e373
Reduce duplicated test prefixes in nested subdirectories
Kobzol Apr 18, 2025
1b39302
Disable has_thread_local on i686-win7-windows-msvc
roblabla Apr 18, 2025
8f6ef1f
Improve `clean_maybe_renamed_item` function code a bit
GuillaumeGomez Apr 18, 2025
ac7d1be
add coverage on config include logic
onur-ozkan Apr 16, 2025
191df20
Auto merge of #139996 - matthiaskrgr:rollup-0nka2hw, r=matthiaskrgr
bors Apr 18, 2025
65b87aa
Support new target builtins
antoyo Apr 17, 2025
98dd5a3
Fix for libgccjit 12
antoyo Apr 18, 2025
52b0687
Simplify handling of some SIMD intrinsics
antoyo Apr 18, 2025
db1a31c
Merge pull request #650 from rust-lang/sync_from_rust_2025_04_17
antoyo Apr 18, 2025
59477a8
Make rustdoc JSON Span column 1-based, just like line numbers
GuillaumeGomez Apr 16, 2025
ba9a008
Add regression test for span 1-indexed check
GuillaumeGomez Apr 16, 2025
076016d
Update rustdoc-json-types `FORMAT_VERSION` to 45
GuillaumeGomez Apr 18, 2025
e4ea67b
Merge commit 'db1a31c243a649e1fe20f5466ba181da5be35c14' into subtree-…
GuillaumeGomez Apr 18, 2025
c123dc6
Fix `rustc_codegen_gcc/tests/run/return-tuple.rs` test
GuillaumeGomez Apr 18, 2025
fb3cae0
std: Use fstatat() on illumos
pfmooney Apr 18, 2025
84f5826
Fix compilation error in GCC backend
GuillaumeGomez Apr 18, 2025
41ddf86
Make `#[naked]` an unsafe attribute
folkertdev Mar 29, 2025
cc359b8
Fix import
GuillaumeGomez Apr 18, 2025
bd5c438
Remove early exits from JumpThreading.
cjgillot Apr 18, 2025
e0d9244
Sort Unix env constants alphabetically by target_os
thaliaarchi Apr 15, 2025
2ef7858
Auto merge of #140015 - GuillaumeGomez:subtree-update_cg_gcc_2025-04-…
bors Apr 19, 2025
d863f81
Re-remove `AdtFlags::IS_ANONYMOUS`
Sky9x Apr 19, 2025
37712cc
Combine env consts into std::sys::env_consts
thaliaarchi Apr 15, 2025
670ff84
Handle unsupported fallback
thaliaarchi Apr 15, 2025
93fa96c
Use struct update syntax for some TargetOptions
thaliaarchi Apr 18, 2025
3eaa4b9
Cleaned up 4 tests in `tests/ui/issues`
spencer3035 Apr 16, 2025
a7c39b6
Auto merge of #139114 - m-ou-se:super-let-pin, r=davidtwco
bors Apr 19, 2025
1f491dc
add next_index to Enumerate
jogru0 Apr 8, 2025
5a71fab
added doctest for Enumerate::next_index
jogru0 Apr 19, 2025
f121c7c
added test for Enumerate::next_index on empty iterator
jogru0 Apr 19, 2025
db98b72
Rollup merge of #137454 - mu001999-contrib:fix-137414, r=wesleywiser
ChrisDenton Apr 19, 2025
103be60
Rollup merge of #139297 - RossSmyth:NixClean, r=WaffleLapkin
ChrisDenton Apr 19, 2025
dff14f0
Rollup merge of #139535 - ChrisDenton:default-ptr, r=tgross35
ChrisDenton Apr 19, 2025
d49361a
Rollup merge of #139919 - GuillaumeGomez:rustdoc-json-1-indexed, r=aD…
ChrisDenton Apr 19, 2025
3c5aef3
Rollup merge of #139922 - jnqnfe:cstr_doc_fix, r=jhpratt
ChrisDenton Apr 19, 2025
67a97ba
Rollup merge of #140007 - roblabla:fix-win7, r=ChrisDenton
ChrisDenton Apr 19, 2025
9951149
Rollup merge of #140016 - pfmooney:illumos-fstatat, r=jhpratt
ChrisDenton Apr 19, 2025
9ebc73e
Rollup merge of #140025 - Sky9x:re-remove-adtflags-anon, r=compiler-e…
ChrisDenton Apr 19, 2025
237064a
Rollup merge of #138934 - onur-ozkan:extended-config-profiles, r=Kobzol
ChrisDenton Apr 19, 2025
aad59a3
Rollup merge of #139091 - mejrs:format, r=compiler-errors
ChrisDenton Apr 19, 2025
1a5e486
Rollup merge of #139753 - folkertdev:naked-function-unsafe-attribute,…
ChrisDenton Apr 19, 2025
688478f
Rollup merge of #139762 - compiler-errors:non-env, r=lcnr
ChrisDenton Apr 19, 2025
2d4f113
Rollup merge of #139834 - ChrisDenton:spf, r=WaffleLapkin
ChrisDenton Apr 19, 2025
709f4fe
Rollup merge of #139868 - thaliaarchi:move-env-consts-pal, r=joboet
ChrisDenton Apr 19, 2025
56cef5c
Rollup merge of #139978 - Kobzol:ci-test-summary, r=jieyouxu
ChrisDenton Apr 19, 2025
f0a0efd
Rollup merge of #139995 - spencer3035:clean-ui-tests-4-of-n, r=jieyouxu
ChrisDenton Apr 19, 2025
077cedc
Auto merge of #140040 - ChrisDenton:rollup-56bzfuq, r=ChrisDenton
bors Apr 19, 2025
1d87d14
Add option for stable backport poll
apiraino Apr 19, 2025
5d2375f
Rollup merge of #139042 - compiler-errors:do-not-optimize-switchint, …
ChrisDenton Apr 19, 2025
92adbd3
Rollup merge of #139533 - jogru0:130711, r=Mark-Simulacrum
ChrisDenton Apr 19, 2025
8955c6c
Rollup merge of #139843 - thaliaarchi:editor-file-associations, r=Mar…
ChrisDenton Apr 19, 2025
c9c25c8
Rollup merge of #140000 - EnzymeAD:autodiff-check-builds, r=onur-ozkan
ChrisDenton Apr 19, 2025
91a8825
Rollup merge of #140008 - GuillaumeGomez:cleanup-clean_maybe_renamed_…
ChrisDenton Apr 19, 2025
9851586
Rollup merge of #140024 - cjgillot:continue-jumping, r=compiler-errors
ChrisDenton Apr 19, 2025
4c36aed
Rollup merge of #140039 - apiraino:add-option-for-stable-backport-pol…
ChrisDenton Apr 19, 2025
90fd16e
Auto merge of #140053 - ChrisDenton:rollup-tt00skl, r=ChrisDenton
bors Apr 19, 2025
49e5e4e
Auto merge of #140043 - ChrisDenton:rollup-vwf0s9j, r=ChrisDenton
bors Apr 20, 2025
73c500a
download bootstrap binary from ci
Shourya742 Apr 20, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
Expand Up @@ -31,3 +31,5 @@ ec2cc761bc7067712ecc7734502f703fe3b024c8
c682aa162b0d41e21cc6748f4fecfe01efb69d1f
# reformat with updated edition 2024
1fcae03369abb4c2cc180cd5a49e1f4440a81300
# Breaking up of compiletest runtest.rs
60600a6fa403216bfd66e04f948b1822f6450af7
21 changes: 4 additions & 17 deletions Cargo.lock
Original file line number Diff line number Diff line change
Expand Up @@ -2022,9 +2022,9 @@ checksum = "9fa0e2a1fcbe2f6be6c42e342259976206b383122fc152e872795338b5a3f3a7"

[[package]]
name = "libc"
version = "0.2.171"
version = "0.2.172"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c19937216e9d3aa9956d9bb8dfc0b0c8beb6058fc4f7a4dc4d850edf86a237d6"
checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa"

[[package]]
name = "libdbus-sys"
Expand Down Expand Up @@ -2572,16 +2572,6 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"

[[package]]
name = "os_pipe"
version = "1.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5ffd2b0a5634335b135d5728d84c5e0fd726954b87111f7506a61c502280d982"
dependencies = [
"libc",
"windows-sys 0.59.0",
]

[[package]]
name = "overload"
version = "0.1.1"
Expand Down Expand Up @@ -3142,7 +3132,6 @@ dependencies = [
"gimli 0.31.1",
"libc",
"object 0.36.7",
"os_pipe",
"regex",
"serde_json",
"similar",
Expand Down Expand Up @@ -3199,14 +3188,12 @@ dependencies = [

[[package]]
name = "rustc-rayon-core"
version = "0.5.0"
version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "67668daaf00e359c126f6dcb40d652d89b458a008c8afa727a42a2d20fca0b7f"
checksum = "2f42932dcd3bcbe484b38a3ccf79b7906fac41c02d408b5b1bac26da3416efdb"
dependencies = [
"crossbeam-channel",
"crossbeam-deque",
"crossbeam-utils",
"num_cpus",
]

[[package]]
Expand Down
8 changes: 8 additions & 0 deletions bootstrap.example.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,14 @@
# Note that this has no default value (x.py uses the defaults in `bootstrap.example.toml`).
#profile = <none>

# Inherits configuration values from different configuration files (a.k.a. config extensions).
# Supports absolute paths, and uses the current directory (where the bootstrap was invoked)
# as the base if the given path is not absolute.
#
# The overriding logic follows a right-to-left order. For example, in `include = ["a.toml", "b.toml"]`,
# extension `b.toml` overrides `a.toml`. Also, parent extensions always overrides the inner ones.
#include = []

# Keeps track of major changes made to this configuration.
#
# This value also represents ID of the PR that caused major changes. Meaning,
Expand Down
33 changes: 22 additions & 11 deletions compiler/rustc_ast/src/attr/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -305,8 +305,8 @@ impl MetaItem {
if let [PathSegment { ident, .. }] = self.path.segments[..] { Some(ident) } else { None }
}

pub fn name_or_empty(&self) -> Symbol {
self.ident().unwrap_or_else(Ident::empty).name
pub fn name(&self) -> Option<Symbol> {
self.ident().map(|ident| ident.name)
}

pub fn has_name(&self, name: Symbol) -> bool {
Expand Down Expand Up @@ -511,13 +511,14 @@ impl MetaItemInner {
}
}

/// For a single-segment meta item, returns its name; otherwise, returns `None`.
/// For a single-segment meta item, returns its identifier; otherwise, returns `None`.
pub fn ident(&self) -> Option<Ident> {
self.meta_item().and_then(|meta_item| meta_item.ident())
}

pub fn name_or_empty(&self) -> Symbol {
self.ident().unwrap_or_else(Ident::empty).name
/// For a single-segment meta item, returns its name; otherwise, returns `None`.
pub fn name(&self) -> Option<Symbol> {
self.ident().map(|ident| ident.name)
}

/// Returns `true` if this list item is a MetaItem with a name of `name`.
Expand Down Expand Up @@ -738,9 +739,9 @@ pub trait AttributeExt: Debug {
fn id(&self) -> AttrId;

/// For a single-segment attribute (i.e., `#[attr]` and not `#[path::atrr]`),
/// return the name of the attribute, else return the empty identifier.
fn name_or_empty(&self) -> Symbol {
self.ident().unwrap_or_else(Ident::empty).name
/// return the name of the attribute; otherwise, returns `None`.
fn name(&self) -> Option<Symbol> {
self.ident().map(|ident| ident.name)
}

/// Get the meta item list, `#[attr(meta item list)]`
Expand All @@ -752,7 +753,7 @@ pub trait AttributeExt: Debug {
/// Gets the span of the value literal, as string, when using `#[attr = value]`
fn value_span(&self) -> Option<Span>;

/// For a single-segment attribute, returns its name; otherwise, returns `None`.
/// For a single-segment attribute, returns its ident; otherwise, returns `None`.
fn ident(&self) -> Option<Ident>;

/// Checks whether the path of this attribute matches the name.
Expand All @@ -770,6 +771,11 @@ pub trait AttributeExt: Debug {
self.ident().map(|x| x.name == name).unwrap_or(false)
}

#[inline]
fn has_any_name(&self, names: &[Symbol]) -> bool {
names.iter().any(|&name| self.has_name(name))
}

/// get the span of the entire attribute
fn span(&self) -> Span;

Expand Down Expand Up @@ -813,8 +819,8 @@ impl Attribute {
AttributeExt::id(self)
}

pub fn name_or_empty(&self) -> Symbol {
AttributeExt::name_or_empty(self)
pub fn name(&self) -> Option<Symbol> {
AttributeExt::name(self)
}

pub fn meta_item_list(&self) -> Option<ThinVec<MetaItemInner>> {
Expand Down Expand Up @@ -846,6 +852,11 @@ impl Attribute {
AttributeExt::has_name(self, name)
}

#[inline]
pub fn has_any_name(&self, names: &[Symbol]) -> bool {
AttributeExt::has_any_name(self, names)
}

pub fn span(&self) -> Span {
AttributeExt::span(self)
}
Expand Down
40 changes: 26 additions & 14 deletions compiler/rustc_ast/src/expand/autodiff_attrs.rs
Original file line number Diff line number Diff line change
Expand Up @@ -50,16 +50,32 @@ pub enum DiffActivity {
/// with it.
Dual,
/// Forward Mode, Compute derivatives for this input/output and *overwrite* the shadow argument
/// with it. It expects the shadow argument to be `width` times larger than the original
/// input/output.
Dualv,
/// Forward Mode, Compute derivatives for this input/output and *overwrite* the shadow argument
/// with it. Drop the code which updates the original input/output for maximum performance.
DualOnly,
/// Forward Mode, Compute derivatives for this input/output and *overwrite* the shadow argument
/// with it. Drop the code which updates the original input/output for maximum performance.
/// It expects the shadow argument to be `width` times larger than the original input/output.
DualvOnly,
/// Reverse Mode, Compute derivatives for this &T or *T input and *add* it to the shadow argument.
Duplicated,
/// Reverse Mode, Compute derivatives for this &T or *T input and *add* it to the shadow argument.
/// Drop the code which updates the original input for maximum performance.
DuplicatedOnly,
/// All Integers must be Const, but these are used to mark the integer which represents the
/// length of a slice/vec. This is used for safety checks on slices.
FakeActivitySize,
/// The integer (if given) specifies the size of the slice element in bytes.
FakeActivitySize(Option<u32>),
}

impl DiffActivity {
pub fn is_dual_or_const(&self) -> bool {
use DiffActivity::*;
matches!(self, |Dual| DualOnly | Dualv | DualvOnly | Const)
}
}
/// We generate one of these structs for each `#[autodiff(...)]` attribute.
#[derive(Clone, Eq, PartialEq, Encodable, Decodable, Debug, HashStable_Generic)]
Expand Down Expand Up @@ -131,11 +147,7 @@ pub fn valid_ret_activity(mode: DiffMode, activity: DiffActivity) -> bool {
match mode {
DiffMode::Error => false,
DiffMode::Source => false,
DiffMode::Forward => {
activity == DiffActivity::Dual
|| activity == DiffActivity::DualOnly
|| activity == DiffActivity::Const
}
DiffMode::Forward => activity.is_dual_or_const(),
DiffMode::Reverse => {
activity == DiffActivity::Const
|| activity == DiffActivity::Active
Expand All @@ -153,10 +165,8 @@ pub fn valid_ret_activity(mode: DiffMode, activity: DiffActivity) -> bool {
pub fn valid_ty_for_activity(ty: &P<Ty>, activity: DiffActivity) -> bool {
use DiffActivity::*;
// It's always allowed to mark something as Const, since we won't compute derivatives wrt. it.
if matches!(activity, Const) {
return true;
}
if matches!(activity, Dual | DualOnly) {
// Dual variants also support all types.
if activity.is_dual_or_const() {
return true;
}
// FIXME(ZuseZ4) We should make this more robust to also
Expand All @@ -172,9 +182,7 @@ pub fn valid_input_activity(mode: DiffMode, activity: DiffActivity) -> bool {
return match mode {
DiffMode::Error => false,
DiffMode::Source => false,
DiffMode::Forward => {
matches!(activity, Dual | DualOnly | Const)
}
DiffMode::Forward => activity.is_dual_or_const(),
DiffMode::Reverse => {
matches!(activity, Active | ActiveOnly | Duplicated | DuplicatedOnly | Const)
}
Expand All @@ -189,10 +197,12 @@ impl Display for DiffActivity {
DiffActivity::Active => write!(f, "Active"),
DiffActivity::ActiveOnly => write!(f, "ActiveOnly"),
DiffActivity::Dual => write!(f, "Dual"),
DiffActivity::Dualv => write!(f, "Dualv"),
DiffActivity::DualOnly => write!(f, "DualOnly"),
DiffActivity::DualvOnly => write!(f, "DualvOnly"),
DiffActivity::Duplicated => write!(f, "Duplicated"),
DiffActivity::DuplicatedOnly => write!(f, "DuplicatedOnly"),
DiffActivity::FakeActivitySize => write!(f, "FakeActivitySize"),
DiffActivity::FakeActivitySize(s) => write!(f, "FakeActivitySize({:?})", s),
}
}
}
Expand Down Expand Up @@ -220,7 +230,9 @@ impl FromStr for DiffActivity {
"ActiveOnly" => Ok(DiffActivity::ActiveOnly),
"Const" => Ok(DiffActivity::Const),
"Dual" => Ok(DiffActivity::Dual),
"Dualv" => Ok(DiffActivity::Dualv),
"DualOnly" => Ok(DiffActivity::DualOnly),
"DualvOnly" => Ok(DiffActivity::DualvOnly),
"Duplicated" => Ok(DiffActivity::Duplicated),
"DuplicatedOnly" => Ok(DiffActivity::DuplicatedOnly),
_ => Err(()),
Expand Down
2 changes: 1 addition & 1 deletion compiler/rustc_ast_lowering/src/item.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1310,7 +1310,7 @@ impl<'hir> LoweringContext<'_, 'hir> {
// create a fake body so that the entire rest of the compiler doesn't have to deal with
// this as a special case.
return self.lower_fn_body(decl, contract, |this| {
if attrs.iter().any(|a| a.name_or_empty() == sym::rustc_intrinsic) {
if attrs.iter().any(|a| a.has_name(sym::rustc_intrinsic)) {
let span = this.lower_span(span);
let empty_block = hir::Block {
hir_id: this.next_id(),
Expand Down
12 changes: 6 additions & 6 deletions compiler/rustc_ast_lowering/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1767,21 +1767,21 @@ impl<'a, 'hir> LoweringContext<'a, 'hir> {
) -> &'hir hir::Lifetime {
let res = self.resolver.get_lifetime_res(id).unwrap_or(LifetimeRes::Error);
let res = match res {
LifetimeRes::Param { param, .. } => hir::LifetimeName::Param(param),
LifetimeRes::Param { param, .. } => hir::LifetimeKind::Param(param),
LifetimeRes::Fresh { param, .. } => {
debug_assert_eq!(ident.name, kw::UnderscoreLifetime);
let param = self.local_def_id(param);
hir::LifetimeName::Param(param)
hir::LifetimeKind::Param(param)
}
LifetimeRes::Infer => {
debug_assert_eq!(ident.name, kw::UnderscoreLifetime);
hir::LifetimeName::Infer
hir::LifetimeKind::Infer
}
LifetimeRes::Static { .. } => {
debug_assert!(matches!(ident.name, kw::StaticLifetime | kw::UnderscoreLifetime));
hir::LifetimeName::Static
hir::LifetimeKind::Static
}
LifetimeRes::Error => hir::LifetimeName::Error,
LifetimeRes::Error => hir::LifetimeKind::Error,
LifetimeRes::ElidedAnchor { .. } => {
panic!("Unexpected `ElidedAnchar` {:?} at {:?}", ident, ident.span);
}
Expand Down Expand Up @@ -2388,7 +2388,7 @@ impl<'a, 'hir> LoweringContext<'a, 'hir> {
let r = hir::Lifetime::new(
self.next_id(),
Ident::new(kw::UnderscoreLifetime, self.lower_span(span)),
hir::LifetimeName::ImplicitObjectLifetimeDefault,
hir::LifetimeKind::ImplicitObjectLifetimeDefault,
IsAnonInPath::No,
);
debug!("elided_dyn_bound: r={:?}", r);
Expand Down
4 changes: 4 additions & 0 deletions compiler/rustc_ast_passes/messages.ftl
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,10 @@ ast_passes_extern_types_cannot = `type`s inside `extern` blocks cannot have {$de
.suggestion = remove the {$remove_descr}
.label = `extern` block begins here

ast_passes_extern_without_abi = `extern` declarations without an explicit ABI are disallowed
.suggestion = specify an ABI
.help = prior to Rust 2024, a default ABI was inferred

ast_passes_feature_on_non_nightly = `#![feature]` may not be used on the {$channel} release channel
.suggestion = remove the attribute
.stable_since = the feature `{$name}` has been stable since `{$since}` and no longer requires an attribute to enable
Expand Down
17 changes: 9 additions & 8 deletions compiler/rustc_ast_passes/src/ast_validation.rs
Original file line number Diff line number Diff line change
Expand Up @@ -347,7 +347,7 @@ impl<'a> AstValidator<'a> {
sym::forbid,
sym::warn,
];
!arr.contains(&attr.name_or_empty()) && rustc_attr_parsing::is_builtin_attr(*attr)
!attr.has_any_name(&arr) && rustc_attr_parsing::is_builtin_attr(*attr)
})
.for_each(|attr| {
if attr.is_doc_comment() {
Expand Down Expand Up @@ -684,7 +684,7 @@ impl<'a> AstValidator<'a> {
self.dcx().emit_err(errors::PatternFnPointer { span });
});
if let Extern::Implicit(extern_span) = bfty.ext {
self.maybe_lint_missing_abi(extern_span, ty.id);
self.handle_missing_abi(extern_span, ty.id);
}
}
TyKind::TraitObject(bounds, ..) => {
Expand Down Expand Up @@ -717,10 +717,12 @@ impl<'a> AstValidator<'a> {
}
}

fn maybe_lint_missing_abi(&mut self, span: Span, id: NodeId) {
fn handle_missing_abi(&mut self, span: Span, id: NodeId) {
// FIXME(davidtwco): This is a hack to detect macros which produce spans of the
// call site which do not have a macro backtrace. See #61963.
if self
if span.edition().at_least_edition_future() && self.features.explicit_extern_abis() {
self.dcx().emit_err(errors::MissingAbi { span });
} else if self
.sess
.source_map()
.span_to_snippet(span)
Expand Down Expand Up @@ -945,8 +947,7 @@ impl<'a> Visitor<'a> for AstValidator<'a> {
self.visit_attrs_vis_ident(&item.attrs, &item.vis, ident);
self.check_defaultness(item.span, *defaultness);

let is_intrinsic =
item.attrs.iter().any(|a| a.name_or_empty() == sym::rustc_intrinsic);
let is_intrinsic = item.attrs.iter().any(|a| a.has_name(sym::rustc_intrinsic));
if body.is_none() && !is_intrinsic {
self.dcx().emit_err(errors::FnWithoutBody {
span: item.span,
Expand Down Expand Up @@ -996,7 +997,7 @@ impl<'a> Visitor<'a> for AstValidator<'a> {
}

if abi.is_none() {
self.maybe_lint_missing_abi(*extern_span, item.id);
self.handle_missing_abi(*extern_span, item.id);
}
self.with_in_extern_mod(*safety, |this| {
visit::walk_item(this, item);
Expand Down Expand Up @@ -1370,7 +1371,7 @@ impl<'a> Visitor<'a> for AstValidator<'a> {
},
) = fk
{
self.maybe_lint_missing_abi(*extern_span, id);
self.handle_missing_abi(*extern_span, id);
}

// Functions without bodies cannot have patterns.
Expand Down
Loading
Loading