Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

EXPERIMENT: Use the force-inline pass for more stuff #144483

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

Draft
scottmcm wants to merge 4 commits into rust-lang:master
base: master
Choose a base branch
Loading
from scottmcm:early-inline

Conversation

Copy link
Member

@scottmcm scottmcm commented Jul 26, 2025

We're already paying for the extra look at stuff, what if we add a second attribute for things that we always want to inline, but are also fine with generic calls not getting inlined? Can we save a bunch of code and functions calls in derived Ords and such? Is it worth the extra overhead of normalizing more calls?

r? ghost

@rustbot rustbot added A-attributes Area: Attributes (`#[...]`, `#![...]`) A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Jul 26, 2025

This comment was marked as outdated.

This comment was marked as outdated.

This comment was marked as outdated.

rust-bors bot added a commit that referenced this pull request Jul 26, 2025
EXPERIMENT: Use the force-inline pass for more stuff
@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Jul 26, 2025

This comment has been minimized.

This comment has been minimized.

This comment was marked as outdated.

Copy link
Member Author

@bors try @rust-timer queue

This comment has been minimized.

rust-bors bot added a commit that referenced this pull request Jul 26, 2025
EXPERIMENT: Use the force-inline pass for more stuff
Copy link

rust-bors bot commented Jul 26, 2025

⌛ Trying commit e9fcbb2 with merge 5a3178f...

To cancel the try build, run the command @bors try cancel.

Copy link

rust-bors bot commented Jul 26, 2025

☀️ Try build successful (CI)
Build commit: 5a3178f (5a3178fa03ad01debfab17b1253662bc45c95eb9, parent: f32b23204a0efe2fe8383ed4be1a30b56c1bbf94)

This comment has been minimized.

Copy link
Collaborator

Finished benchmarking commit (5a3178f): comparison URL.

Overall result: ❌✅ regressions and improvements - please read the text below

Benchmarking this pull request means it may be perf-sensitive – we'll automatically label it not fit for rolling up. You can override this, but we strongly advise not to, due to possible changes in compiler perf.

Next Steps: If you can justify the regressions found in this try perf run, please do so in sufficient writing along with @rustbot label: +perf-regression-triaged. If not, please fix the regressions and do another perf run. If its results are neutral or positive, the label will be automatically removed.

@bors rollup=never
@rustbot label: -S-waiting-on-perf +perf-regression

Instruction count

Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.

mean range count
Regressions ❌
(primary)
0.9% [0.1%, 3.2%] 93
Regressions ❌
(secondary)
1.0% [0.1%, 5.2%] 73
Improvements ✅
(primary)
-0.8% [-2.6%, -0.1%] 5
Improvements ✅
(secondary)
-0.1% [-0.2%, -0.1%] 2
All ❌✅ (primary) 0.8% [-2.6%, 3.2%] 98

Max RSS (memory usage)

Results (primary 1.8%, secondary 0.3%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
2.3% [0.6%, 6.2%] 23
Regressions ❌
(secondary)
3.8% [1.1%, 6.5%] 2
Improvements ✅
(primary)
-3.6% [-6.3%, -0.9%] 2
Improvements ✅
(secondary)
-1.5% [-2.2%, -0.7%] 4
All ❌✅ (primary) 1.8% [-6.3%, 6.2%] 25

Cycles

Results (primary 2.3%, secondary 2.8%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
2.7% [2.2%, 3.7%] 12
Regressions ❌
(secondary)
2.8% [1.5%, 4.4%] 12
Improvements ✅
(primary)
-1.9% [-1.9%, -1.9%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 2.3% [-1.9%, 3.7%] 13

Binary size

Results (primary 1.3%, secondary 0.9%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
1.4% [0.0%, 8.5%] 96
Regressions ❌
(secondary)
1.0% [0.1%, 2.4%] 21
Improvements ✅
(primary)
-0.2% [-0.2%, -0.0%] 4
Improvements ✅
(secondary)
-0.1% [-0.3%, -0.0%] 4
All ❌✅ (primary) 1.3% [-0.2%, 8.5%] 100

Bootstrap: 467.999s -> 468.02s (0.00%)
Artifact size: 376.62 MiB -> 376.79 MiB (0.05%)

@rustbot rustbot added perf-regression Performance regression. and removed S-waiting-on-perf Status: Waiting on a perf run to be completed. labels Jul 26, 2025
Copy link
Collaborator

bors commented Jul 26, 2025

☔ The latest upstream changes (presumably #144502) made this pull request unmergeable. Please resolve the merge conflicts.

Copy link
Member Author

Hmm, yeah, way too many new resolve calls to work. Ah well, interesting to know.

mati865 reacted with laugh emoji

@rustbot rustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Jul 26, 2025
@rustbot rustbot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 4, 2025
Copy link
Member Author

scottmcm commented Aug 4, 2025

I was inspired by https://discord.com/channels/273534239310479360/957720175619215380/1401622766536364124 to see if I can do a more limited version of this that would still work.

Copy link
Member Author

scottmcm commented Aug 4, 2025

@bors try @rust-timer queue

This comment has been minimized.

Copy link

rust-bors bot commented Aug 4, 2025

⌛ Trying commit a6adf2d with merge f4b36c8...

To cancel the try build, run the command @bors try cancel.

rust-bors bot added a commit that referenced this pull request Aug 4, 2025
EXPERIMENT: Use the force-inline pass for more stuff
@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Aug 4, 2025

This comment has been minimized.

Zalathar added a commit to Zalathar/rust that referenced this pull request Aug 4, 2025
Add some pre-codegen MIR tests for debug mode
No functional changes; just some tests.
I made these for rust-lang#144483, but that's going in a different direction, so I wanted to propose we just add them to help see the impact of other related changes in the future.
r? mir
Zalathar added a commit to Zalathar/rust that referenced this pull request Aug 4, 2025
Add some pre-codegen MIR tests for debug mode
No functional changes; just some tests.
I made these for rust-lang#144483, but that's going in a different direction, so I wanted to propose we just add them to help see the impact of other related changes in the future.
r? mir
Copy link

rust-bors bot commented Aug 4, 2025

☀️ Try build successful (CI)
Build commit: f4b36c8 (f4b36c8b56f988af2e104136c467ff4a28a21216, parent: 383b9c447b61641e1f1a3850253944a897a60827)

This comment has been minimized.

Copy link
Collaborator

Finished benchmarking commit (f4b36c8): comparison URL.

Overall result: ❌ regressions - please read the text below

Benchmarking this pull request means it may be perf-sensitive – we'll automatically label it not fit for rolling up. You can override this, but we strongly advise not to, due to possible changes in compiler perf.

Next Steps: If you can justify the regressions found in this try perf run, please do so in sufficient writing along with @rustbot label: +perf-regression-triaged. If not, please fix the regressions and do another perf run. If its results are neutral or positive, the label will be automatically removed.

@bors rollup=never
@rustbot label: -S-waiting-on-perf +perf-regression

Instruction count

Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
0.8% [0.1%, 1.0%] 7
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-0.0% [-0.0%, -0.0%] 1
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (primary -0.7%, secondary -2.1%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
1.7% [0.9%, 2.4%] 4
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-5.4% [-7.4%, -3.4%] 2
Improvements ✅
(secondary)
-2.1% [-3.1%, -0.8%] 4
All ❌✅ (primary) -0.7% [-7.4%, 2.4%] 6

Cycles

Results (secondary -4.7%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-4.7% [-4.7%, -4.7%] 1
All ❌✅ (primary) - - 0

Binary size

Results (primary -0.0%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
0.0% [0.0%, 0.1%] 12
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.1% [-0.1%, -0.0%] 7
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -0.0% [-0.1%, 0.1%] 19

Bootstrap: 468.859s -> 468.747s (-0.02%)
Artifact size: 376.98 MiB -> 377.03 MiB (0.01%)

@rustbot rustbot removed the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Aug 4, 2025
rust-timer added a commit that referenced this pull request Aug 4, 2025
Rollup merge of #144875 - scottmcm:more-mir-tests, r=cjgillot
Add some pre-codegen MIR tests for debug mode
No functional changes; just some tests.
I made these for #144483, but that's going in a different direction, so I wanted to propose we just add them to help see the impact of other related changes in the future.
r? mir
Copy link
Collaborator

The job aarch64-gnu-llvm-19-1 failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)
 Compiling crypto-common v0.1.6
[RUSTC-TIMING] block_buffer test:false 0.185
[RUSTC-TIMING] crypto_common test:false 0.142
 Compiling psm v0.1.26
error: internal compiler error: compiler/rustc_mir_transform/src/validate.rs:80:25: broken MIR in FnPtrShim(DefId(2:3945 ~ core[78ea]::ops::function::FnOnce::call_once), FnDef(DefId(3:682 ~ alloc[65b5]::boxed::{impl#0}::new), [ty::Type])) (after phase change to runtime-optimized) at bb1[1]:
 Alias(Projection, AliasTy { args: [FnDef(DefId(3:682 ~ alloc[65b5]::boxed::{impl#0}::new), [ty::Type]), (ty::Type,)], def_id: DefId(2:3944 ~ core[78ea]::ops::function::FnOnce::Output), .. }) does not have fields
 --> /checkout/library/alloc/src/boxed.rs:261:24
 |
261 | return box_new(x);
 | ^
---
 9: 0xffaeb3a78cbc - std::panicking::default_hook::{{closure}}::haac60c33ad8953eb
 at /rustc/390a0ab5dc4a895235a551e502c3893c3337731d/library/std/src/panicking.rs:300:27
 10: 0xffaeb3a78b18 - std::panicking::default_hook::hfbe61bc0eb59097c
 at /rustc/390a0ab5dc4a895235a551e502c3893c3337731d/library/std/src/panicking.rs:327:9
 11: 0xffaeaff586c8 - <alloc[cf75e2ab30ac120f]::boxed::Box<rustc_driver_impl[f8dcd73e3f98802]::install_ice_hook::{closure#1}> as core[86de0986de23a55d]::ops::function::Fn<(&dyn for<'a, 'b> core[86de0986de23a55d]::ops::function::Fn<(&'a std[57c45f57ec3c24e5]::panic::PanicHookInfo<'b>,), Output = ()> + core[86de0986de23a55d]::marker::Sync + core[86de0986de23a55d]::marker::Send, &std[57c45f57ec3c24e5]::panic::PanicHookInfo)>>::call
 12: 0xffaeb3a79730 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h1caa90323394741e
 at /rustc/390a0ab5dc4a895235a551e502c3893c3337731d/library/alloc/src/boxed.rs:1980:9
 13: 0xffaeb3a79730 - std::panicking::rust_panic_with_hook::h448ca412e27acd2b
 at /rustc/390a0ab5dc4a895235a551e502c3893c3337731d/library/std/src/panicking.rs:841:13
 14: 0xffaeb36845d8 - std[57c45f57ec3c24e5]::panicking::begin_panic::<rustc_errors[c4fdaa21ad111aa4]::ExplicitBug>::{closure#0}
 15: 0xffaeb368459c - std[57c45f57ec3c24e5]::sys::backtrace::__rust_end_short_backtrace::<std[57c45f57ec3c24e5]::panicking::begin_panic<rustc_errors[c4fdaa21ad111aa4]::ExplicitBug>::{closure#0}, !>
 16: 0xffaeafe57c80 - std[57c45f57ec3c24e5]::panicking::begin_panic::<rustc_errors[c4fdaa21ad111aa4]::ExplicitBug>
 17: 0xffaeafe5dc88 - <rustc_errors[c4fdaa21ad111aa4]::diagnostic::BugAbort as rustc_errors[c4fdaa21ad111aa4]::diagnostic::EmissionGuarantee>::emit_producing_guarantee
 18: 0xffaeb34219f4 - <rustc_errors[c4fdaa21ad111aa4]::DiagCtxtHandle>::span_bug::<rustc_span[41a6e2c377868cd4]::span_encoding::Span, alloc[cf75e2ab30ac120f]::string::String>
 19: 0xffaeb343cc88 - rustc_middle[9bffbefec4c2d3c6]::util::bug::opt_span_bug_fmt::<rustc_span[41a6e2c377868cd4]::span_encoding::Span>::{closure#0}
 20: 0xffaeb342f7ac - rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::with_opt::<rustc_middle[9bffbefec4c2d3c6]::util::bug::opt_span_bug_fmt<rustc_span[41a6e2c377868cd4]::span_encoding::Span>::{closure#0}, !>::{closure#0}
 21: 0xffaeb342f768 - rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::with_context_opt::<rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::with_opt<rustc_middle[9bffbefec4c2d3c6]::util::bug::opt_span_bug_fmt<rustc_span[41a6e2c377868cd4]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
 22: 0xffaeafe47604 - rustc_middle[9bffbefec4c2d3c6]::util::bug::span_bug_fmt::<rustc_span[41a6e2c377868cd4]::span_encoding::Span>
 23: 0xffaeb0fc22bc - <rustc_mir_transform[8ae3d3c636c4d037]::validate::CfgChecker>::fail::<alloc[cf75e2ab30ac120f]::string::String>
 24: 0xffaeb0fc1c58 - <rustc_mir_transform[8ae3d3c636c4d037]::validate::Validator as rustc_mir_transform[8ae3d3c636c4d037]::pass_manager::MirPass>::run_pass
 25: 0xffaeb0f2562c - rustc_mir_transform[8ae3d3c636c4d037]::pass_manager::run_passes_inner
 26: 0xffaeb0dc8360 - rustc_mir_transform[8ae3d3c636c4d037]::shim::make_shim
 27: 0xffaeb22f5584 - rustc_query_impl[6c9b933e04a41676]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[6c9b933e04a41676]::query_impl::mir_shims::dynamic_query::{closure#2}::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 8usize]>>
 28: 0xffaeb223e804 - <rustc_query_impl[6c9b933e04a41676]::query_impl::mir_shims::dynamic_query::{closure#2} as core[86de0986de23a55d]::ops::function::FnOnce<(rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt, rustc_middle[9bffbefec4c2d3c6]::ty::instance::InstanceKind)>>::call_once
 29: 0xffaeb227f8b4 - <std[57c45f57ec3c24e5]::thread::local::LocalKey<core[86de0986de23a55d]::cell::Cell<*const ()>>>::with::<rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::enter_context<rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::execute_job_non_incr<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::DefaultCache<(rustc_middle[9bffbefec4c2d3c6]::ty::predicate::Predicate, rustc_middle[9bffbefec4c2d3c6]::traits::WellFormedLoc), rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 8usize]>>
 30: 0xffaeb217b9f4 - rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::try_execute_query::<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::DefaultCache<rustc_middle[9bffbefec4c2d3c6]::ty::instance::InstanceKind, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt, false>
 31: 0xffaeb240eb08 - rustc_query_impl[6c9b933e04a41676]::query_impl::mir_shims::get_query_non_incr::__rust_end_short_backtrace
 32: 0xffaeb3371fd8 - <rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt>::instance_mir
 33: 0xffaeb0ce39b8 - rustc_monomorphize[86dc333c50564ca]::mono_checks::check_mono_item
 34: 0xffaeb22db144 - rustc_query_impl[6c9b933e04a41676]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[6c9b933e04a41676]::query_impl::check_mono_item::dynamic_query::{closure#2}::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 0usize]>>
 35: 0xffaeb21fa140 - <rustc_query_impl[6c9b933e04a41676]::query_impl::check_mono_item::dynamic_query::{closure#2} as core[86de0986de23a55d]::ops::function::FnOnce<(rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt, rustc_middle[9bffbefec4c2d3c6]::ty::instance::Instance)>>::call_once
 36: 0xffaeb227f938 - <std[57c45f57ec3c24e5]::thread::local::LocalKey<core[86de0986de23a55d]::cell::Cell<*const ()>>>::with::<rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::enter_context<rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::execute_job_non_incr<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::DefaultCache<rustc_middle[9bffbefec4c2d3c6]::ty::instance::Instance, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 0usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 0usize]>>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 0usize]>>
 37: 0xffaeb217d060 - rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::try_execute_query::<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::DefaultCache<rustc_middle[9bffbefec4c2d3c6]::ty::instance::Instance, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 0usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt, false>
 38: 0xffaeb243300c - rustc_query_impl[6c9b933e04a41676]::query_impl::check_mono_item::get_query_non_incr::__rust_end_short_backtrace
 39: 0xffaeb0ca087c - rustc_monomorphize[86dc333c50564ca]::collector::items_of_instance
 40: 0xffaeb22e0920 - rustc_query_impl[6c9b933e04a41676]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[6c9b933e04a41676]::query_impl::items_of_instance::dynamic_query::{closure#2}::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 32usize]>>
 41: 0xffaeb22084bc - <rustc_query_impl[6c9b933e04a41676]::query_impl::items_of_instance::dynamic_query::{closure#2} as core[86de0986de23a55d]::ops::function::FnOnce<(rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt, (rustc_middle[9bffbefec4c2d3c6]::ty::instance::Instance, rustc_middle[9bffbefec4c2d3c6]::mir::mono::CollectionMode))>>::call_once
 42: 0xffaeb227f064 - <std[57c45f57ec3c24e5]::thread::local::LocalKey<core[86de0986de23a55d]::cell::Cell<*const ()>>>::with::<rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::enter_context<rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::execute_job_non_incr<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::DefaultCache<(rustc_middle[9bffbefec4c2d3c6]::ty::instance::Instance, rustc_middle[9bffbefec4c2d3c6]::mir::mono::CollectionMode), rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 32usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 32usize]>>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 32usize]>>
 43: 0xffaeb219875c - rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::try_execute_query::<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::DefaultCache<(rustc_middle[9bffbefec4c2d3c6]::ty::instance::Instance, rustc_middle[9bffbefec4c2d3c6]::mir::mono::CollectionMode), rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 32usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt, false>
 44: 0xffaeb243357c - rustc_query_impl[6c9b933e04a41676]::query_impl::items_of_instance::get_query_non_incr::__rust_end_short_backtrace
 45: 0xffaeb0ca2ef4 - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 46: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 47: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 48: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 49: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 50: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 51: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 52: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 53: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 54: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 55: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 56: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 57: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 58: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 59: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 60: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 61: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 62: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 63: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 64: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 65: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 66: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 67: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 68: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 69: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 70: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 71: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 72: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 73: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 74: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 75: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 76: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 77: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 78: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 79: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 80: 0xffaeb0ca299c - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_rec
 81: 0xffaeb0c9a590 - rustc_monomorphize[86dc333c50564ca]::collector::collect_items_root
 82: 0xffaeb0cca9a4 - <rustc_session[e164ea3d64afd4b1]::session::Session>::time::<(), rustc_monomorphize[86dc333c50564ca]::collector::collect_crate_mono_items::{closure#1}>
 83: 0xffaeb0ca795c - rustc_monomorphize[86dc333c50564ca]::collector::collect_crate_mono_items
 84: 0xffaeb0caf1e4 - rustc_monomorphize[86dc333c50564ca]::partitioning::collect_and_partition_mono_items
 85: 0xffaeb22f13e4 - rustc_query_impl[6c9b933e04a41676]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[6c9b933e04a41676]::query_impl::collect_and_partition_mono_items::dynamic_query::{closure#2}::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 40usize]>>
 86: 0xffaeb2234654 - <rustc_query_impl[6c9b933e04a41676]::query_impl::collect_and_partition_mono_items::dynamic_query::{closure#2} as core[86de0986de23a55d]::ops::function::FnOnce<(rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt, ())>>::call_once
 87: 0xffaeb227e95c - <std[57c45f57ec3c24e5]::thread::local::LocalKey<core[86de0986de23a55d]::cell::Cell<*const ()>>>::with::<rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::enter_context<rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::execute_job_non_incr<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::SingleCache<rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 40usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 40usize]>>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 40usize]>>
 88: 0xffaeb2144b68 - rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::try_execute_query::<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_query_system[ff5dd8c2f29163d8]::query::caches::SingleCache<rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 40usize]>>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt, false>
 89: 0xffaeb242b61c - rustc_query_impl[6c9b933e04a41676]::query_impl::collect_and_partition_mono_items::get_query_non_incr::__rust_end_short_backtrace
 90: 0xffaeb2591bf0 - rustc_codegen_ssa[3fe074c497e487d6]::back::symbol_export::exported_generic_symbols_provider_local
 91: 0xffaeb22ec5b8 - rustc_query_impl[6c9b933e04a41676]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[6c9b933e04a41676]::query_impl::exported_generic_symbols::dynamic_query::{closure#2}::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 16usize]>>
 92: 0xffaeb2227130 - <rustc_query_impl[6c9b933e04a41676]::query_impl::exported_generic_symbols::dynamic_query::{closure#2} as core[86de0986de23a55d]::ops::function::FnOnce<(rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt, rustc_span[41a6e2c377868cd4]::def_id::CrateNum)>>::call_once
 93: 0xffaeb22800a8 - <std[57c45f57ec3c24e5]::thread::local::LocalKey<core[86de0986de23a55d]::cell::Cell<*const ()>>>::with::<rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::enter_context<rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::execute_job_non_incr<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_data_structures[2c9f1c1f23740c75]::vec_cache::VecCache<rustc_span[41a6e2c377868cd4]::def_id::LocalDefId, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 16usize]>, rustc_query_system[ff5dd8c2f29163d8]::dep_graph::graph::DepNodeIndex>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 16usize]>>::{closure#0}, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 16usize]>>
 94: 0xffaeb21a785c - rustc_query_system[ff5dd8c2f29163d8]::query::plumbing::try_execute_query::<rustc_query_impl[6c9b933e04a41676]::DynamicConfig<rustc_data_structures[2c9f1c1f23740c75]::vec_cache::VecCache<rustc_span[41a6e2c377868cd4]::def_id::CrateNum, rustc_middle[9bffbefec4c2d3c6]::query::erase::Erased<[u8; 16usize]>, rustc_query_system[ff5dd8c2f29163d8]::dep_graph::graph::DepNodeIndex>, false, false, false>, rustc_query_impl[6c9b933e04a41676]::plumbing::QueryCtxt, false>
 95: 0xffaeb242b190 - rustc_query_impl[6c9b933e04a41676]::query_impl::exported_generic_symbols::get_query_non_incr::__rust_end_short_backtrace
 96: 0xffaeb2d8d298 - <rustc_metadata[e90599fb12f69ac5]::rmeta::encoder::EncodeContext>::encode_crate_root
 97: 0xffaeafdfec10 - rustc_metadata[e90599fb12f69ac5]::rmeta::encoder::encode_metadata::{closure#3}::{closure#0}
 98: 0xffaeb2d853cc - <rustc_metadata[e90599fb12f69ac5]::rmeta::encoder::encode_metadata::{closure#3} as core[86de0986de23a55d]::ops::function::FnOnce<(rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt, &std[57c45f57ec3c24e5]::path::Path)>>::call_once
 99: 0xffaeb2d9e764 - rustc_metadata[e90599fb12f69ac5]::rmeta::encoder::encode_metadata
 100: 0xffaeb2e0c298 - rustc_metadata[e90599fb12f69ac5]::fs::encode_and_write_metadata
 101: 0xffaeb0169290 - rustc_interface[75c05ebdc46d0f4d]::passes::start_codegen
 102: 0xffaeb01e67c4 - <rustc_interface[75c05ebdc46d0f4d]::queries::Linker>::codegen_and_build_linker
 103: 0xffaeafec9cd8 - <std[57c45f57ec3c24e5]::thread::local::LocalKey<core[86de0986de23a55d]::cell::Cell<*const ()>>>::with::<rustc_middle[9bffbefec4c2d3c6]::ty::context::tls::enter_context<<rustc_middle[9bffbefec4c2d3c6]::ty::context::GlobalCtxt>::enter<rustc_interface[75c05ebdc46d0f4d]::passes::create_and_enter_global_ctxt<core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>, rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}, core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>>::{closure#1}, core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>>::{closure#0}, core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>>
 104: 0xffaeaff26c9c - <rustc_middle[9bffbefec4c2d3c6]::ty::context::TyCtxt>::create_global_ctxt::<core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>, rustc_interface[75c05ebdc46d0f4d]::passes::create_and_enter_global_ctxt<core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>, rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}>
 105: 0xffaeaff09a20 - <rustc_interface[75c05ebdc46d0f4d]::passes::create_and_enter_global_ctxt<core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>, rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core[86de0986de23a55d]::ops::function::FnOnce<(&rustc_session[e164ea3d64afd4b1]::session::Session, rustc_middle[9bffbefec4c2d3c6]::ty::context::CurrentGcx, alloc[cf75e2ab30ac120f]::sync::Arc<rustc_data_structures[2c9f1c1f23740c75]::jobserver::Proxy>, &std[57c45f57ec3c24e5]::sync::once_lock::OnceLock<rustc_middle[9bffbefec4c2d3c6]::ty::context::GlobalCtxt>, &rustc_data_structures[2c9f1c1f23740c75]::sync::worker_local::WorkerLocal<rustc_middle[9bffbefec4c2d3c6]::arena::Arena>, &rustc_data_structures[2c9f1c1f23740c75]::sync::worker_local::WorkerLocal<rustc_hir[c4d5b34c706ef8ed]::Arena>, rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0}
 106: 0xffaeaff58490 - <alloc[cf75e2ab30ac120f]::boxed::Box<dyn for<'a> core[86de0986de23a55d]::ops::function::FnOnce<(&'a rustc_session[e164ea3d64afd4b1]::session::Session, rustc_middle[9bffbefec4c2d3c6]::ty::context::CurrentGcx, alloc[cf75e2ab30ac120f]::sync::Arc<rustc_data_structures[2c9f1c1f23740c75]::jobserver::Proxy>, &'a std[57c45f57ec3c24e5]::sync::once_lock::OnceLock<rustc_middle[9bffbefec4c2d3c6]::ty::context::GlobalCtxt<'a>>, &'a rustc_data_structures[2c9f1c1f23740c75]::sync::worker_local::WorkerLocal<rustc_middle[9bffbefec4c2d3c6]::arena::Arena<'a>>, &'a rustc_data_structures[2c9f1c1f23740c75]::sync::worker_local::WorkerLocal<rustc_hir[c4d5b34c706ef8ed]::Arena<'a>>, rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}::{closure#2}), Output = core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>>> as core[86de0986de23a55d]::ops::function::FnOnce<(&rustc_session[e164ea3d64afd4b1]::session::Session, rustc_middle[9bffbefec4c2d3c6]::ty::context::CurrentGcx, alloc[cf75e2ab30ac120f]::sync::Arc<rustc_data_structures[2c9f1c1f23740c75]::jobserver::Proxy>, &std[57c45f57ec3c24e5]::sync::once_lock::OnceLock<rustc_middle[9bffbefec4c2d3c6]::ty::context::GlobalCtxt>, &rustc_data_structures[2c9f1c1f23740c75]::sync::worker_local::WorkerLocal<rustc_middle[9bffbefec4c2d3c6]::arena::Arena>, &rustc_data_structures[2c9f1c1f23740c75]::sync::worker_local::WorkerLocal<rustc_hir[c4d5b34c706ef8ed]::Arena>, rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}::{closure#2})>>::call_once
 107: 0xffaeafef0130 - rustc_interface[75c05ebdc46d0f4d]::passes::create_and_enter_global_ctxt::<core[86de0986de23a55d]::option::Option<rustc_interface[75c05ebdc46d0f4d]::queries::Linker>, rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}::{closure#2}>
 108: 0xffaeafee1b4c - <scoped_tls[21646fa6031b800c]::ScopedKey<rustc_span[41a6e2c377868cd4]::SessionGlobals>>::set::<rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_with_globals<rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_pool_with_globals<rustc_interface[75c05ebdc46d0f4d]::interface::run_compiler<(), rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
 109: 0xffaeaff71068 - rustc_span[41a6e2c377868cd4]::create_session_globals_then::<(), rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_with_globals<rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_pool_with_globals<rustc_interface[75c05ebdc46d0f4d]::interface::run_compiler<(), rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}>
 110: 0xffaeaff87ee4 - std[57c45f57ec3c24e5]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_with_globals<rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_pool_with_globals<rustc_interface[75c05ebdc46d0f4d]::interface::run_compiler<(), rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
 111: 0xffaeafeea370 - <<std[57c45f57ec3c24e5]::thread::Builder>::spawn_unchecked_<rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_with_globals<rustc_interface[75c05ebdc46d0f4d]::util::run_in_thread_pool_with_globals<rustc_interface[75c05ebdc46d0f4d]::interface::run_compiler<(), rustc_driver_impl[f8dcd73e3f98802]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[86de0986de23a55d]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
 112: 0xffaeb3a7d6b0 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h4301b1eb7e190497
 at /rustc/390a0ab5dc4a895235a551e502c3893c3337731d/library/alloc/src/boxed.rs:1966:9
 113: 0xffaeb3a7d6b0 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h63c57e2bd87c106a
 at /rustc/390a0ab5dc4a895235a551e502c3893c3337731d/library/alloc/src/boxed.rs:1966:9
 114: 0xffaeb3a7d6b0 - std::sys::pal::unix::thread::Thread::new::thread_start::h029a7b8769f51646
 at /rustc/390a0ab5dc4a895235a551e502c3893c3337731d/library/std/src/sys/pal/unix/thread.rs:97:17
 115: 0xffaeaf194b30 - <unknown>
 116: 0xffaeaf1fd88c - <unknown>
---
note: please make sure that you have updated to the latest nightly
note: please attach the file at `/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-2.0.104/rustc-ice-2025年08月06日T04_41_53-15268.txt` to your bug report
note: compiler flags: --crate-type lib -C embed-bitcode=no -Z binary-dep-depinfo -Z force-unstable-if-unmarked
note: some of the compiler flags provided by cargo are hidden
query stack during panic:
#0 [mir_shims] generating MIR shim for `core::ops::function::FnOnce::call_once`, instance=FnPtrShim(DefId(2:3945 ~ core[78ea]::ops::function::FnOnce::call_once), FnDef(DefId(3:682 ~ alloc[65b5]::boxed::{impl#0}::new), [ty::Type]))
#1 [check_mono_item] monomorphization-time checking
... and 3 other queries... use `env RUST_BACKTRACE=1` to see the full query stack
[RUSTC-TIMING] parking_lot test:false 1.480
 Compiling rustc-hash v2.1.1
[RUSTC-TIMING] rustc_hash test:false 0.125
 Compiling rustc-stable-hash v0.1.2
[RUSTC-TIMING] build_script_build test:false 0.279
---
[RUSTC-TIMING] syn test:false 8.224
error: could not compile `syn` (lib)
Caused by:
 process didn't exit successfully: `/checkout/obj/build/bootstrap/debug/rustc /checkout/obj/build/bootstrap/debug/rustc --crate-name syn --edition=2021 /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-2.0.104/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no --cfg 'feature="clone-impls"' --cfg 'feature="default"' --cfg 'feature="derive"' --cfg 'feature="extra-traits"' --cfg 'feature="fold"' --cfg 'feature="full"' --cfg 'feature="parsing"' --cfg 'feature="printing"' --cfg 'feature="proc-macro"' --cfg 'feature="visit"' --cfg 'feature="visit-mut"' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("clone-impls", "default", "derive", "extra-traits", "fold", "full", "parsing", "printing", "proc-macro", "test", "visit", "visit-mut"))' -C metadata=0d5a78d7873b5792 -C extra-filename=-fb6ab839bcd99ae8 --out-dir /checkout/obj/build/aarch64-unknown-linux-gnu/stage1-rustc/release/deps -L dependency=/checkout/obj/build/aarch64-unknown-linux-gnu/stage1-rustc/release/deps --extern proc_macro2=/checkout/obj/build/aarch64-unknown-linux-gnu/stage1-rustc/release/deps/libproc_macro2-c52a08e3936ca7f7.rmeta --extern quote=/checkout/obj/build/aarch64-unknown-linux-gnu/stage1-rustc/release/deps/libquote-a9b89089cc5c1862.rmeta --extern unicode_ident=/checkout/obj/build/aarch64-unknown-linux-gnu/stage1-rustc/release/deps/libunicode_ident-72cf21332cd62c75.rmeta --cap-lints allow -Z binary-dep-depinfo` (exit status: 101)
warning: build failed, waiting for other jobs to finish...
[RUSTC-TIMING] rustc_hashes test:false 0.114
[RUSTC-TIMING] crossbeam_utils test:false 1.143
[RUSTC-TIMING] linux_raw_sys test:false 1.394
Build completed unsuccessfully in 0:10:05

Copy link
Collaborator

bors commented Aug 6, 2025

☔ The latest upstream changes (presumably #145003) made this pull request unmergeable. Please resolve the merge conflicts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Reviewers
No reviews
Assignees
No one assigned
Labels
A-attributes Area: Attributes (`#[...]`, `#![...]`) A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. perf-regression Performance regression. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue.
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

AltStyle によって変換されたページ (->オリジナル) /