)]}'
{
  "commit": "66f7684888ade07118dda390d8077fd50dd0dcf2",
  "tree": "181d634943dbadd742e704f17f59dbf2b6d00af0",
  "parents": [
    "7890325af638a90baa7607a5a1d629d07c9efdcb"
  ],
  "author": {
    "name": "cromwellian@google.com",
    "email": "cromwellian@google.com@8db76d5a-ed1c-0410-87a9-c151d255dfc7",
    "time": "Mon Dec 06 19:39:40 2010 +0000"
  },
  "committer": {
    "name": "cromwellian@google.com",
    "email": "cromwellian@google.com@8db76d5a-ed1c-0410-87a9-c151d255dfc7",
    "time": "Mon Dec 06 19:39:40 2010 +0000"
  },
  "message": "Partial fix for http://code.google.com/p/google-web-toolkit/issues/detail?id\u003d5707\n\nModify JsInliner to avoid propagating expressions incorrectly.\n\nin EvaluationOrderVisitor, two changes were made. First of all, a clinit() call\nis treated as violating order, the same as any other invocation.\n\nSecondly, a JsNameRef that can be affected by side effects (a global, non-param,\nnon-local) that is visited when there are still expressions that need evaluation\nfirst, is treated as violating order.\n\nThis fixes the showcase issue, but is still insufficient. Side-effect inducing\nexpressions (assignment, post/prefix increment ops) are still not handled. The\nexemption of JsNameRefs that are locals is also insufficient, since a side\neffect inducing parameter value may be aliased to the same object as this local.\nAfter your review, I may remove it and just ban any non-param reference from\noccuring while there are still params to be evaluated.\n\nI tested this and it seems to fix the problem.\n\nReview by: scottb@google.com\n\ngit-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@9362 8db76d5a-ed1c-0410-87a9-c151d255dfc7\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "24697629e95c457a253f68697ff4b724440cb2f6",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/dev/js/JsInliner.java",
      "new_id": "0c414e60b168ec2f46246cf7f1e229d502db4769",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/dev/js/JsInliner.java"
    },
    {
      "type": "modify",
      "old_id": "cb1f37b9a2bcf15d83220066b66ff5568870a6a7",
      "old_mode": 33188,
      "old_path": "dev/core/test/com/google/gwt/dev/js/JsInlinerTest.java",
      "new_id": "108a87d9fc8e9563bb7058346faaebe47de79acb",
      "new_mode": 33188,
      "new_path": "dev/core/test/com/google/gwt/dev/js/JsInlinerTest.java"
    }
  ]
}
