)]}'
{
  "commit": "e5dc19bc9845b0302fd59dc25390db564d5ccec9",
  "tree": "3a7071f98562e1b5ce0047698187fc9b5892a14f",
  "parents": [
    "8e093b9ea9062894df0798cbacf357c94960fc62"
  ],
  "author": {
    "name": "Søren Gjesse",
    "email": "sgjesse@google.com",
    "time": "Fri Nov 08 15:03:13 2019 +0100"
  },
  "committer": {
    "name": "Søren Gjesse",
    "email": "sgjesse@google.com",
    "time": "Mon Nov 11 10:19:39 2019 +0000"
  },
  "message": "Consider all implemented interfaces when removing unused arguments\n\nTo ensure that it is possible to remove unused arguments for a virtual\nmethod all overriding methods are considered both above and below in the\nhierachy. This check was missing interfaces which could be implemented\non classes below in the hierachy.\n\nThis is conservative, as it is not checked if a given method is\nactually the only implementation of an interface method.\n\nBug: 143934502\nChange-Id: Ie02f66544b4d437e41e67f6c7a85087206dda9a7\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3b1284d8609e7e1364e8b00723127ea73e8cc65b",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/ir/optimize/MemberPoolCollection.java",
      "new_id": "8b74c30a229c78124ed5acea5bf78aa9767b94f4",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/ir/optimize/MemberPoolCollection.java"
    },
    {
      "type": "modify",
      "old_id": "25c2a614b096ef8eeda439677146d8b085590c3a",
      "old_mode": 33188,
      "old_path": "src/test/java/com/android/tools/r8/ir/optimize/unusedarguments/UnusedArgumentsInMethodThatImplementsInterfaceMethodOnSubTest.java",
      "new_id": "9001472a0fe5433e4c817a3711c9ec40eba2ce41",
      "new_mode": 33188,
      "new_path": "src/test/java/com/android/tools/r8/ir/optimize/unusedarguments/UnusedArgumentsInMethodThatImplementsInterfaceMethodOnSubTest.java"
    }
  ]
}
