There are many responses already, but the GNU Compiler Collection having higher standards for accepting patches than most other open-source projects and legal reasons have been the two most populous answers. Contributing to GCC requires filing a disclaimer that you assign the copyright to the Free Software Foundation. For developers employed by organizations, this disclaimer is often problematic and can take significant amounts of time before it's cleared by various legal departments, here is a good message in regards to that situation as even at least one developer at Stanford has been turned off by the situation.
Some of the complaints have been about the quality of the code within the free software world being absolutely appalling with different formatting techniques, few code comments, a lack of documentation, and other shortcomings when mostly unpaid developers from around the world all diverge on a single code-base. GCC on the other hand tends to have a higher standard with regard to code quality and documentation with requiring patches comply with the GNU style.
Other expressed barriers in participation have included spoken language difficulties, lack of time, GCC being bloated and crufty, and availability of hardware/architectures in testing patches. It's an interesting read with the different perspectives on the matter, which can be followed via this web thread. The discussion is still ongoing.
More generally than just GCC, why don't you participate in open-source projects that interest you? Or, on the other hand, what are your main motives for participating in such projects? Tell us in the forums.