A big ‘ol pile of ICE.
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, on Travis. If any of the ICEs stop happening, the build will fail, and I can close the associated bug.
Contributing to Glacier is fairly easy:
- Check out this list of bugs on the Rust issue tracker.
- Pick one.
- Create a file in
src/
with the same digit as the bug. (like this) - Copy the code that causes the ICE into your new file. (like this)
- (optional) Verify it works by running
./test.sh
to run the tests. - Send a pull request! (like this)
MIT/Apache2, just like Rust.