Roberto Lublinerman has posted comments on this change.

Change subject: Fix non-final field initializers running before the super cstr.
......................................................................


Patch Set 4:

The typeMarker$ field gets overwritten with null and those everything breaks as it is assumed to be pointing to nullmethod().

After fixing that the serialization error disappears but a bunch of test cases start failing.

@Stephen, do you want to take over again?

My fix was to replace the if in endVisit(JField) (code below) but I am not sure if there is any other special field that we should be taking care of.

      if (x.getLiteralInitializer() != null) {
        if (x.isFinal()) {
          // setup the constant value
          accept(x.getLiteralInitializer());
        } else {
          // setup the default value, see Issue 380
          accept(x.getLiteralInitializer().getType().getDefaultValue());
        }
      } else if (x == program.getIndexedField("Object.typeMarker")) {
        // Special fields whose initialization is done somewhere else.
        push(null);
      } else {
        // setup a default value
        accept(x.getType().getDefaultValue());
      }

--
To view, visit https://gwt-review.googlesource.com/3030
To unsubscribe, visit https://gwt-review.googlesource.com/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I4c8ed0cd718a2188b33cc290fec6071c89be7918
Gerrit-PatchSet: 4
Gerrit-Project: gwt
Gerrit-Branch: master
Gerrit-Owner: Stephen Haberman <[email protected]>
Gerrit-Reviewer: Leeroy Jenkins <[email protected]>
Gerrit-Reviewer: Matthew Dempsky <[email protected]>
Gerrit-Reviewer: Ray Cromwell <[email protected]>
Gerrit-Reviewer: Roberto Lublinerman <[email protected]>
Gerrit-Reviewer: Stephen Haberman <[email protected]>
Gerrit-HasComments: No

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors
--- You received this message because you are subscribed to the Google Groups "GWT Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to