)]}'
{
  "commit": "e27aa4fef1a5e79ca8caa433e86945f808452fa0",
  "tree": "ac265b80864f271c183bebcce24679a077eb7fb5",
  "parents": [
    "dccf9b1b71d8f3d7419b35c70a27140f57d481a6"
  ],
  "author": {
    "name": "Mitch Rudominer",
    "email": "rudominer@chromium.org",
    "time": "Thu Dec 10 16:00:12 2015 -0800"
  },
  "committer": {
    "name": "Mitch Rudominer",
    "email": "rudominer@chromium.org",
    "time": "Thu Dec 10 16:00:12 2015 -0800"
  },
  "message": "New Mojom parser: Don\u0027t allow enum variables to be assigned int values.\n\nThus far the new Mojom parser has allowed variables of enum type to be assigned integer values. This used to be allowed in .mojom files but that was changed a few months back and the new parser never picked up that change. This patch corrects that.\n\n- Because IsAssignmentCompatible() now returns false in the case of assigning an int to an enum, it is necessary to not use IsAssignmentCompatible() in the case that a user-defined constant that resolves to an int is being used as an enum value initializer (because that is allowed). That explains the reorganization in UserValueRef.validateAfterResolution().\n\n- We changed how assignments of literals to user-defined-types is handled. Previously we did some validation during parsing (for example we would check that the literal was not of type float) but left other validation for the later validation phase. We now due all validation during the later validation phase.\n\nBUG\u003d#46\nR\u003dazani@chromium.org\n\nReview URL: https://codereview.chromium.org/1514173002 .\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "89b3f292a5f6a70158ae047022c71f34b5638669",
      "old_mode": 33188,
      "old_path": "mojom/mojom_parser/mojom/types.go",
      "new_id": "7df37013dfc2887aee10e38810f2dce9e82d93ff",
      "new_mode": 33188,
      "new_path": "mojom/mojom_parser/mojom/types.go"
    },
    {
      "type": "modify",
      "old_id": "8853be5588807c09e988aee8c055e5e1346c3806",
      "old_mode": 33188,
      "old_path": "mojom/mojom_parser/mojom/types_test.go",
      "new_id": "92e4eb3b62f483924e8d41be24ba472b84977569",
      "new_mode": 33188,
      "new_path": "mojom/mojom_parser/mojom/types_test.go"
    },
    {
      "type": "modify",
      "old_id": "c701e01f06b9a85638c9745b75cda712102268e3",
      "old_mode": 33188,
      "old_path": "mojom/mojom_parser/mojom/user_defined_types.go",
      "new_id": "1bacd006c7ba5aff2040b166bbda2f18ed0f79f2",
      "new_mode": 33188,
      "new_path": "mojom/mojom_parser/mojom/user_defined_types.go"
    },
    {
      "type": "modify",
      "old_id": "8cacc1f10131bf5adc2d38db1601265b495e6cae",
      "old_mode": 33188,
      "old_path": "mojom/mojom_parser/mojom/user_defined_types_test.go",
      "new_id": "b0b83a409c968b7e7f4048d83875acf6c42344ee",
      "new_mode": 33188,
      "new_path": "mojom/mojom_parser/mojom/user_defined_types_test.go"
    },
    {
      "type": "modify",
      "old_id": "d07f42688b656598dc9bd353ed3ab93898ddc2c0",
      "old_mode": 33188,
      "old_path": "mojom/mojom_parser/parser/parser_test.go",
      "new_id": "1a7d028e56a3a87987f44831dfe545826cd2c5dc",
      "new_mode": 33188,
      "new_path": "mojom/mojom_parser/parser/parser_test.go"
    },
    {
      "type": "modify",
      "old_id": "57c0cb92e2e380f50e6326c5cebc6285c42d050a",
      "old_mode": 33188,
      "old_path": "mojom/mojom_parser/parser/resolution_test.go",
      "new_id": "1025231f632d1f7a4088ba91d9d68518bf98e877",
      "new_mode": 33188,
      "new_path": "mojom/mojom_parser/parser/resolution_test.go"
    }
  ]
}
