the problem is that Sun/Oracles patent license only covers implementations that passed TCK.
Conversely, by not passing TCK you don't get their patent license. Many of the patents in question are difficult (if even possible) to work around if you were to create your alternate implementation.
This means that using any non TCK implementation of Java makes you liable for patent lawsuits (as seen with the Google case).
> Ah, so anyone using GCJ in a product could
> be sued the same way Google was sued. I
> didn't know that.
this is exactly the point. And this might also be (one of) the reason(s) why Google PR is calling the suit against them a suit against Open Source in itself.
Well, not being VM based it should be free of some or all of the patents used by Oracle in that part of its lawsuit against Dalvik, but that doesn't mean that it wouldn't be otherwise vulnerable.
No. Only features that don't infringe additional patents can be added by the community. If Oracle owns patents covering a particular Java 7 feature, but never releases any GPL code implementing that feature, then the OpenJDK community cannot implement that feature.
Releasing code under the GPL does not give the open source community carte blanche access to all your future patents, perhaps unless those patents are necessarily infringed by the original GPL release.
Indeed. The GPL protection only covers OpenJDK as it is released now. However, Oracle would have to tailor the features in JDK 7 as to be under patents they own or licensed, but that are not used in OpenJDK.
And the OpenJDK folks can always implement around those patents.
Conversely, by not passing TCK you don't get their patent license. Many of the patents in question are difficult (if even possible) to work around if you were to create your alternate implementation.
This means that using any non TCK implementation of Java makes you liable for patent lawsuits (as seen with the Google case).