Comments on Patching GCC
Scott Robert Ladd
coyote@coyotegulch.com
Wed Sep 22 18:45:00 GMT 2004
Hello.
I've been working on patches for GCC, both inside the general community
and for specific users.
None of what follows is a criticism; rather, I hope this will be
accepted as an honest commentary on the challenges posed to "GCC patch"
newbies.
Some people find the "contributing" process intimidating, starting with
the requirements for copyright assignments. Many people have unsettled
feelings about legal paperwork, especially when it appears rather
mysterious. I'm not certain how this necessary process could be made
friendlier, especially for those who want to submit one or two patches
specific to their domain.
Once paperwork is in order (mine is), it's difficult to know where to
start. I've picked a few simple code generation bugs, and started
patching those; the choices were semi-random, based on self-interest,
available hardware, and (in one case) a request from a Linux x86_64
distribution maintainer.
It's often difficult to know where to begin work on GCC, especially
after reading comments in bugzilla. Many bugs are in what appears to be
a "dangling" state, where a conversation has ended with an unanswered
question or statement that "this is complicated." Some comment streams
leave me wondering if a bug is actually patched, and in what version.
Many projects, private or free, have a clear process; in the realm of
GCC, it's a sink-or-swim process, where its possible to step on toes you
didn't even know were there... ;) I've chosen the "better to beg
forgiveness than ask permission" approach in some cases.
Once a patch is created and posted to gcc-patches, there comes The Long
Wait. The submitter asks: Was my patch accepted or not? Was it even noticed?
Perhaps we need a way of queuing patches, letting submitters know that
their work is at least being acknowledged. Otherwise, new developers get
disillusioned, and feel like they're lost in the wilderness or forgotten.
I think many people look at the size of the GCC codebase, and run away
before realizing that it really isn't *that* arcane. Documentation for
GCC's internals is imperfect, but is certainly better than what I've
seen for other projects. I'm not a compiler hacker by nature, but have
had little trouble gleaning the basics of GCC's architecture.
Perhaps we need a "patch newbies" mailing list?
Anything we can do to improve the process is likely to be a Good
Thing(tm) for GCC.
..Scott
--
Scott Robert Ladd
site: http://www.coyotegulch.com
blog: http://chaoticcoyote.blogspot.com
More information about the Gcc
mailing list