Skip to content

Compilation taking unexpected long after 1.84 #135457

@mrain

Description

I'm building jf-pcs library from https://github.com/EspressoSystems/jellyfish

On rust version 1.83

rust version meta

[$] rustc --version --verbose                                                                                             
rustc 1.83.0 (90b35a623 2024-11-26)
binary: rustc
commit-hash: 90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf
commit-date: 2024-11-26
host: aarch64-apple-darwin
release: 1.83.0
LLVM version: 19.1.1

It only took ~11s to build the library

[$] cargo build -p jf-pcs                                                                                                        
   Compiling proc-macro2 v1.0.86
   Compiling unicode-ident v1.0.12
   ... [excess outputs omitted]
   Compiling jf-utils v0.4.4 (https://github.com/EspressoSystems/jellyfish?tag=0.4.5#7d71dbef)
   Compiling jf-pcs v0.1.0 (/Users/chengyu/espressosys/jellyfish/pcs)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.43s

Now on rust 1.84 the compilation runs almost forever:

rust version meta

rustc 1.84.0 (9fc6b4312 2025-01-07)
binary: rustc
commit-hash: 9fc6b43126469e3858e2fe86cafb4f0fd5068869
commit-date: 2025-01-07
host: aarch64-apple-darwin
release: 1.84.0
LLVM version: 19.1.5

[$] cargo build -p jf-pcs                                                                                                  
   Compiling proc-macro2 v1.0.86
   Compiling unicode-ident v1.0.12
   ... [excess outputs omitted]
   Compiling jf-utils v0.4.4 (https://github.com/EspressoSystems/jellyfish?tag=0.4.5#7d71dbef)
   Compiling jf-pcs v0.1.0 (/Users/chengyu/espressosys/jellyfish/pcs)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 26m 43s

Suspect that this is due to the new trait solver.

Metadata

Assignees

Labels

C-bugCategory: This is a bug.I-compiletimeIssue: Problems and improvements with respect to compile times.P-highHigh priorityS-has-bisectionStatus: a bisection has been found for this issueS-has-mcveStatus: A Minimal Complete and Verifiable Example has been found for this issueT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-typesRelevant to the types team, which will review and decide on the PR/issue.WG-trait-system-refactorThe Rustc Trait System Refactor Initiative (-Znext-solver)regression-from-stable-to-stablePerformance or correctness regression from one stable version to another.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions