Mostly LGTM w/ comments.
http://gwt-code-reviews.appspot.com/1441803/diff/4001/dev/core/src/com/google/gwt/dev/javac/CompilationStateBuilder.java File dev/core/src/com/google/gwt/dev/javac/CompilationStateBuilder.java (right): http://gwt-code-reviews.appspot.com/1441803/diff/4001/dev/core/src/com/google/gwt/dev/javac/CompilationStateBuilder.java#newcode407 dev/core/src/com/google/gwt/dev/javac/CompilationStateBuilder.java:407: } How important is this part, performance wise? Seems like it would simplify things a bit to leave CCU immutable and not update the location/modified. If it is important, instead of two different setters, a single update(location, lastModified) would be nicer semantically. http://gwt-code-reviews.appspot.com/1441803/diff/4001/dev/core/src/com/google/gwt/dev/javac/CompilationUnit.java File dev/core/src/com/google/gwt/dev/javac/CompilationUnit.java (right): http://gwt-code-reviews.appspot.com/1441803/diff/4001/dev/core/src/com/google/gwt/dev/javac/CompilationUnit.java#newcode215 dev/core/src/com/google/gwt/dev/javac/CompilationUnit.java:215: public abstract CachedCompilationUnit asCachedCompilationUnit(); With this, should make writeReplace() final and concrete, methinks. http://gwt-code-reviews.appspot.com/1441803/ -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
