Skip to content

Runaway borrow-check times for tinyvec crate #162

@Byron

Description

@Byron

It can be reproduced with the following script, assuming a nightly compiler is available.

git clone https://github.com/Lokathor/tinyvec
cd tinyvec
git checkout 0e0dc46d37b19d2a350896ed788c84218812b740
cargo +nightly check -Z timings # about 3.5s
mkdir -p .cargo && echo $'[build]\nrustflags = "-Zpolonius"' > .cargo/config.toml
cargo +nightly check -Z timings # about 2m40s

I thought I am posting this here in case it's an interesting use case and maybe even a low-hanging performance issue to resolve. This one stood out as it was the only one out of 114 crates being compiled that showed this kind of worst-case performance. Here is the full timings log.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions