please review 7122061: enable -Werror in various jdk build steps

Stuart Marks stuart.marks at oracle.com
Wed Dec 21 02:28:52 UTC 2011


On 12/16/11 2:39 AM, Chris Hegarty wrote:
> On 12/16/11 09:57 AM, Alan Bateman wrote:
>> Stuart - the changes look okay to me but it would be good to get
>> confirmation that you've done both full and partial builds with these
>> changes. Also I think we need confirmation that incremental builds in
>> each of these areas isn't impacted. My concern is implicit compilation
>> where compiling code in warning free areas may compile code in areas
>> that are not warning free yet. Sasha did great work over the summer and
>> part of his approach was to make warnings fatal in the errors that he
>> cleaned up. On a couple of occasions we ran into issues where implicit
>> compilation caused code in areas with warnings to be compiled. Such
>> issues are usually quick to fix but I'm sure you get my concern.
>
> I agree with Alan here, we need to be careful that incremental/partial builds
> are still ok. We found some issues relating to this in the networking area
> recently.

OK, I was unaware of the issues with implicit compilation. I've been doing full 
builds (well, just the jdk repo, not the full forest), and my assumption has 
been that it's safe to enable -Werror for any run of javac that had no errors 
during the full build. Indeed, with the -Werror patch applied, a full build 
still succeeds.

Given implicit compilation I can see that a particular run of javac with 
-Werror might end up compiling additional source files that haven't been 
cleared of warnings, resulting in an error. As I understand implicit 
compilation (admittedly I don't understand it very well) anything in the source 
path can be compiled implicitly. From my build logs it looks like -sourcepath 
is provided with essentially all of the source files in the repo. So it looks 
like potentially anything can be implicitly compiled.

My question is, how can we test for this?  Aren't there an astronomically large 
number of incremental or partial builds possible?

If there are specific cases that occur often that you think I should test, I'd 
be glad to do so, but otherwise I'm not sure how to proceed.

s'marks



More information about the build-dev mailing list