rust-lang/glacier

A big 'ol pile of ICE.

288

stars

2,710

commits

Rust

primary language

May 12, 2024

updated

README

Glacier

A big ‘ol pile of ICE.

Build Status

This repository is used to test internal compiler errors (also known as ICEs) in Rust. An ICE means that something went wrong, something unexpected. As such, sometimes, ICEs get randomly fixed. A compiler refactoring will remove the odd code path, even if the point of the change wasn’t to fix the bug.

As such, this repository is a collection of these bugs, and it runs on Rust nightly, once a day, through GitHub Actions. If any of the ICEs stop happening, the build will fail, and we can close the associated bug.

Helping out

Contributing to Glacier is fairly easy:

  1. Check out this list of bugs on the Rust issue tracker.
  2. Pick one.
  3. Create a file in ices/ with the same number as the issue reporting the ICE.
  4. Copy the code that causes the ICE into your new file.
  5. (optional) Verify it works by running rustup update nightly, then cargo run $ISSUE_NUMBER to run your ICE.
  6. Send a pull request!

Note: Running this on Windows may give false positives and report some ICEs as fixed, use either WSL or Linux for better accuracy.

License

MIT/Apache2, just like Rust.

Contributors

(top 30 of 51)

rustbot

799 commits

JohnTitor

647 commits

Alexendoo

598 commits

steveklabnik

172 commits

rust-lang/glacier

A big 'ol pile of ICE.

288

stars

2,710

commits

Rust

primary language

May 12, 2024

updated

README

Glacier

A big ‘ol pile of ICE.

Build Status

This repository is used to test internal compiler errors (also known as ICEs) in Rust. An ICE means that something went wrong, something unexpected. As such, sometimes, ICEs get randomly fixed. A compiler refactoring will remove the odd code path, even if the point of the change wasn’t to fix the bug.

As such, this repository is a collection of these bugs, and it runs on Rust nightly, once a day, through GitHub Actions. If any of the ICEs stop happening, the build will fail, and we can close the associated bug.

Helping out

Contributing to Glacier is fairly easy:

  1. Check out this list of bugs on the Rust issue tracker.
  2. Pick one.
  3. Create a file in ices/ with the same number as the issue reporting the ICE.
  4. Copy the code that causes the ICE into your new file.
  5. (optional) Verify it works by running rustup update nightly, then cargo run $ISSUE_NUMBER to run your ICE.
  6. Send a pull request!

Note: Running this on Windows may give false positives and report some ICEs as fixed, use either WSL or Linux for better accuracy.

License

MIT/Apache2, just like Rust.

Contributors

(top 30 of 51)

rustbot

799 commits

JohnTitor

647 commits

Alexendoo

598 commits

steveklabnik

172 commits

Languages

Rust

73.6%

Shell

26.4%