)]}'
{
  "commit": "1ca21856af7bffea38bd16dc62d9d31f4b6b5b86",
  "tree": "351e735f0c57c024d4f000b45b16568225d03e73",
  "parents": [
    "a721062d8b2d42bf1543f625fdf307ba37dab640"
  ],
  "author": {
    "name": "Russ Cox",
    "email": "rsc@golang.org",
    "time": "Wed Jul 05 12:07:20 2023 -0400"
  },
  "committer": {
    "name": "Russ Cox",
    "email": "rsc@golang.org",
    "time": "Wed Jul 12 16:44:37 2023 +0000"
  },
  "message": "go/analysis: pass package\u0027s Go version to type checker\n\nType checking of a package depends on the Go language version in\neffect for that package. We have been not setting it and assuming\n\"latest\" is good enough, but that is likely to become untrue in the\nfuture, and it violates Go 1.21\u0027s emphasis on forward compatibility,\nnamely tools recognizing when they shouldn\u0027t be processing newer code.\n\nPass the Go version along from go/analysis to go/types, to allow\ngo/types to apply the version when type-checking.\n\nIn the one analysis pass that does its own type-checking (cgocall),\npass the Go version along explicitly there too.\n\nFixes golang/go#61174.\nFixes golang/go#61176.\n\nChange-Id: I5a357f7c357c41b77d0eb83c905490cc1f866956\nReviewed-on: https://go-review.googlesource.com/c/tools/+/507880\ngopls-CI: kokoro \u003cnoreply+kokoro@google.com\u003e\nReviewed-by: Alan Donovan \u003cadonovan@google.com\u003e\nReviewed-by: Robert Findley \u003crfindley@google.com\u003e\nRun-TryBot: Russ Cox \u003crsc@golang.org\u003e\nTryBot-Result: Gopher Robot \u003cgobot@golang.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5d9505b2a335486549783a7d9e25a4069d7b4b95",
      "old_mode": 33188,
      "old_path": "go/analysis/analysistest/analysistest.go",
      "new_id": "6a27edb1064638e5322e42bd50c52ee8be20a0c7",
      "new_mode": 33188,
      "new_path": "go/analysis/analysistest/analysistest.go"
    },
    {
      "type": "modify",
      "old_id": "35e3c5dbb380df9976d36cf3d93c39cafe858246",
      "old_mode": 33188,
      "old_path": "go/analysis/internal/checker/checker.go",
      "new_id": "2da46925de4a3c334a85765b847e65aad261b9c7",
      "new_mode": 33188,
      "new_path": "go/analysis/internal/checker/checker.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "45eef8b89d29bc772e0024ce2d643d5eaa806cc7",
      "new_mode": 33188,
      "new_path": "go/analysis/internal/versiontest/version_test.go"
    },
    {
      "type": "modify",
      "old_id": "afff0d82d84306b551893e59cad3ebfb3d8d85fa",
      "old_mode": 33188,
      "old_path": "go/analysis/passes/cgocall/cgocall.go",
      "new_id": "c18b84b714c63c91e16dbca18770793fd7f22c63",
      "new_mode": 33188,
      "new_path": "go/analysis/passes/cgocall/cgocall.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "06b54946d7b72c678e9a8fe0617fa774bf066915",
      "new_mode": 33188,
      "new_path": "go/analysis/passes/cgocall/cgocall_go120.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2a3e1fad228d8f5cb0f48c905bae24e1ee12a0fe",
      "new_mode": 33188,
      "new_path": "go/analysis/passes/cgocall/cgocall_go121.go"
    },
    {
      "type": "modify",
      "old_id": "ff22d23ce5cd6ff679181df1a6e3a6feb926698b",
      "old_mode": 33188,
      "old_path": "go/analysis/unitchecker/unitchecker.go",
      "new_id": "10c76bc627e5f3ee34c6b26b98203d6aa28503fe",
      "new_mode": 33188,
      "new_path": "go/analysis/unitchecker/unitchecker.go"
    }
  ]
}
