http://gwt-code-reviews.appspot.com/1442802/diff/1/dev/core/src/com/google/gwt/dev/jjs/impl/GwtAstBuilder.java
File dev/core/src/com/google/gwt/dev/jjs/impl/GwtAstBuilder.java
(right):

http://gwt-code-reviews.appspot.com/1442802/diff/1/dev/core/src/com/google/gwt/dev/jjs/impl/GwtAstBuilder.java#newcode251
dev/core/src/com/google/gwt/dev/jjs/impl/GwtAstBuilder.java:251: assert
ident.startsWith("@null::");
They were never ignored.  Sorry for how subtle this is, I had to dig
myself to refresh.  If you go look at JsniRefLookup.findJsniRefTarget(),
you'll see that nullMethod/nullField are explicitly handled there.
GenerateJavaAST uses JsniRefLookup, so that's how it handles refs to
nullMethod/nullField.

But GwtAstBuilder doesn't use JsniRefLookup (it doesn't have a
JProgram), instead it relies on data extracted from JsniChecker, which
does a lot of the same things as JsniRefLookup.  My "Remove
JProgram.jsniMap in favor of local accounting." change essentially broke
null:: refs here (not that it matters, because this code isn't live
yet).  So I needed to add them back, but since I don't have a JProgram
here, I needed to turn the null method and field into singleton objects
so I can access them.

http://gwt-code-reviews.appspot.com/1442802/

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors

Reply via email to