To include GCC 15 a series of patches with an improvement in the RUST Language in the GCCRS front (. The most noticeable change was the support of checking variables (Borrow Checker), implemented on the basis of the component polonius , developed by the main team of Rust developers as the next generation of Borrow Checker.
The proposed implementation of the Borrow Checker is different in that it is written in Rust and provides advanced code verification capabilities that allow in some cases to be considered safe (SAFE) code, which has so far required the mark of the keyword of UNSAFE due to restrictions on the default implementation of Borrow Checker. The solution prepared for the GCC has a restriction:
- For Polonius, situations are known in which some code actually existing in projects leads to exponential growth in the complexity of the analysis.
- in the case of GCC to complete the phase initial Promotions (Bootstrapping) GCCRS compiler currently required a RUST compiler (this restriction will be eliminated in the future).
The full implementation of self-sufficient assembly involves a 2 -step promotion, in which the GCCs will first collect GCCRS without Borrow Checker, and then collect the mentioned implementation of the Borrow Checker, written in the RUST language, using the cutting out version of the compile and considering the code as conditional (i.e. borrowing). After the assembly of the Borrow Checker, another compiler of the compiler will be completed, but already with the performance of borrowing checks.