Richard Kenner kenner@vlsi1.ultra.nyu.edu
Sun Jul 15 13:01:00 GMT 2007

> >You asked if COPYING would be updated.  The answer is not necessarily.
> >The COPYING text may say GPLv2+, but if there has been a GPLv3 patch
> >applied to the branch, then the entire branch is GPLv3.
> I struggle to believe this. Afaik a bunch of code is released under a
> license, and nothing has the power to magically change that license. If
> someone applies a GPLv3 patch to some GPLv2 code and releases the whole
> under the GPLv2, then that person has broken copyright law and the release
> is invalid (because the GPLv3 code has been released without a license),
> but the rest of the GPLv2 code is still GPLv2. Or have I missed something
> here? It sounds to me like the syntactic mischief Microsoft is playing when
> it calls the GPL "viral" (note, I'm not suggesting that you are making
> mischief, just that the implication is similar)!

No, you're correct, but what's meant by "the entire branch is GPLv3" doesn't
mean that somehow the license status of the code changed, but that "the
entire branch can now only be distributed under GPLv3".

> I think this misses a point: FSF is a copyright assignee, and I don't know
> how that relates to "holding", but the person who wrote the patch is free
> to dual-license without reference to the FSF. So as a completely fabricated
> example: say in 6 months Richard Kenner makes a patch to (GPLv3) mainline
> for a bug, and you want that patch to improve a GPLv2 product that you're
> maintaining for one of your customers. You are free to ask Richard to
> release that patch to you under GPLv2, and Richard is free to grant that
> request.

It's actually not that simple.  First of all, under the assignment, I don't
*automatically* have the right to distribute the patch under any license
I choose, but have to request it.  From an ancient version of assign.changes:

    Upon thirty days' prior written notice, the Foundation agrees to grant
    me non-exclusive rights to use the Work (i.e. my changes and
    enhancements, not the program which I enhanced) as I see fit; (and the
    Foundation's rights shall otherwise continue unchanged).

Secondly, the patch is usually not just a standalone entity, but a derived
work from the file that was patched.  I don't have authority to change
*that* license.

More information about the Gcc mailing list