1. Introduction
Rust is a young programming language known for its safety, concurrency, and performance [18]. It relies on its compilers to translate Rust code into efficient machine code. However, like any complex software system, Rust compilers are not immune to bugs. These bugs may introduce critical errors and impact the correctness and reliability of the compiled programs. Identifying and diagnosing bugs in Rust compilers is an important but challenging task. Rust compilers consist of multiple components and complex algorithms for parsing, semantic analysis, optimization, and code generation. The language itself prioritizes safety and reliability through features like ownership, borrowing, and strict static typing. While these features reduce the likelihood of bugs, when they do occur, they often manifest as subtle behavioral differences or unexpected output, making them difficult to identify. Moreover, the translation of high-level code to machine code introduces additional complexities and potential bug opportunities. These bugs may not have an evident source in the original code, making it harder to pinpoint their origin. As a result, locating and fixing bugs in Rust compilers poses challenges for developers and maintainers. Thus, it is crucial to understand these bugs as it enables efficient bug detection and resolution. This understanding instills confidence in using Rust as a programming language, knowing that efforts are made to minimize risks associated with compiler bugs. The insights gained from studying these bugs may also provide inspiration for researchers in the field of programming languages.