http://gwt-code-reviews.appspot.com/1464804/diff/4001/dev/core/src/com/google/gwt/dev/javac/MemoryUnitCache.java File dev/core/src/com/google/gwt/dev/javac/MemoryUnitCache.java (right):
http://gwt-code-reviews.appspot.com/1464804/diff/4001/dev/core/src/com/google/gwt/dev/javac/MemoryUnitCache.java#newcode108 dev/core/src/com/google/gwt/dev/javac/MemoryUnitCache.java:108: public void addArchivedUnit(CompilationUnit newUnit) { Since this method is only ever called from CompilationStateBuilder.addArchive(), wouldn't that method be even more centrally located? And in that case, since it will be iterating through a list of units, all from the same archive (which will presumably all have the same serialization version), it should be able to exit more quickly the first time it finds a version mismatch, rather than having to iterate through all the units and check each one individually.... http://gwt-code-reviews.appspot.com/1464804/diff/4001/dev/core/src/com/google/gwt/dev/javac/MemoryUnitCache.java#newcode109 dev/core/src/com/google/gwt/dev/javac/MemoryUnitCache.java:109: if (((CachedCompilationUnit) newUnit).getTypesSerializedVersion() != GwtAstBuilder This issue goes away if we move this back to CSB.addArchive(). http://gwt-code-reviews.appspot.com/1464804/ -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
