Multiple defining uses of Type Alias Impl Traits

Disclaimer: this blog post comes from some notes I took meanwhile working on an Rust compiler issue and it’s not very polished but I’ve decided to publish it anyway. A bug was reported to the compiler that involves type checking, inference, traits and in particular type alias impl traits (TAIT) with multiple defining uses and some other particular things about them. In this post we are going to explain how the system works as I was investigating this myself in order to fix this issue, what is the issue exactly about and then describe how we’ve solved the issue. [Read More]

Bisecting Rust Compiler Regressions with cargo-bisect-rustc

This article is cross-posted from Inside Rust blog. Let’s say that you’ve just updated the Rust compiler version and have tried to compile your application and see a failure that wasn’t there before. That’s likely due to a regression in the compiler. We’ve just released cargo-bisect-rustc, a tool that makes it super easy to find exactly when the regression happened. cargo-bisect-rustc automatically downloads rustc artifacts and tests them against a project you provide until it finds the regression. [Read More]