)]}'
{
  "commit": "fcda15ef67d79bfb4970baeade76b5fb0b2f6cf2",
  "tree": "67faafa0158f7317be7b775b3466982a6f9afedd",
  "parents": [
    "a34fa0ecb7556cf98c04753c89f5d980bb6c467c"
  ],
  "author": {
    "name": "Ben Clayton",
    "email": "bclayton@google.com",
    "time": "Mon May 10 18:01:51 2021 +0000"
  },
  "committer": {
    "name": "Commit Bot service account",
    "email": "commit-bot@chromium.org",
    "time": "Mon May 10 18:01:51 2021 +0000"
  },
  "message": "Move storage_class validation from wgsl to resolver\n\nWe don\u0027t want the WGSL parser to have to maintain type lookups.\nIf the WGSL language is updated to allow module-scope variables to be declared in any order, then the single-pass approach is going to fail horribly.\n\nInstead do the check in the Resovler.\nWith this change, the AST nodes actually contain the correctly declared storage class.\n\nFix up the SPIR-V reader to generate StorageClass::kNone for handle types.\nFix all tests.\n\nBug: tint:724\nChange-Id: I102e30c9bbef32de40e123c2676ea9a281dee74d\nReviewed-on: https://dawn-review.googlesource.com/c/tint/+/50306\nCommit-Queue: Ben Clayton \u003cbclayton@google.com\u003e\nReviewed-by: Antonio Maiorano \u003camaiorano@google.com\u003e\nReviewed-by: James Price \u003cjrprice@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3ff61565af5bb98fc48cd3bdbd6e6d450db9d6ea",
      "old_mode": 33188,
      "old_path": "src/ast/intrinsic_texture_helper_test.cc",
      "new_id": "8837ecd24745766a3ad933d9a1ae3f314992f84b",
      "new_mode": 33188,
      "new_path": "src/ast/intrinsic_texture_helper_test.cc"
    },
    {
      "type": "modify",
      "old_id": "13aa6963d0207bc2c7283ec67f6e0967106b98f5",
      "old_mode": 33188,
      "old_path": "src/ast/storage_class.cc",
      "new_id": "62e29a46856bc4c96a4d361242fb1ef981eb769b",
      "new_mode": 33188,
      "new_path": "src/ast/storage_class.cc"
    },
    {
      "type": "modify",
      "old_id": "a6e5983a7a0f468ca8d07d8a32c2ac8db1b53702",
      "old_mode": 33188,
      "old_path": "src/ast/storage_class.h",
      "new_id": "8a5cace355d679f0cbd3c070adec9165923b3211",
      "new_mode": 33188,
      "new_path": "src/ast/storage_class.h"
    },
    {
      "type": "modify",
      "old_id": "0d120138249eb2f90f3c9e9eb5d68fa81563b272",
      "old_mode": 33188,
      "old_path": "src/inspector/inspector_test.cc",
      "new_id": "e5589c8850f17c0f3c1ea9896ca1e397e4ed566f",
      "new_mode": 33188,
      "new_path": "src/inspector/inspector_test.cc"
    },
    {
      "type": "modify",
      "old_id": "2a782485fd1c0925bb269464dd73797cf3229992",
      "old_mode": 33188,
      "old_path": "src/reader/spirv/enum_converter.cc",
      "new_id": "cfcad1b9aa3e7cb1bba1cb2c63fd43be26ad6e77",
      "new_mode": 33188,
      "new_path": "src/reader/spirv/enum_converter.cc"
    },
    {
      "type": "modify",
      "old_id": "7cb09325b38e8918de47f6a373152fe889e477fb",
      "old_mode": 33188,
      "old_path": "src/reader/spirv/enum_converter_test.cc",
      "new_id": "d19054ea97f8ef20bcdcdfa4f8b4e7dd0da12689",
      "new_mode": 33188,
      "new_path": "src/reader/spirv/enum_converter_test.cc"
    },
    {
      "type": "modify",
      "old_id": "e9c15c91300e4bb3a8a5534ed59207ba2aea1fe6",
      "old_mode": 33188,
      "old_path": "src/reader/spirv/function.cc",
      "new_id": "1428e7aa0b197a4ec75997ed0b8f40f25be847e2",
      "new_mode": 33188,
      "new_path": "src/reader/spirv/function.cc"
    },
    {
      "type": "modify",
      "old_id": "06878cf31032fc7b59ca55d08ebdc002aa9aab60",
      "old_mode": 33188,
      "old_path": "src/reader/spirv/parser_impl.cc",
      "new_id": "b1392a0d6eb3f5a07bca4752dece364c928bd186",
      "new_mode": 33188,
      "new_path": "src/reader/spirv/parser_impl.cc"
    },
    {
      "type": "modify",
      "old_id": "3b32374947d3e8983d1cda84e6abcb1b2c6b0be3",
      "old_mode": 33188,
      "old_path": "src/reader/spirv/parser_impl_convert_type_test.cc",
      "new_id": "ea46b0ffb54edff829e2f3e3ff606ee10c4f68f9",
      "new_mode": 33188,
      "new_path": "src/reader/spirv/parser_impl_convert_type_test.cc"
    },
    {
      "type": "modify",
      "old_id": "3ea562a3a5a17789f47348620f1ba83aa92051c7",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl.cc",
      "new_id": "9aba063c93da5fdde19e529962f2b47ab921ac39",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl.cc"
    },
    {
      "type": "modify",
      "old_id": "b56f6fe8eeb30849ce9a9af04c17c42eeccdf1ee",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_error_msg_test.cc",
      "new_id": "c9c7c833d06c45e611a2af491aa378d0d3eef818",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_error_msg_test.cc"
    },
    {
      "type": "modify",
      "old_id": "cb469a7becbe88b50a9bd7c82882616fae0779b7",
      "old_mode": 33188,
      "old_path": "src/reader/wgsl/parser_impl_global_variable_decl_test.cc",
      "new_id": "7887b02e2c5cc67abb2c9b9f2c86011241673ffe",
      "new_mode": 33188,
      "new_path": "src/reader/wgsl/parser_impl_global_variable_decl_test.cc"
    },
    {
      "type": "modify",
      "old_id": "52782a1ff33562362327597b76bb427baf84cd40",
      "old_mode": 33188,
      "old_path": "src/resolver/assignment_validation_test.cc",
      "new_id": "f469a065800849a5273120c7229da61dd640bccf",
      "new_mode": 33188,
      "new_path": "src/resolver/assignment_validation_test.cc"
    },
    {
      "type": "modify",
      "old_id": "876fa1d4d162d1f2b5a1c5da365ff355962cfa43",
      "old_mode": 33188,
      "old_path": "src/resolver/intrinsic_test.cc",
      "new_id": "58811f6fbef213ea48ed8de75f490309e6eb6a2c",
      "new_mode": 33188,
      "new_path": "src/resolver/intrinsic_test.cc"
    },
    {
      "type": "modify",
      "old_id": "3e863c6167c4a1baca13893626c6404587a4fd6f",
      "old_mode": 33188,
      "old_path": "src/resolver/resolver.cc",
      "new_id": "8f4007626b8bd63ccd575fa1b9624ffb6a69ebee",
      "new_mode": 33188,
      "new_path": "src/resolver/resolver.cc"
    },
    {
      "type": "modify",
      "old_id": "378927bc794d2293c9a4222730c5e4dd80fbbffe",
      "old_mode": 33188,
      "old_path": "src/resolver/resolver.h",
      "new_id": "c537eae1a501bdc61e0d0ba6b727f8ca105b8b8d",
      "new_mode": 33188,
      "new_path": "src/resolver/resolver.h"
    },
    {
      "type": "modify",
      "old_id": "fe8d22194609b9a1b0cc58814d3d5f51cc2cc00e",
      "old_mode": 33188,
      "old_path": "src/resolver/resolver_test.cc",
      "new_id": "323434812f078819cc0973f41cd681cd3fddab48",
      "new_mode": 33188,
      "new_path": "src/resolver/resolver_test.cc"
    },
    {
      "type": "modify",
      "old_id": "b5dfcc1ea77815dd3f5c3b33a7a34453bc8acbf3",
      "old_mode": 33188,
      "old_path": "src/resolver/type_validation_test.cc",
      "new_id": "f67192504bc0f88b03d845025103de0d9b922a32",
      "new_mode": 33188,
      "new_path": "src/resolver/type_validation_test.cc"
    },
    {
      "type": "modify",
      "old_id": "7889f8d5884c697176849747c539933c32b2e072",
      "old_mode": 33188,
      "old_path": "src/resolver/validation_test.cc",
      "new_id": "ba3dde3d3c248f1388bf207c465448553191a807",
      "new_mode": 33188,
      "new_path": "src/resolver/validation_test.cc"
    },
    {
      "type": "modify",
      "old_id": "0905be086a8e8bf20fa77b9f2c17176159ac99b8",
      "old_mode": 33188,
      "old_path": "src/writer/hlsl/generator_impl_type_test.cc",
      "new_id": "6354625bd68af7a1707ca01ebe34bfa979e88027",
      "new_mode": 33188,
      "new_path": "src/writer/hlsl/generator_impl_type_test.cc"
    },
    {
      "type": "modify",
      "old_id": "a726ff7b76205a61164db93c361154d5a03c70f8",
      "old_mode": 33188,
      "old_path": "src/writer/msl/generator_impl_type_test.cc",
      "new_id": "80c64c4e77706453ac29350be95fdad71009ca4d",
      "new_mode": 33188,
      "new_path": "src/writer/msl/generator_impl_type_test.cc"
    },
    {
      "type": "modify",
      "old_id": "570d131f519e57a4c34bab8c3a470424a1095b80",
      "old_mode": 33188,
      "old_path": "src/writer/spirv/builder.cc",
      "new_id": "ee09323077485d95fbcd291c6b6154b89bb37c5c",
      "new_mode": 33188,
      "new_path": "src/writer/spirv/builder.cc"
    },
    {
      "type": "modify",
      "old_id": "dadc9b40be6e26eae5f997ecc99b7e10ca1da801",
      "old_mode": 33188,
      "old_path": "src/writer/spirv/builder_global_variable_test.cc",
      "new_id": "4c28e9ffdf9399dde6b14b2829689c32208b11a4",
      "new_mode": 33188,
      "new_path": "src/writer/spirv/builder_global_variable_test.cc"
    },
    {
      "type": "modify",
      "old_id": "911d2430e7553254defad3110566ae475ccc0123",
      "old_mode": 33188,
      "old_path": "src/writer/spirv/builder_intrinsic_test.cc",
      "new_id": "9e353c176509d6ec4c0628060cdc8c7861a0c9b3",
      "new_mode": 33188,
      "new_path": "src/writer/spirv/builder_intrinsic_test.cc"
    },
    {
      "type": "modify",
      "old_id": "bf158d9b4e7bd44a250e06d99f91989afda2e329",
      "old_mode": 33188,
      "old_path": "src/writer/spirv/builder_type_test.cc",
      "new_id": "477007b8970910bb55c45a966ca1b6db87d0f636",
      "new_mode": 33188,
      "new_path": "src/writer/spirv/builder_type_test.cc"
    },
    {
      "type": "modify",
      "old_id": "491cad16552b89d5f85b43f6c48ddd95073fd2a8",
      "old_mode": 33188,
      "old_path": "src/writer/wgsl/generator_impl_global_decl_test.cc",
      "new_id": "a77acee31fecda29a423cf90af50bf8fbc855af8",
      "new_mode": 33188,
      "new_path": "src/writer/wgsl/generator_impl_global_decl_test.cc"
    }
  ]
}
