http://gwt-code-reviews.appspot.com/1513803/diff/1/dev/core/src/com/google/gwt/dev/jjs/impl/CodeSplitter.java File dev/core/src/com/google/gwt/dev/jjs/impl/CodeSplitter.java (left):
http://gwt-code-reviews.appspot.com/1513803/diff/1/dev/core/src/com/google/gwt/dev/jjs/impl/CodeSplitter.java#oldcode623 dev/core/src/com/google/gwt/dev/jjs/impl/CodeSplitter.java:623: private final Map<JField, JClassLiteral> fieldToLiteralOfClass; We don't need this map as we can walk across the fields in ClassLiteralHolder, which TypeOracle can easily give us. http://gwt-code-reviews.appspot.com/1513803/diff/1/dev/core/src/com/google/gwt/dev/jjs/impl/CodeSplitter.java File dev/core/src/com/google/gwt/dev/jjs/impl/CodeSplitter.java (right): http://gwt-code-reviews.appspot.com/1513803/diff/1/dev/core/src/com/google/gwt/dev/jjs/impl/CodeSplitter.java#newcode864 dev/core/src/com/google/gwt/dev/jjs/impl/CodeSplitter.java:864: } Besides fixing up strings, a class literal could end up with it's super class literal being in a different fragment. (If you want details of how this can happen, I have a reproduction.) E.g. foo_2_classLit = createForClass("package", "name", Bar.class); Would fail if bar_2_classLit ended up in a separate fragment. This uses the same fixup logic as used else where to pull out Bar.class and move it to leftovers if it's not in our fragment or not already there. http://gwt-code-reviews.appspot.com/1513803/ -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
