Pending Character-related work - Character-warnings

Kelly O'Hair kelly.ohair at oracle.com
Thu Jul 1 16:13:12 UTC 2010


On Jul 1, 2010, at 7:56 AM, Jonathan Gibbons wrote:

> On 07/01/2010 01:32 AM, Ulf Zibis wrote:
>> Am 01.07.2010 09:38, schrieb Martin Buchholz:
>>> On Wed, Jun 30, 2010 at 23:49, Ulf Zibis<Ulf.Zibis at gmx.de>  wrote:
>>>> Am 30.06.2010 19:50, schrieb Martin Buchholz:
>>>>> On Wed, Jun 30, 2010 at 01:22, Ulf Zibis<Ulf.Zibis at gmx.de>     
>>>>> wrote:
>>>>>
>>>>>> Am 29.06.2010 02:29, schrieb Martin Buchholz:
>>>>>>> I tried to do that, but Character.java is one of those classes
>>>>>>> that needs to be compilable by the bootstrap JDK,
>>>>>>> so this change ist leider nicht moeglich.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>> I think, there should be a note about this in the sources of  
>>>>>> those
>>>>>> classes.
>>>>>>
>>>>> Such a note is likely to become obsolete soon.
>>>>>
>>>> How do you mean that? Will the build procedure change soon. Then  
>>>> it would be
>>>> anyway appropriate to update to new "style".
>>> In jdk8, the bootstrap jdk will be at least jdk7.
>>
>> It would make me wonder if there wont come new language extensions.
>> I was thinking about a comment (in all bootstrap compiled classes)  
>> which couldn't become obsolete like:
>> "Don't use latest language extensions in this class. It's one of  
>> those which must be compilable by the bootstrap JDK while building  
>> this JDK. Add @suppressWarnings if appropriate."
>>
>> Anyway, couldn't we use the latest existing JDK-7 build for  
>> bootstrap? Then we could update the sources 2 weeks later.
>> ... or use 2 versions for bootstrap and library as said before.
>>
>> -Ulf
>>
>>
>
> Ulf,
>
> I suggest you go read blogs by Kelly (http://blogs.sun.com/kto/) and  
> myself (http://blogs.sun.com/jjg/) on the process of building the  
> JDK. The boot JDK is always the latest available FCS product (i.e  
> JDK 6 for JDK 7), but the first thing done in the build is to build  
> a hybrid javac that runs on the boot JDK and which understands the  
> latest language.  Therefore, with the exception of javac and related  
> tools that are used during the bootstrap (e.g. javah) most of the  
> JDK, and all the code in the jdk/ repo can be built with the latest  
> language features.
>
> There may however be historical reasons why some classes still get  
> special treatment; those would need to be examined on a case by case  
> basis.
>

I think some of the source generation tools may require a 'dumbing  
down' of the source, I forget the exact details.

The jdk/make/tools/src tools are supposed to be built with the BOOT  
jdk (jdk6), and in general are small utility tools
that need to be run before the jdk7 image exists, but are not  
technically part of the jdk7 image.
So like langtools, they need to be BOOT jdk flavored sources, or have  
a way to run with a BOOT jdk.

-kto

> -- Jon
>




More information about the build-dev mailing list