Skip to content
This repository has been archived by the owner on May 23, 2024. It is now read-only.

Latest commit

 

History

History
37 lines (25 loc) · 1.47 KB

README.md

File metadata and controls

37 lines (25 loc) · 1.47 KB

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.