GCC has increased in size, scope, and complexity, but the number of maintainers has not scaled commensurately. While there is a need for more reviewers, there also is a concern of too many maintainers stepping on one another and GCC development becoming more chaotic.
After a lot of brain-storming and discussion with current maintainers and after considering many options, the GCC Steering Committee has voted to create a new type of maintainer: non-algorithmic maintainer. A non-algorithmic change is one which maintains an overall algorithm and does not introduce new functionality, but may change implementation details. Non-Algorithmic maintainers can commit and review bug fix patches written by themselves or by other developers, such as patches appropriate for GCC Development Stage 3, and should help general maintainers with recommendations about other patches. In other words, general maintainers effectively are technical architects for their area of the compiler. The term "algorithmic change" is somewhat ambiguous and the SC has decided not to provide a formal definition that could overly-constrain maintainers. This is not a language standard inviting developers to parse words. Instead, any other maintainer with authority over the area unilaterally may revert a patch approved or committed by a non-algorithmic maintainer, if necessary. Hopefully the maintainers would resolve the concern through discussion without having to invoke this provision. Let the experiment begin ... Happy Hacking, David